go home Home | Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | File List | Namespace Members | Data Fields | Globals | Related Pages
elxInstallFunctions.h
Go to the documentation of this file.
1 /*=========================================================================
2  *
3  * Copyright UMC Utrecht and contributors
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0.txt
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  *
17  *=========================================================================*/
18 
19 #ifndef __elxInstallFunctions_h
20 #define __elxInstallFunctions_h
21 
22 #include "elxComponentDatabase.h"
23 
24 namespace elastix
25 {
26 
45 template< class TAnyItkObject >
47 {
48 public:
49 
52  typedef TAnyItkObject AnyItkObjectType;
53 
57 
62 
65 
67  static ObjectPointer Creator( void )
68  {
69  return dynamic_cast< ObjectType * >( AnyItkObjectType::New().GetPointer() );
70  }
71 
72 
76  static int InstallComponent(
77  const ComponentDescriptionType & name,
78  IndexType i, ComponentDatabase * cdb )
79  {
80  return cdb->SetCreator( name, i, Self::Creator );
81  }
82 
83 
84 };
85 
86 } // end namespace elastix
87 
88 #endif // end #ifndef __elxInstallFunctions_h
elastix::InstallFunctions::ComponentDescriptionType
ComponentDatabase::ComponentDescriptionType ComponentDescriptionType
Definition: elxInstallFunctions.h:64
elastix::InstallFunctions::ObjectType
ComponentDatabase::ObjectType ObjectType
Definition: elxInstallFunctions.h:55
elastix::InstallFunctions
A class with functions that are used to install elastix components.
Definition: elxInstallFunctions.h:47
elastix::ComponentDatabase::ComponentDescriptionType
std::string ComponentDescriptionType
Definition: elxComponentDatabase.h:77
elxComponentDatabase.h
elastix::ComponentDatabase::SetCreator
int SetCreator(const ComponentDescriptionType &name, IndexType i, PtrToCreator creator)
elastix::ComponentDatabase::ObjectType
itk::Object ObjectType
Definition: elxComponentDatabase.h:70
elastix::ComponentDatabase
The ComponentDatabase class is a class that stores the New() functions of all components.
Definition: elxComponentDatabase.h:54
elastix::ComponentDatabase::ObjectPointer
ObjectType::Pointer ObjectPointer
Definition: elxComponentDatabase.h:71
elastix::InstallFunctions::Self
InstallFunctions Self
Definition: elxInstallFunctions.h:51
unsigned int
elastix::InstallFunctions::AnyItkObjectType
TAnyItkObject AnyItkObjectType
Definition: elxInstallFunctions.h:52
elastix::InstallFunctions::ObjectPointer
ComponentDatabase::ObjectPointer ObjectPointer
Definition: elxInstallFunctions.h:56
elastix::InstallFunctions::Creator
static ObjectPointer Creator(void)
Definition: elxInstallFunctions.h:67
elastix
Definition: elxFixedGenericPyramid.h:25
elastix::InstallFunctions::InstallComponent
static int InstallComponent(const ComponentDescriptionType &name, IndexType i, ComponentDatabase *cdb)
Definition: elxInstallFunctions.h:76
elastix::InstallFunctions::IndexType
ComponentDatabase::IndexType IndexType
Definition: elxInstallFunctions.h:61


Generated on OURCE_DATE_EPOCH for elastix by doxygen 1.8.18 elastix logo