IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
LineYStripRgbColor2dParser.h
1 // LineYStripRgbColor2dParser.h:
3 // -----------------------------
4 //
14 
15 #ifndef __IPSDKIMAGEPROCESSING_LINEYSTRIPRGBCOLOR2DPARSER_H__
16 #define __IPSDKIMAGEPROCESSING_LINEYSTRIPRGBCOLOR2DPARSER_H__
17 
18 // suppression warnings
19 // warning C4251: 'ipsdk::imaproc::LineYStripRgbColor2dParser<T,BaseStripAttributeClassType>::_lineYStrip2dParserColl' : class 'std::vector<boost::shared_ptr<ipsdk::imaproc::LineYStrip2dParser<T,BaseLineYStripColor2dParser<BaseStripAttributeClassType>::YStrip2dAttributeType>>>' needs to have dll-interface to be used by clients of class 'ipsdk::imaproc::LineYStripRgbColor2dParser<T,BaseStripAttributeClassType>'
20 #pragma warning (push)
21 #pragma warning (disable : 4251)
22 
23 #include <IPSDKImageProcessing/Algorithm/Parser/Strip/LineYStripColor2d/BaseLineYStripRgbColor2dParser.h>
24 #include <vector>
25 
26 namespace ipsdk {
27 namespace imaproc {
28 
29 template <typename T, typename BaseStripAttributeClassType>
30 class LineYStrip2dParser;
31 
34 
35 template <typename T, typename BaseStripAttributeClassType>
36 class IPSDKIMAGEPROCESSING_API LineYStripRgbColor2dParser : public BaseLineYStripRgbColor2dParser<BaseStripAttributeClassType>
37 {
38 // predefined public types
39 public:
42 
45 
47  typedef typename boost::shared_ptr<LineYStrip2dParserType> LineYStrip2dParserPtr;
48 
49 public:
55 
56 // methods
57 public:
62  ipUInt64 getBufferSize() const;
63 
64 private:
71  const void* accessBuffer(const ipUInt64 cPlanIdx) const;
72  void* accessBuffer(const ipUInt64 cPlanIdx);
74 
76  void initDataDerived(const ipUInt64 nbInitData,
77  const ipUInt64 nbMainData,
78  const ipUInt64 nbFinalData,
79  const ipUInt64 nbRealFinalData,
80  const ipReal64 unAlignedValue);
81 
84  void prepareDataDerived(const ipUInt64 elementIdx);
85 
87  void updateToInitDataDerived();
88 
90  void updateToMainDataDerived();
91 
93  void updateToFinalDataDerived();
94 
96  void syncOutFinalDataDerived();
97 
99  void clearDerived();
100 
101 // attributes
102 protected:
104  typedef std::vector<LineYStrip2dParserPtr> LineYStrip2dParserColl;
105 
108 };
109 
112 
113 } // end of namespace imaproc
114 } // end of namespace ipsdk
115 
116 #pragma warning (pop)
117 
118 #endif // __IPSDKIMAGEPROCESSING_LINEYSTRIPRGBCOLOR2DPARSER_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
boost::mpl::if_< typename boost::mpl::equal_to< boost::mpl::int_< g_attributeIO >, boost::mpl::int_< eIOStatus::eIOS_Input > >::type, BaseInputYStrip2dAttribute, typename boost::mpl::if_< typename boost::mpl::equal_to< boost::mpl::int_< g_attributeIO >, boost::mpl::int_< eIOStatus::eIOS_Output > >::type, BaseOutputYStrip2dAttribute, BaseInOutYStrip2dAttribute >::type >::type YStrip2dAttributeType
associated y strip 2d attribute
Definition: BaseLineYStripColor2dParser.h:67
uint64_t ipUInt64
Base types definition.
Definition: BaseTypes.h:55
LineYStrip2dParserColl _lineYStrip2dParserColl
collection of line y strip 2d parser associated to object
Definition: LineYStripRgbColor2dParser.h:107
double ipReal64
Base types definition.
Definition: BaseTypes.h:57
boost::shared_ptr< LineYStrip2dParserType > LineYStrip2dParserPtr
shared pointer to line y strip 2d data parser
Definition: LineYStripRgbColor2dParser.h:47
BaseLineYStripColor2dParser< BaseStripAttributeClassType >::YStrip2dAttributeType YStrip2dAttributeType
associated y strip 2d attribute
Definition: LineYStripRgbColor2dParser.h:41
LineYStrip2dParser< T, YStrip2dAttributeType > LineYStrip2dParserType
line y strip 2d data parser type
Definition: LineYStripRgbColor2dParser.h:44
#define IPSDKIMAGEPROCESSING_API
Import/Export macro for library IPSDKImageProcessing.
Definition: IPSDKImageProcessingExports.h:25
Concrete class for y strip 2d parsed line by line.
Definition: LineYStrip2dParser.h:34
Concrete class for line rgb color y strip 2d parsing.
Definition: BaseLineYStrip2dParser.h:36
std::vector< LineYStrip2dParserPtr > LineYStrip2dParserColl
collection of line y strip 2d parser
Definition: LineYStripRgbColor2dParser.h:104