29 #if defined(PointHashFunctions_RECURSES)
30 #error Recursive header files inclusion detected in PointHashFunctions.h
33 #define PointHashFunctions_RECURSES
35 #if !defined PointHashFunctions_h
37 #define PointHashFunctions_h
42 #include "DGtal/base/Common.h"
43 #include "DGtal/kernel/PointVector.h"
44 #include "DGtal/kernel/NumberTraits.h"
45 #include "DGtal/base/BasicTypes.h"
47 #include <boost/functional/hash.hpp>
59 typename EuclideanRing,
61 struct hash<
DGtal::PointVector<dim,EuclideanRing,Container> >
65 return boost::hash_range(p.begin(), p.end());
74 struct hash<
DGtal::BigInteger >
86 struct hash<
DGtal::BigInteger > : std::hash<DGtal::BigInteger>
95 #undef PointHashFunctions_RECURSES
Aim: Implements basic operations that will be used in Point and Vector classes.
DGtal is the top-level namespace which contains all DGtal functions and types.
DGtal::uint32_t Dimension
mpz_class BigInteger
Multi-precision integer with GMP implementation.
static DGtal::int64_t castToInt64_t(const std::decay< T >::type &aT)
Cast method to DGtal::int64_t (for I/O or board export uses only).
size_t operator()(const DGtal::BigInteger &p) const
size_t operator()(const DGtal::PointVector< dim, EuclideanRing, Container > &p) const
unsigned int dim(const Vector &z)