IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
BaseStaticSplit.h
1 // BaseStaticSplit.h:
3 // ------------------
4 //
15 
16 #ifndef __IPSDKBASEPROCESSING_BASESTATICSPLIT_H__
17 #define __IPSDKBASEPROCESSING_BASESTATICSPLIT_H__
18 
19 // suppression warnings
20 // warning C4251: 'ipsdk::processor::BaseStaticSplit::_pDataSplitInfoColl' : class 'boost::shared_ptr<T>' needs to have dll-interface to be used by clients of class 'ipsdk::processor::BaseStaticSplit'
21 #pragma warning (push)
22 #pragma warning (disable : 4251)
23 
24 #include <IPSDKBaseProcessing/DataSplit/BaseDataSplit.h>
26 #include <IPSDKUtil/Tools/ProcessingResult.h>
27 
28 namespace ipsdk {
29 namespace processor {
30 
33 
35 {
36 // predefined public types
37 public:
39  static const eSplitBaseType::domain g_splitBaseType = eSplitBaseType::eSBT_Static;
40 
41 public:
45  virtual ~BaseStaticSplit() = 0;
47 
48 // methods
49 public:
51  eSplitBaseType getSplitBaseType() const;
52 
54  virtual eSplitStaticType getSplitStaticType() const = 0;
55 
63  BoolResult initAttribute(BaseProcessor& processor,
64  const ipUInt32 elementIdx,
65  const core::BaseRequestOrigin& requestOrigin);
66 
67 protected:
71  virtual BoolResult processAttribute(BaseProcessor& processor,
72  const ipUInt32 elementIdx,
73  const core::BaseRequestOrigin& requestOrigin) = 0;
74 
75 // attributes
76 protected:
77 
78 };
79 
82 
83 inline eSplitBaseType
85 {
86  return g_splitBaseType;
87 }
88 
91 
92 } // end of namespace processor
93 } // end of namespace ipsdk
94 
95 #pragma warning (pop)
96 
97 #endif // __IPSDKBASEPROCESSING_BASESTATICSPLIT_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
#define IPSDKBASEPROCESSING_API
Import/Export macro for library IPSDKBaseProcessing.
Definition: IPSDKBaseProcessingExports.h:27
eSplitBaseType getSplitBaseType() const
retrieve split operation base type
Definition: BaseStaticSplit.h:84
Base class for processor class.
Definition: BaseProcessor.h:43
eSplitStaticType
Enumerate describing static split operation type.
Definition: StaticSplitTypes.h:32
eSplitBaseType
Enumerate describing split operation base type.
Definition: DataSplitTypes.h:33
Base class for data static split objets used for data dispatch.
Definition: BaseStaticSplit.h:34
Static split operation type with predefined data.
Definition: DataSplitTypes.h:35
Predefined types for base static split operations.
static const eSplitBaseType::domain g_splitBaseType
data split type associated to object
Definition: BaseStaticSplit.h:39
Base class for data split objets used for data dispatch.
Definition: BaseDataSplit.h:36
Base class for request origin description.
Definition: BaseRequestOrigin.h:28
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53