ITK
6.0.0
Insight Toolkit
ITK
Modules
Core
SpatialObjects
include
itkSpatialObjectFactory.h
Go to the documentation of this file.
1
/*=========================================================================
2
*
3
* Copyright NumFOCUS
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
* https://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
*
20
* Portions of this file are subject to the VTK Toolkit Version 3 copyright.
21
*
22
* Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
23
*
24
* For complete copyright, license and disclaimer of warranty information
25
* please refer to the NOTICE file at the top of the ITK source tree.
26
*
27
*=========================================================================*/
28
#ifndef itkSpatialObjectFactory_h
29
#define itkSpatialObjectFactory_h
30
31
#include "
itkSpatialObjectFactoryBase.h
"
32
33
namespace
itk
34
{
41
template
<
typename
T>
42
class
SpatialObjectFactory
:
public
SpatialObjectFactoryBase
43
{
44
public
:
45
static
void
46
RegisterSpatialObject
()
47
{
48
auto
t =
T::New
();
49
const
SpatialObjectFactoryBase::Pointer
f =
SpatialObjectFactoryBase::GetFactory
();
50
f->RegisterSpatialObject(t->GetClassNameAndDimension().c_str(),
51
t->GetClassNameAndDimension().c_str(),
52
t->GetClassNameAndDimension().c_str(),
53
1,
54
CreateObjectFunction<T>::New
());
55
}
56
};
57
}
// end namespace itk
58
59
#endif
itk::SpatialObjectFactory
Create instances of SpatialObjects.
Definition:
itkSpatialObjectFactory.h:42
itkSpatialObjectFactoryBase.h
itk::CreateObjectFunction::New
static Pointer New()
itk::SpatialObjectFactoryBase
Create instances of SpatialObjects.
Definition:
itkSpatialObjectFactoryBase.h:43
itk::SmartPointer< Self >
itk::SpatialObjectFactory::RegisterSpatialObject
static void RegisterSpatialObject()
Definition:
itkSpatialObjectFactory.h:46
itk::SpatialObjectFactoryBase::GetFactory
static SpatialObjectFactoryBase * GetFactory()
Definition:
itkSpatialObjectFactoryBase.h:73
itk
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
Definition:
itkAnatomicalOrientation.h:29
New
static Pointer New()
Generated on
unknown
for ITK by
1.8.16