#include <HxImgFtorInOut.h>
Inheritance diagram for HxImgFtorInOut::
Public Types | |
typedef HxImgFtorInOutKey | KeyType |
The key type of this class. More... | |
Public Methods | |
HxImgFtorInOut () | |
Constructor. More... | |
virtual | ~HxImgFtorInOut () |
Destructor. More... | |
Protected Methods | |
virtual void | doIt (ImgDataPtrType ptr, HxSizes size, HxTagList &tags, HxImgFtorDescription *=0) |
Calls HxFuncInOutInit to do the initialization phase and HxFuncInOutDispatch to dispatch the actual work. More... |
Template parameters:
|
The key type of this class.
Reimplemented from HxImgFtorI1Cast. |
|
Constructor.
00036 : HxImgFtorI1Cast<ImgSigT>( 00037 HxImgFtorInOutKey(HxClassName<ImgSigT>(), HxClassName<InOutT>())) 00038 { 00039 HxImgFtorRuleBase::instance().setIsModifying( 00040 "inout", HxClassName<InOutT>(), 00041 IsModifying(typename InOutT::DirectionCategory())); 00042 } |
|
Destructor.
00046 { 00047 } |
|
Calls HxFuncInOutInit to do the initialization phase and HxFuncInOutDispatch to dispatch the actual work.
Reimplemented from HxImgFtorI1Cast.
00054 { 00055 if (description) { 00056 HxString v(typename InOutT::DirectionCategory().toString()); 00057 v += ", "; 00058 v += typename InOutT::TransVarianceCategory().toString(); 00059 v += ", "; 00060 v += typename InOutT::PhaseCategory().toString(); 00061 description->setVariation(v); 00062 } 00063 00064 HxBoundingBox imgBb(size), regionBb(size); 00065 regionBb = HxGetTag(tags, "boundingBox", imgBb); 00066 regionBb = regionBb.intersect(imgBb); 00067 00068 if (!regionBb.isEmpty()) 00069 { 00070 InOutT pixOp = 00071 HxFuncInOutInit<InOutT>( 00072 regionBb.size(), tags, 00073 typename InOutT::DirectionCategory(), 00074 typename InOutT::TransVarianceCategory(), 00075 typename InOutT::PhaseCategory()); 00076 ptr.incXYZ( 00077 regionBb.begin().x(), regionBb.begin().y(), regionBb.begin().z()); 00078 HxFuncInOutDispatch(ptr, regionBb.size(), pixOp); 00079 } 00080 00081 } |