00001 00027 #ifndef INC_SPATMOD_IMAGEFILTERCROP_H 00028 #define INC_SPATMOD_IMAGEFILTERCROP_H 00029 00030 #ifndef INC_SPATMOD_IMAGEFILTER_H 00031 #include <spatmod/imagefilter.h> 00032 #endif 00033 00034 #ifndef INC_MI32_RECT_H 00035 #include <mi32/rect.h> 00036 #endif 00037 00038 namespace SPATMOD { 00039 namespace IMAGE { 00040 00041 //===================================================================================================================== 00042 00044 class FILTER_CROP : public FILTER { 00045 public: 00046 00049 FILTER_CROP ( 00050 STAGE *pInputImage, 00051 bool TakeOwnership, 00052 const LRECT2D& InputRect 00053 ); 00054 00056 virtual ~FILTER_CROP (); 00057 00062 ERRVALUE SetOrigin ( 00063 INT32 StartColumn, 00064 INT32 StartRow 00065 ); 00066 00067 private: 00068 #ifndef GENERATING_DOXYGEN_OUTPUT 00069 LRECT2D m_InputRect; 00070 00071 ERRVALUE BeginIteratorPrevStage (const SECTION_ITERATOR& Iterator, SECTION_ITERATOR& itPrevStage) const; 00072 void UpdateRect (); 00073 00074 // STAGE/FILTER overrides. 00075 virtual const char* v_GetTypeName () const; 00076 virtual ERRVALUE v_Initialize (); 00077 virtual ERRVALUE v_PullBegin (const SECTION_ITERATOR& iterator); 00078 virtual ERRVALUE v_PullSubSection (const SECTION& SubSection, BUFFER& buffer); 00079 virtual float v_QueryIterator (const SECTION_ITERATOR& iterator) const; 00080 00081 // Unimplemented 00082 FILTER_CROP (const FILTER_CROP&); 00083 FILTER_CROP& operator= (const FILTER_CROP&); 00084 #endif // GENERATING_DOXYGEN_OUTPUT 00085 00086 }; 00087 00088 //===================================================================================================================== 00089 00090 } // End namespace IMAGE 00091 } // End namespace SPATMOD 00092 00093 #endif // INC_SPATMOD_IMAGEFILTERCROP_H 00094
1.6.1