/* * 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: CTSymmetricDemonsRegistration.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: CTSymmetricDemonsRegistration.h,v 1.3 2006-10-22 12:59:29 urschler Exp $ * */ // File : CTSymmetricDemonsRegistration.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_SYMMETRIC_DEMONS_REGISTRATION_H__ #define __CT_SYMMETRIC_DEMONS_REGISTRATION_H__ #include "CTNonlinearRegistrationBase.h" #include "itkCommand.h" template< typename TPixelDataType > class CTSymmetricDemonsRegistration : public CTNonlinearRegistrationBase { typedef CTSymmetricDemonsRegistration Self; typedef CTNonlinearRegistrationBase BaseType; typedef typename BaseType::InputImageType InputImageType; typedef typename BaseType::PyramidType PyramidType; public: CTSymmetricDemonsRegistration() {}; virtual ~CTSymmetricDemonsRegistration() {}; CTNonlinearRegistration::ReturnType matching( const unsigned int maxNrShrinkLevels, const unsigned int iterationsParam1, const unsigned int iterationsParam2 ); private: // purposely left blank CTSymmetricDemonsRegistration( const Self& ); Self& operator=( const Self& ); class SymmetricDemonsCommandIterationUpdate : public itk::Command { public: typedef SymmetricDemonsCommandIterationUpdate Self; typedef itk::Command Superclass; typedef itk::SmartPointer Pointer; itkNewMacro( SymmetricDemonsCommandIterationUpdate ); protected: SymmetricDemonsCommandIterationUpdate() {}; public: void Execute(itk::Object *caller, const itk::EventObject & event); void Execute(const itk::Object * object, const itk::EventObject & event); }; }; #endif // __CT_SYMMETRIC_DEMONS_REGISTRATION_H__