Aim: Defines the concept describing a digital space, ie a cartesian product of integer lines.
More...
template<typename T>
struct DGtal::concepts::CSpace< T >
Aim: Defines the concept describing a digital space, ie a cartesian product of integer lines.
Description of concept 'CSpace'
Refinement of
Provided types
- Space: the type itself.
- Integer: the type for the components or coordinates of the space. Must be a model of CInteger.
- Point: the type for a point in this space.
- Vector: the type for a vector in this space.
- Dimension: the type for the dimension in this space. Must be a model of CUnsignedNumber and CIntegralNumber
- Size: the type for measuring distances or counting elements in this space. Must be a model of CUnsignedNumber and CIntegralNumber
- RealPoint: the type for a point in the real vector space of same dimension.
- RealVector: the type for a Euclidean vector in the real vector space of same dimension.
Notation
- X : A type that is a model of CSpace
Definitions
Valid expressions and semantics
Name | Expression | Type requirements | Return type | Precondition | Semantics | Post condition | Complexity |
dimension | X::dimension | | | | X should have a static member dimension of type Dimension . | | |
Invariants
Models
SpaceND is the usual model of CSpace.
Notes
- Template Parameters
-
T | the type that is checked. T should be a model of CSpace. |
Definition at line 105 of file CSpace.h.