CImageRegionProcessorCompBase.h
Go to the documentation of this file.
1 #ifndef iipr_CImageRegionProcessorCompBase_included
2 #define iipr_CImageRegionProcessorCompBase_included
3 
4 
5 // ACF includes
8 
9 
10 namespace i2d
11 {
12  class IObject2d;
13 }
14 
15 
16 namespace iimg
17 {
18  class IBitmap;
19 }
20 
21 
22 namespace iipr
23 {
24 
25 
30 {
31 public:
33 
34  I_BEGIN_BASE_COMPONENT(CImageRegionProcessorCompBase);
35  I_ASSIGN(m_aoiParamIdAttrPtr, "AoiParamId", "ID of the AOI region in the parameter set", true, "AoiParams");
36  I_ASSIGN(m_allowEmptyRegionAttrPtr, "AllowEmptyAoi", "If enabled the full image area is used of no AOI was set", true, false);
37  I_END_COMPONENT;
38 
39  // reimplemented (iproc::IProcessor)
40  virtual int DoProcessing(
41  const iprm::IParamsSet* paramsPtr,
42  const istd::IPolymorphic* inputPtr,
43  istd::IChangeable* outputPtr,
44  ibase::IProgressManager* progressManagerPtr = NULL);
45 
46 protected:
47  // abstract methods
48 
52  virtual bool ProcessImageRegion(
53  const iimg::IBitmap& inputBitmap,
54  const iprm::IParamsSet* paramsPtr,
55  const i2d::IObject2d* aoiPtr,
56  istd::IChangeable* outputPtr) const = 0;
57 
58 private:
59  I_ATTR(QByteArray, m_aoiParamIdAttrPtr);
60  I_ATTR(bool, m_allowEmptyRegionAttrPtr);
61 };
62 
63 
64 } // namespace iipr
65 
66 
67 #endif // !iipr_CImageRegionProcessorCompBase_included
68 
69 
Simple definition macro for a synchronous processor.
virtual int DoProcessing(const iprm::IParamsSet *paramsPtr, const istd::IPolymorphic *inputPtr, istd::IChangeable *outputPtr, ibase::IProgressManager *progressManagerPtr=NULL)
virtual bool ProcessImageRegion(const iimg::IBitmap &inputBitmap, const iprm::IParamsSet *paramsPtr, const i2d::IObject2d *aoiPtr, istd::IChangeable *outputPtr) const =0
Process the defined image region.
Basic implementation for a image region processor.

© 2007-2011 Witold Gantzke and Kirill Lepskiy