IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
PlanIndex.h
1 // PlanIndex.h:
3 // ------------
4 //
14 
15 #ifndef __IPSDKBASEDATA_PLANINDEX_H__
16 #define __IPSDKBASEDATA_PLANINDEX_H__
17 
19 #include <IPSDKSerialization/Engine/BaseSerializationObject.h>
20 
21 namespace ipsdk {
22 
25 
27 {
28  // declare serial class
30 
31 public:
34  PlanIndex();
35  PlanIndex(const ipUInt64 zPlanIdx,
36  const ipUInt64 cPlanIdx,
37  const ipUInt64 tPlanIdx);
38  ~PlanIndex();
40 
41 // methods
42 public:
45  void init(const ipUInt64 zPlanIdx,
46  const ipUInt64 cPlanIdx,
47  const ipUInt64 tPlanIdx);
48  void setZPlanIdx(const ipUInt64 zPlanIdx);
49  void setCPlanIdx(const ipUInt64 cPlanIdx);
50  void setTPlanIdx(const ipUInt64 tPlanIdx);
51  ipUInt64 getZPlanIdx() const;
52  ipUInt64 getCPlanIdx() const;
53  ipUInt64 getTPlanIdx() const;
55 
58  bool operator== (const PlanIndex& planIndex) const;
59  bool operator!= (const PlanIndex& planIndex) const;
60  bool operator< (const PlanIndex& planIndex) const;
61  bool operator<= (const PlanIndex& planIndex) const;
62  bool operator> (const PlanIndex& planIndex) const;
63  bool operator>= (const PlanIndex& planIndex) const;
65 
66 // attributes
67 protected:
74 };
75 
78 
79 inline void
80 PlanIndex::init(const ipUInt64 zPlanIdx,
81  const ipUInt64 cPlanIdx,
82  const ipUInt64 tPlanIdx)
83 {
84  _zPlanIdx = zPlanIdx;
85  _cPlanIdx = cPlanIdx;
86  _tPlanIdx = tPlanIdx;
87 }
88 
89 inline void
91 {
92  _zPlanIdx = zPlanIdx;
93 }
94 
95 inline void
97 {
98  _cPlanIdx = cPlanIdx;
99 }
100 
101 inline void
103 {
104  _tPlanIdx = tPlanIdx;
105 }
106 
107 inline ipUInt64
109 {
110  return _zPlanIdx;
111 }
112 
113 inline ipUInt64
115 {
116  return _cPlanIdx;
117 }
118 
119 inline ipUInt64
121 {
122  return _tPlanIdx;
123 }
124 
127 
128 } // end of namespace ipsdk
129 
130 #endif // __IPSDKBASEDATA_PLANINDEX_H__
#define IPSDK_DECLARE_SERIAL_WITH_COPY(libraryName, className)
macro enabling serialization on class
Definition: SerializationHdrMacro.h:73
boost::enable_if< typename boost::mpl::and_< typename boost::is_same< boost::mpl::int_< AttributeType1::g_attributeType >, boost::mpl::int_< eAttributeType::eAT_Value > >::type, typename boost::is_same< boost::mpl::int_< AttributeType2::g_attributeType >, boost::mpl::int_< eAttributeType::eAT_Value > >::type, typename boost::is_same< typename AttributeType1::ValueType, typename AttributeType2::ValueType >::type >::type, RulePtr >::type operator>=(const boost::shared_ptr< AttributeType1 > &pAttribute1, const boost::shared_ptr< AttributeType2 > &pAttribute2)
Definition: AttributeComparisonRuleOperators.h:195
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
IPSDKBASEDATA_API bool operator==(const OffsetXY &offset1, const OffsetXY &offset2)
Comparison operators for offsets.
IPSDKBASEDATA_API bool operator<(const OffsetXY &offset1, const OffsetXY &offset2)
Comparison operators for offsets.
ipUInt64 getZPlanIdx() const
access to plan indexes associated to object
Definition: PlanIndex.h:108
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
void setTPlanIdx(const ipUInt64 tPlanIdx)
access to plan indexes associated to object
Definition: PlanIndex.h:102
Definition of import/export macro for library.
void setCPlanIdx(const ipUInt64 cPlanIdx)
access to plan indexes associated to object
Definition: PlanIndex.h:96
void setZPlanIdx(const ipUInt64 zPlanIdx)
access to plan indexes associated to object
Definition: PlanIndex.h:90
ipUInt64 _tPlanIdx
plan indexes associated to object
Definition: PlanIndex.h:72
ipUInt64 _cPlanIdx
plan indexes associated to object
Definition: PlanIndex.h:71
boost::enable_if< typename boost::mpl::and_< typename boost::is_same< boost::mpl::int_< AttributeType1::g_attributeType >, boost::mpl::int_< eAttributeType::eAT_Value > >::type, typename boost::is_same< boost::mpl::int_< AttributeType2::g_attributeType >, boost::mpl::int_< eAttributeType::eAT_Value > >::type, typename boost::is_same< typename AttributeType1::ValueType, typename AttributeType2::ValueType >::type >::type, RulePtr >::type operator!=(const boost::shared_ptr< AttributeType1 > &pAttribute1, const boost::shared_ptr< AttributeType2 > &pAttribute2)
Rule allowing to check whether a value attribute is not equal another.
Definition: AttributeComparisonRuleOperators.h:77
ipUInt64 getCPlanIdx() const
access to plan indexes associated to object
Definition: PlanIndex.h:114
Class used to store image plan index.
Definition: PlanIndex.h:26
boost::enable_if< typename boost::mpl::and_< typename boost::is_same< boost::mpl::int_< AttributeType1::g_attributeType >, boost::mpl::int_< eAttributeType::eAT_Value > >::type, typename boost::is_same< boost::mpl::int_< AttributeType2::g_attributeType >, boost::mpl::int_< eAttributeType::eAT_Value > >::type, typename boost::is_same< typename AttributeType1::ValueType, typename AttributeType2::ValueType >::type >::type, RulePtr >::type operator<=(const boost::shared_ptr< AttributeType1 > &pAttribute1, const boost::shared_ptr< AttributeType2 > &pAttribute2)
Definition: AttributeComparisonRuleOperators.h:235
#define IPSDKBASEDATA_API
Import/Export macro for library IPSDKUtil.
Definition: IPSDKBaseDataExports.h:27
boost::enable_if< typename boost::mpl::and_< typename boost::is_same< boost::mpl::int_< AttributeType1::g_attributeType >, boost::mpl::int_< eAttributeType::eAT_Value > >::type, typename boost::is_same< boost::mpl::int_< AttributeType2::g_attributeType >, boost::mpl::int_< eAttributeType::eAT_Value > >::type, typename boost::is_same< typename AttributeType1::ValueType, typename AttributeType2::ValueType >::type >::type, RulePtr >::type operator>(const boost::shared_ptr< AttributeType1 > &pAttribute1, const boost::shared_ptr< AttributeType2 > &pAttribute2)
Rule allowing to check whether a value attribute is greater than another.
Definition: AttributeComparisonRuleOperators.h:116
ipUInt64 _zPlanIdx
plan indexes associated to object
Definition: PlanIndex.h:70
ipUInt64 getTPlanIdx() const
access to plan indexes associated to object
Definition: PlanIndex.h:120
void init(const ipUInt64 zPlanIdx, const ipUInt64 cPlanIdx, const ipUInt64 tPlanIdx)
access to plan indexes associated to object
Definition: PlanIndex.h:80
Base class for serializable class.
Definition: BaseSerializationObject.h:33