14 #ifndef ECVL_DATATYPE_H_    15 #define ECVL_DATATYPE_H_    28 typedef std::array<double, 2> 
Size2d;
    44 #define ECVL_TUPLE(name, ...) name,    62 #define ECVL_TUPLE(name, size, type, ...) template<> struct TypeInfo<ecvl::DataType::name> { using basetype = type; };    66 template<ecvl::DataType DT>
    74     constexpr 
size_t size = 0
    75 #define ECVL_TUPLE(name, ...) + 1    87     constexpr 
size_t size = 0
    88 #define ECVL_TUPLE(name, ...) + 1   103 #define ECVL_TUPLE(name, ...) DataType::name,   118 #define ECVL_TUPLE(name, ...) DataType::name,   127 #endif // ECVL_DATATYPE_H_ std::array< double, 2 > Point2d
 
DataType
DataType is an enum class which defines data types allowed for images.
 
constexpr std::array< DataType, DataTypeSignedSize()> DataTypeSignedArray()
Function to get a std::array with all the signed DataType values at compile time.
 
typename TypeInfo< DT >::basetype TypeInfo_t
 
constexpr std::array< DataType, DataTypeSize()> DataTypeArray()
Function to get a std::array with all the DataType values at compile time.
 
std::array< int, 2 > Point2i
 
std::vector< double > Scalar
 
std::array< double, 2 > Size2d
 
constexpr size_t DataTypeSignedSize()
Function to get the number of existing signed DataType at compile time.
 
uint8_t DataTypeSize(DataType dt)
Provides the size in bytes of a given DataType.
 
double SqDist(const Point2i &a, const Point2i &b)
Calculate the distance squared between two ecvl::Point2i.
 
std::array< int, 2 > Size2i