18 #ifndef __elxElastixMain_h 19 #define __elxElastixMain_h 25 #include "itkObject.h" 32 #ifdef ELASTIX_USE_OPENCL 55 extern int xoutSetup(
const char * logfilename,
bool setupLogging,
bool setupCout );
152 itkSetMacro( FixedImagePixelType, PixelTypeDescriptionType );
153 itkSetMacro( MovingImagePixelType, PixelTypeDescriptionType );
154 itkSetMacro( FixedImageDimension, ImageDimensionType );
155 itkSetMacro( MovingImageDimension, ImageDimensionType );
156 itkGetMacro( FixedImagePixelType, PixelTypeDescriptionType );
157 itkGetMacro( MovingImagePixelType, PixelTypeDescriptionType );
158 itkGetMacro( FixedImageDimension, ImageDimensionType );
159 itkGetMacro( MovingImageDimension, ImageDimensionType );
165 itkSetObjectMacro( FixedImageContainer, DataObjectContainerType );
166 itkSetObjectMacro( MovingImageContainer, DataObjectContainerType );
167 itkGetObjectMacro( FixedImageContainer, DataObjectContainerType );
168 itkGetObjectMacro( MovingImageContainer, DataObjectContainerType );
174 itkSetObjectMacro( FixedMaskContainer, DataObjectContainerType );
175 itkSetObjectMacro( MovingMaskContainer, DataObjectContainerType );
176 itkGetObjectMacro( FixedMaskContainer, DataObjectContainerType );
177 itkGetObjectMacro( MovingMaskContainer, DataObjectContainerType );
183 itkSetObjectMacro( ResultImageContainer, DataObjectContainerType );
184 itkGetObjectMacro( ResultImageContainer, DataObjectContainerType );
194 itkGetObjectMacro( Elastix, ObjectType );
206 itkGetObjectMacro( FinalTransform, ObjectType );
212 itkSetObjectMacro( InitialTransform, ObjectType );
213 itkGetObjectMacro( InitialTransform, ObjectType );
218 const FlatDirectionCosinesType & arg );
233 itkGetConstMacro( DBIndex, DBIndexType );
242 ParameterMapType & inputMap );
246 std::vector< ParameterMapType > & inputMaps );
253 virtual int Run(
void );
259 virtual int Run( ArgumentMapType & argmap );
261 virtual int Run( ArgumentMapType & argmap, ParameterMapType & inputMap );
278 return s_CDB.GetPointer();
339 static ComponentDatabasePointer
s_CDB;
352 virtual ObjectPointer
CreateComponent(
const ComponentDescriptionType & name );
370 const ComponentDescriptionType & key,
371 const ComponentDescriptionType & defaultComponentName,
373 bool mandatoryComponent =
true );
377 ImageDimensionType & imageDimension )
const;
388 #endif // end #ifndef __elxElastixMain_h DataObjectType::Pointer DataObjectPointer
DataObjectContainerPointer m_FixedImageContainer
DataObjectContainerType::Pointer DataObjectContainerPointer
ObjectPointer(* PtrToCreator)(void)
static ComponentDatabase * GetComponentDatabase(void)
static ComponentLoaderPointer s_ComponentLoader
std::vector< ConfigurationPointer > m_Configurations
static void UnloadComponents(void)
itk::SmartPointer< Self > Pointer
virtual ElastixBaseType * GetElastixBase(void) const
virtual void SetOriginalFixedImageDirectionFlat(const FlatDirectionCosinesType &arg)
virtual void EnterCommandLineArguments(ArgumentMapType &argmap)
ElastixBase::ConfigurationType ConfigurationType
virtual ObjectContainerPointer CreateComponents(const ComponentDescriptionType &key, const ComponentDescriptionType &defaultComponentName, int &errorcode, bool mandatoryComponent=true)
ObjectPointer m_FinalTransform
DataObjectContainerPointer m_ResultImageContainer
static ComponentDatabasePointer s_CDB
ElastixBase::ObjectContainerPointer ObjectContainerPointer
itk::SmartPointer< Self > Pointer
ImageDimensionType m_FixedImageDimension
DataObjectContainerPointer m_MovingMaskContainer
int xoutSetup(const char *logfilename, bool setupLogging, bool setupCout)
ElastixBase::DataObjectContainerType DataObjectContainerType
std::vector< double > FlatDirectionCosinesType
ComponentDatabase ComponentDatabaseType
itk::SmartPointer< Self > Pointer
itk::VectorContainer< unsigned int, ObjectPointer > ObjectContainerType
ParameterFileParser::ParameterMapType ParameterMapType
ConfigurationType::Pointer ConfigurationPointer
ComponentDatabaseType::PtrToCreator PtrToCreator
ElastixBase::FlatDirectionCosinesType FlatDirectionCosinesType
virtual void SetMaximumNumberOfThreads(void) const
ConfigurationType::CommandLineArgumentMapType ArgumentMapType
PixelTypeDescriptionType m_FixedImagePixelType
DataObjectContainerPointer m_FixedMaskContainer
virtual int InitDBIndex(void)
void GetImageInformationFromFile(const std::string &filename, ImageDimensionType &imageDimension) const
ComponentDatabaseType::Pointer ComponentDatabasePointer
unsigned int ImageDimensionType
std::string PixelTypeDescriptionType
ComponentDatabaseType::PixelTypeDescriptionType PixelTypeDescriptionType
itk::SmartPointer< const Self > ConstPointer
ComponentLoaderType::Pointer ComponentLoaderPointer
virtual ParameterMapType GetTransformParametersMap(void) const
PixelTypeDescriptionType m_MovingImagePixelType
virtual void SetProcessPriority(void) const
ObjectType::Pointer ObjectPointer
A class with all functionality to configure elastix.
DataObjectContainerPointer m_MovingImageContainer
FlatDirectionCosinesType m_OriginalFixedImageDirection
Determines which components (metrics, transforms, etc.) are available.
virtual ObjectPointer CreateComponent(const ComponentDescriptionType &name)
itk::DataObject DataObjectType
itk::SmartPointer< Self > Pointer
itk::ParameterMapInterface::ParameterMapType ParameterMapType
ElastixBase::ObjectContainerType ObjectContainerType
void SetTotalNumberOfElastixLevels(unsigned int levels)
ImageDimensionType m_MovingImageDimension
void operator=(const Self &)
ElastixBase::DataObjectContainerPointer DataObjectContainerPointer
ObjectContainerType::Pointer ObjectContainerPointer
ElastixBase ElastixBaseType
ParameterMapType m_TransformParametersMap
ObjectPointer m_InitialTransform
ConfigurationPointer m_Configuration
ComponentLoader ComponentLoaderType
A class that deals with user given parameters and command line arguments.
ComponentDatabaseType::ImageDimensionType ImageDimensionType
The ComponentDatabase class is a class that stores the New() functions of all components.
ComponentDatabaseType::IndexType DBIndexType
ComponentDatabaseType::ComponentDescriptionType ComponentDescriptionType
virtual int LoadComponents(void)
itk::VectorContainer< unsigned int, DataObjectPointer > DataObjectContainerType
void SetElastixLevel(unsigned int level)
static void SetComponentDatabase(ComponentDatabase *arg)
virtual const FlatDirectionCosinesType & GetOriginalFixedImageDirectionFlat(void) const
unsigned int GetTotalNumberOfElastixLevels(void)
This class creates an interface for elastix.
std::map< std::string, std::string > CommandLineArgumentMapType
std::string ComponentDescriptionType
unsigned int GetElastixLevel(void)