ITK  6.0.0
Insight Toolkit
itkMetaArrowConverter.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#ifndef itkMetaArrowConverter_h
19#define itkMetaArrowConverter_h
20
23#include "metaArrow.h"
24
25namespace itk
26{
34template <unsigned int VDimension = 3>
35class ITK_TEMPLATE_EXPORT MetaArrowConverter : public MetaConverterBase<VDimension>
36{
37public:
38 ITK_DISALLOW_COPY_AND_MOVE(MetaArrowConverter);
39
45
47 itkNewMacro(Self);
48
50 itkOverrideGetNameOfClassMacro(MetaArrowConverter);
51
52 using typename Superclass::SpatialObjectType;
54 using typename Superclass::MetaObjectType;
55
60 using ArrowMetaObjectType = MetaArrow;
61
65
68 SpatialObjectToMetaObject(const SpatialObjectType * spatialObject) override;
69
70protected:
73 CreateMetaObject() override;
74
75 MetaArrowConverter() = default;
76 ~MetaArrowConverter() override = default;
77};
78
79} // end namespace itk
80
81#ifndef ITK_MANUAL_INSTANTIATION
82# include "itkMetaArrowConverter.hxx"
83#endif
84
85#endif
Representation of a Arrow based on the spatial object classes.
Light weight base class for most itk classes.
converts between MetaObject<->SpatialObject.
typename ArrowSpatialObjectType::Pointer ArrowSpatialObjectPointer
~MetaArrowConverter() override=default
MetaObjectType * CreateMetaObject() override
typename ArrowSpatialObjectType::ConstPointer ArrowSpatialObjectConstPointer
typename SpatialObjectType::Pointer SpatialObjectPointer
MetaObjectType * SpatialObjectToMetaObject(const SpatialObjectType *spatialObject) override
SpatialObjectPointer MetaObjectToSpatialObject(const MetaObjectType *mo) override
Base class for MetaObject<->SpatialObject converters.
Implementation of the composite pattern.
SmartPointer< const Self > ConstPointer
SmartPointer< Self > Pointer
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....