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