ITK
6.0.0
Insight Toolkit
ITK
Modules
Core
Common
include
itkSTLContainerAdaptor.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 itkSTLContainerAdaptor_h
19
#define itkSTLContainerAdaptor_h
20
21
#include "
itkMacro.h
"
22
23
namespace
itk
24
{
44
template
<
typename
TContainer>
45
class
STLContainerAdaptor
46
{
47
public
:
48
ITK_DISALLOW_COPY_AND_MOVE(
STLContainerAdaptor
);
49
50
using
AdapteeType
= TContainer;
51
52
using
ElementType
=
typename
AdapteeType::Element;
53
using
TargetType
=
typename
AdapteeType::STLContainerType;
54
55
private
:
56
AdapteeType
&
m_AdapteeRef
;
57
58
public
:
59
STLContainerAdaptor
(
AdapteeType
& adaptee)
60
:
m_AdapteeRef
(adaptee)
61
{}
62
63
STLContainerAdaptor
(
AdapteeType
* adaptee)
64
:
m_AdapteeRef
(*adaptee)
65
{}
66
67
~STLContainerAdaptor
() {
m_AdapteeRef
.Modified(); }
68
69
TargetType
&
70
GetSTLContainerRef
()
71
{
72
return
m_AdapteeRef
.CastToSTLContainer();
73
}
74
};
75
}
// end namespace itk
76
77
#endif
itk::STLContainerAdaptor
An adapter object that casts a itk::XxxContainer into std::xxx and enables access to the underlying d...
Definition:
itkSTLContainerAdaptor.h:45
itk::STLContainerAdaptor::STLContainerAdaptor
STLContainerAdaptor(AdapteeType &adaptee)
Definition:
itkSTLContainerAdaptor.h:59
itk::STLContainerAdaptor::~STLContainerAdaptor
~STLContainerAdaptor()
Definition:
itkSTLContainerAdaptor.h:67
itk::STLContainerAdaptor::ElementType
typename AdapteeType::Element ElementType
Definition:
itkSTLContainerAdaptor.h:52
itk::STLContainerAdaptor::AdapteeType
TContainer AdapteeType
Definition:
itkSTLContainerAdaptor.h:50
itkMacro.h
itk::STLContainerAdaptor::STLContainerAdaptor
STLContainerAdaptor(AdapteeType *adaptee)
Definition:
itkSTLContainerAdaptor.h:63
itk::STLContainerAdaptor::m_AdapteeRef
AdapteeType & m_AdapteeRef
Definition:
itkSTLContainerAdaptor.h:56
itk::STLContainerAdaptor::TargetType
typename AdapteeType::STLContainerType TargetType
Definition:
itkSTLContainerAdaptor.h:53
itk
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....
Definition:
itkAnatomicalOrientation.h:29
itk::STLContainerAdaptor::GetSTLContainerRef
TargetType & GetSTLContainerRef()
Definition:
itkSTLContainerAdaptor.h:70
Generated on
unknown
for ITK by
1.8.16