IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
BaseTypedGeometryMeasure3d.h
1 // BaseTypedGeometryMeasure3d.h:
3 // -----------------------------
4 //
14 
15 #ifndef __IPSDKGEOMETRY_BASETYPEDGEOMETRYMEASURE3D_H__
16 #define __IPSDKGEOMETRY_BASETYPEDGEOMETRYMEASURE3D_H__
17 
18 #include <IPSDKGeometry/Measure/3d/BaseGeometryMeasure3d.h>
19 
20 namespace ipsdk {
21 namespace geom {
22 
25 
26 template <typename T>
28 {
29  // declare serial class
31 
32 // predefined public type
33 public:
35  typedef T DataType;
36 
37 public:
41  virtual ~BaseTypedGeometryMeasure3d() = 0;
43 
44 // methods
45 public:
48  bool measure(const GeometryEntity3dPtr& pEntity,
49  T& result) const;
50 
53  virtual bool measure(const BaseGeometryEntity3d& entity,
54  T& result) const = 0;
55 
56 // attributes
57 protected:
58 
59 };
60 
63 
64 } // end of namespace geom
65 } // end of namespace ipsdk
66 
67 #endif // __IPSDKGEOMETRY_BASETYPEDGEOMETRYMEASURE3D_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
Base class for geometry measures 3d.
Definition: BaseGeometryMeasure3d.h:31
#define IPSDK_DECLARE_ABSTRACT_SERIAL_WITH_COPY(libraryName, className)
macro enabling serialization on abstract class
Definition: SerializationHdrMacro.h:91
#define IPSDKGEOMETRY_API
Import/Export macro for library IPSDKGeometry.
Definition: IPSDKGeometryExports.h:25
Base class for typed geometry measures 3d.
Definition: BaseTypedGeometryMeasure3d.h:27
T DataType
Output data type associated to measure.
Definition: BaseTypedGeometryMeasure3d.h:35
boost::shared_ptr< BaseGeometryEntity3d > GeometryEntity3dPtr
shared pointer to BaseGeometryEntity3d
Definition: GeometryEntity3dTypes.h:120
Base class for 3d geometry entities.
Definition: BaseGeometryEntity3d.h:34