00001 /*========================================================================= 00002 00003 Program: F.R.E.E. - flexible registration evaluation engine 00004 Version: v.1.0.0 00005 Date: $Date: 2006/09/01 12:00:00 $ 00006 Module: $RCSfile: freBinaryFunctorImageFilterControllerBase.h,v $ 00007 Language: C++ 00008 00009 00010 00011 Copyright (c) 2007 Ralf o Floca (Department of Medical Informatics, 00012 Institute for Medical Biometry and Informatics, University of Heidelberg, 00013 Germany). All rights reserved. 00014 See FREECopyright.txt or http://www.mi.med.uni-hd.de/free/copyright.htm 00015 for details. 00016 00017 This software is distributed WITHOUT ANY WARRANTY; without even 00018 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00019 PURPOSE. See the above copyright notices for more information. 00020 00021 =========================================================================*/ 00022 #ifndef __freBinaryFunctorImageFilterControllerBase_h 00023 #define __freBinaryFunctorImageFilterControllerBase_h 00024 00025 #include "freImageToImageFilterControllerBase.h" 00026 00027 namespace FREE 00028 { 00029 00039 freControllerIDMacro(BinaryFunctorImageFilterControllerBase, "BinaryFunctorImageFilterBase"); 00040 template <class TControlledFilter> 00041 class BinaryFunctorImageFilterControllerBase : public ImageToImageFilterControllerBase<TControlledFilter> 00042 { 00043 public: 00044 typedef TControlledFilter ComponentType; 00045 typedef ImageToImageFilterControllerBase<ComponentType> Superclass; 00046 typedef BinaryFunctorImageFilterControllerBase<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(BinaryFunctorImageFilterControllerBase, ImageToImageFilterControllerBase); 00058 00059 virtual ValidityTag::Pointer GetMediaValidityTagRequirement(const MediaID& mediaID, SessionComponentCache* pComponentCache) const; 00060 00061 protected: 00062 BinaryFunctorImageFilterControllerBase(); 00063 00064 virtual void GenerateProfile(CtrlProfile::ControllerProfile& profile, 00065 const SessionComponentCache* pComponentCache, 00066 bool bRegardOldSetup) const; 00067 00068 virtual void SetMediaCasted(const MediaID& mediaID, GenericMediaType* pMedia, ComponentType* pComponent, SessionComponentCache* pComponentCache, 00069 SessionInfo* pSessionInfo) const; 00070 }; 00071 00072 } //end of namespace free 00073 00074 #ifndef ITK_MANUAL_INSTANTIATION 00075 #include "freBinaryFunctorImageFilterControllerBase.txx" 00076 #endif 00077 00078 #endif
1.5.3 written by Dimitri van Heesch,
© 1997-2000