00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef __freImageToImageFilterControllerBase_h
00023 #define __freImageToImageFilterControllerBase_h
00024
00025 #include "freProcessorControllerBase.h"
00026
00027 namespace FREE
00028 {
00029
00039 freControllerIDMacro(ImageToImageFilterControllerBase, "ImageToImageFilterBase");
00040 template <class TControlledFilter>
00041 class ImageToImageFilterControllerBase : public ProcessorControllerBase<TControlledFilter>
00042 {
00043 public:
00044 typedef TControlledFilter ComponentType;
00045 typedef ProcessorControllerBase<ComponentType> Superclass;
00046 typedef ImageToImageFilterControllerBase<ComponentType> Self;
00047
00048 typedef typename ComponentType::Pointer ComponentPointer;
00049 typedef typename Superclass::GenericComponentType GenericComponentType;
00050 typedef typename Superclass::GenericComponentPointer GenericComponentPointer;
00051 typedef typename Superclass::GenericMediaPointer GenericMediaPointer;
00052 typedef typename ComponentType::OutputImageType OutputImageType;
00053 typedef typename ComponentType::OutputImagePointer OutputImagePointer;
00054
00055 DeclareParameterMacro(PersistentResult);
00056
00057 itkTypeMacro(ImageToImageFilterControllerBase, ProcessorControllerBase);
00058
00059 virtual ValidityTag::Pointer GetMediaValidityTagRequirement(const MediaID& mediaID, SessionComponentCache* pComponentCache) const;
00060
00061 protected:
00062 ImageToImageFilterControllerBase();
00063
00064 virtual void GenerateProfile(CtrlProfile::ControllerProfile& profile,
00065 const SessionComponentCache* pComponentCache,
00066 bool bRegardOldSetup) const;
00067
00068 virtual void ActualizeMainComponent(ComponentType* pMainComponent,
00069 SessionComponentCache* pComponentCache,
00070 SessionInfo* pSessionInfo,
00071 const unsigned int& iActLevel) const;
00072
00073 virtual GenericMediaPointer GetMediaCasted(const MediaID& mediaID,
00074 ComponentType* pComponent,
00075 SessionComponentCache* pComponentCache,
00076 SessionInfo* pSessionInfo) const;
00077
00083 virtual GenericMediaPointer ComputeMedia(const MediaID& mediaID,
00084 ComponentType* pComponent,
00085 SessionComponentCache* pComponentCache,
00086 SessionInfo* pSessionInfo) const;
00087
00088 virtual void SetMediaCasted(const MediaID& mediaID, GenericMediaType* pMedia, ComponentType* pComponent, SessionComponentCache* pComponentCache,
00089 SessionInfo* pSessionInfo) const;
00090 };
00091
00092 }
00093
00094 #ifndef ITK_MANUAL_INSTANTIATION
00095 #include "freImageToImageFilterControllerBase.txx"
00096 #endif
00097
00098 #endif