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: freSVLimitedAxisVnlSOMetricAdaptor.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 __freSVLimitedAxisVnlSOMetricAdaptor_h 00023 #define __freSVLimitedAxisVnlSOMetricAdaptor_h 00024 00025 #include "freSingleValuedVnlSOMetricAdaptor.h" 00026 00027 00028 namespace FREE 00029 { 00030 00044 class SVLimitedAxisVnlSOMetricAdaptor : 00045 public SingleValuedVnlSOMetricAdaptor 00046 { 00047 public: 00048 virtual const char* GetNameOfClass() const { return "SVLimitedAxisVnlSOMetricAdaptor";}; 00049 00050 typedef itk::Array< long > ParameterAxisType; 00051 typedef itk::Array< double > OriginPositionType; 00052 00054 SVLimitedAxisVnlSOMetricAdaptor(unsigned int spaceDimension, unsigned int axisCount); 00055 00056 void SetOriginPosition(const OriginPositionType& origin); 00057 void SetParameterAxis(const ParameterAxisType& axis); 00058 00059 protected: 00060 00061 virtual ParametersType ConvertInternalToParameter(const InternalParametersType & inparameters); 00062 virtual InternalParametersType ConvertParameterToInternal(const ParametersType & parameters); 00063 00064 private: 00065 ParameterAxisType m_ParameterAxis; 00066 OriginPositionType m_OriginPosition; 00067 unsigned int m_NumberOfAxis; 00068 00069 }; // end of Class CostFunction 00070 00071 00072 } // end namespace itk 00073 00074 00075 #endif 00076 00077 00078
1.5.3 written by Dimitri van Heesch,
© 1997-2000