freNormalizedCorrelationMetricController.h

Go to the documentation of this file.
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: freNormalizedCorrelationMetricController.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 __freNormalizedCorrelationMetricController_h
00023 #define __freNormalizedCorrelationMetricController_h
00024 
00025 #include "freImageToImageMetricControllerBase.h"
00026 
00027 #include "itkNormalizedCorrelationImageToImageMetric.h"
00028 
00029 namespace FREE
00030 {
00031 
00039   freControllerIDMacro(NormalizedCorrelationMetricControllerBase, "NormalizedCorrelationMetricControllerBase");
00040 template <class TControlledMetric>
00041 class NormalizedCorrelationMetricControllerBase : public ImageToImageMetricControllerBase< TControlledMetric >
00042 {
00043 public:  
00044   typedef TControlledMetric ComponentType;
00045   typedef ImageToImageMetricControllerBase<TControlledMetric> Superclass;
00046 
00047   itkTypeMacro(NormalizedCorrelationMetricControllerBase, ImageToImageMetricControllerBase);
00048 
00049 protected:
00050   NormalizedCorrelationMetricControllerBase()
00051   {
00052     this->UpdateControllerID(ControllerID::NormalizedCorrelationMetricControllerBase);
00053     this->m_Description = "Base class for metric controller; not for practical use.";
00054   };
00055 
00056 };
00057 
00067   freControllerIDMacro(NormalizedCorrelation2DMetricController, "Normal Correlation 2D Metric");
00068 class NormalizedCorrelation2DMetricController : public NormalizedCorrelationMetricControllerBase< itk::NormalizedCorrelationImageToImageMetric<InternalImage2DType,InternalImage2DType> >
00069 {
00070 public:  
00071   typedef itk::NormalizedCorrelationImageToImageMetric<InternalImage2DType,InternalImage2DType> ComponentType;
00072   typedef NormalizedCorrelationMetricControllerBase<ComponentType> Superclass;
00073 
00074   itkTypeMacro(NormalizedCorrelation2DMetricController, NormalizedCorrelationMetricControllerBase);
00075 
00076   NormalizedCorrelation2DMetricController();
00077 
00078 };
00079 
00089   freControllerIDMacro(NormalizedCorrelation3DMetricController, "Normal Correlation 3D Metric");
00090 class NormalizedCorrelation3DMetricController : public NormalizedCorrelationMetricControllerBase< itk::NormalizedCorrelationImageToImageMetric<InternalImage3DType,InternalImage3DType> >
00091 {
00092 public:  
00093   typedef itk::NormalizedCorrelationImageToImageMetric<InternalImage3DType,InternalImage3DType> ComponentType;
00094   typedef NormalizedCorrelationMetricControllerBase<ComponentType> Superclass;
00095 
00096   itkTypeMacro(NormalizedCorrelation3DMetricController, NormalizedCorrelationMetricControllerBase);
00097 
00098   NormalizedCorrelation3DMetricController();
00099 
00100 };
00101 
00102 } //end of namespace free
00103 
00104 #endif

Generated at Sat Oct 13 16:45:08 2007 for f.r.e.e. - Flexible Registration and Evaluation Engine by doxygen 1.5.3 written by Dimitri van Heesch, © 1997-2000