00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef __freAbsoluteValueDifferenceImageFilterController_h
00023 #define __freAbsoluteValueDifferenceImageFilterController_h
00024
00025 #include "freBinaryFunctorImageFilterControllerBase.h"
00026
00027 #include "itkAbsoluteValueDifferenceImageFilter.h"
00028
00029 namespace FREE
00030 {
00031
00041 freControllerIDMacro(AbsoluteValueDifferenceImageFilterControllerBase, "AbsoluteValueDifferenceImageFilterBase");
00042 template <class TInputImage>
00043 class AbsoluteValueDifferenceImageFilterControllerBase : public BinaryFunctorImageFilterControllerBase< itk::AbsoluteValueDifferenceImageFilter<TInputImage, TInputImage, TInputImage> >
00044 {
00045 public:
00046 typedef itk::AbsoluteValueDifferenceImageFilter<TInputImage, TInputImage, TInputImage> ComponentType;
00047 typedef BinaryFunctorImageFilterControllerBase<ComponentType> Superclass;
00048 typedef AbsoluteValueDifferenceImageFilterControllerBase<TInputImage> Self;
00049
00050 typedef typename ComponentType::Pointer ComponentPointer;
00051 typedef typename Superclass::GenericComponentType GenericComponentType;
00052 typedef typename Superclass::GenericComponentPointer GenericComponentPointer;
00053 typedef typename Superclass::GenericMediaPointer GenericMediaPointer;
00054
00055 itkTypeMacro(AbsoluteValueDifferenceImageFilterControllerBase, BinaryFunctorImageFilterControllerBase);
00056
00057 protected:
00058 AbsoluteValueDifferenceImageFilterControllerBase()
00059 {
00060
00061 this->UpdateControllerID(ControllerID::AbsoluteValueDifferenceImageFilterControllerBase);
00062 this->m_Description = "Basis for itk::AbsoluteValueDifferenceImageFilter";
00063
00064 };
00065 };
00066
00072 freControllerIDMacro(AbsoluteValueDifference2DImageFilterController, "Absolute Value Difference 2D Image Filter");
00073 class AbsoluteValueDifference2DImageFilterController : public AbsoluteValueDifferenceImageFilterControllerBase< ImageTypes<2>::InternalImageType >
00074 {
00075 public:
00076 typedef AbsoluteValueDifferenceImageFilterControllerBase< ImageTypes<2>::InternalImageType > Superclass;
00077 typedef AbsoluteValueDifference2DImageFilterController Self;
00078
00079 typedef Superclass::ComponentType ComponentType;
00080 typedef ComponentType::Pointer ComponentPointer;
00081 typedef Superclass::GenericComponentType GenericComponentType;
00082 typedef Superclass::GenericComponentPointer GenericComponentPointer;
00083 typedef Superclass::GenericMediaPointer GenericMediaPointer;
00084
00085 itkTypeMacro(AbsoluteValueDifference2DImageFilterController, AbsoluteValueDifferenceImageFilterControllerBase);
00086
00087 AbsoluteValueDifference2DImageFilterController();
00088 };
00089
00095 freControllerIDMacro(AbsoluteValueDifference3DImageFilterController, "Absolute Value Difference 3D Image Filter");
00096 class AbsoluteValueDifference3DImageFilterController : public AbsoluteValueDifferenceImageFilterControllerBase< ImageTypes<3>::InternalImageType >
00097 {
00098 public:
00099 typedef AbsoluteValueDifferenceImageFilterControllerBase< ImageTypes<3>::InternalImageType > Superclass;
00100 typedef AbsoluteValueDifference3DImageFilterController Self;
00101
00102 typedef Superclass::ComponentType ComponentType;
00103 typedef ComponentType::Pointer ComponentPointer;
00104 typedef Superclass::GenericComponentType GenericComponentType;
00105 typedef Superclass::GenericComponentPointer GenericComponentPointer;
00106 typedef Superclass::GenericMediaPointer GenericMediaPointer;
00107
00108 itkTypeMacro(AbsoluteValueDifference3DImageFilterController, AbsoluteValueDifferenceImageFilterControllerBase);
00109
00110 AbsoluteValueDifference3DImageFilterController();
00111 };
00112
00113 }
00114
00115 #endif