/* * Copyright (c) ICG. All rights reserved. * * Institute for Computer Graphics and Vision * Graz, University of Technology / Austria * * * This software is distributed WITHOUT ANY WARRANTY; without even * the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR * PURPOSE. See the above copyright notices for more information. * * * Project : projects * Module : MIPViewer - plugins * Class : $RCSfile: CTCurvatureRegistration.h,v $ * Language : C++ * Description : * * Author : Martin Urschler * EMail : urschler@icg.tu-graz.ac.at * Date : $Date: 2006-10-22 12:59:29 $ * Version : $Revision: 1.3 $ * Full Id : $Id: CTCurvatureRegistration.h,v 1.3 2006-10-22 12:59:29 urschler Exp $ * */ // File : CTCurvatureRegistration.h // Content : // Author : Martin Urschler, urschler@icg.tu-graz.ac.at // Inst. f. Maschinelles Sehen u. Darstellen, TU Graz // Creation date : 03/25/2005 #ifndef __CT_CURVATURE_REGISTRATION_H__ #define __CT_CURVATURE_REGISTRATION_H__ #include "CTNonlinearRegistrationBase.h" #include "itkCommand.h" template< typename TPixelDataType > class CTCurvatureRegistration : public CTNonlinearRegistrationBase { typedef CTCurvatureRegistration Self; typedef CTNonlinearRegistrationBase BaseType; typedef typename BaseType::InputImageType InputImageType; typedef typename BaseType::PyramidType PyramidType; public: CTCurvatureRegistration() {}; virtual ~CTCurvatureRegistration() {}; CTNonlinearRegistration::ReturnType matching( const unsigned int maxNrShrinkLevels, const unsigned int iterationsParam1, const unsigned int iterationsParam2 ); private: // purposely left blank CTCurvatureRegistration( const Self& ); Self& operator=( const Self& ); class CurvatureCommandIterationUpdate : public itk::Command { public: typedef CurvatureCommandIterationUpdate Self; typedef itk::Command Superclass; typedef itk::SmartPointer Pointer; itkNewMacro( CurvatureCommandIterationUpdate ); protected: CurvatureCommandIterationUpdate() {}; public: void Execute(itk::Object *caller, const itk::EventObject & event); void Execute(const itk::Object * object, const itk::EventObject & event); }; }; #endif // __CT_CURVATURE_REGISTRATION_H__