18 #ifndef itkAttributeSelectionLabelMapFilter_h
19 #define itkAttributeSelectionLabelMapFilter_h
49 template<
typename TImage,
typename TAttributeAccessor=
50 typename Functor::AttributeLabelObjectAccessor< typename TImage::LabelObjectType > >
77 static constexpr
unsigned int ImageDimension = TImage::ImageDimension;
86 #ifdef ITK_USE_CONCEPT_CHECKING
102 return m_AttributeSet;
106 m_AttributeSet = set;
115 itkGetConstMacro( Exclude,
bool );
116 itkSetMacro( Exclude,
bool );
117 itkBooleanMacro( Exclude );
123 this->ClearAttributeSet();
124 this->AddAttribute( attr );
130 if( ! m_AttributeSet.empty() )
132 m_AttributeSet.clear();
139 const typename AttributeSetType::size_type size = m_AttributeSet.size();
140 m_AttributeSet.insert( attr );
141 if( size != m_AttributeSet.size() )
151 void GenerateData()
override;
153 void PrintSelf(std::ostream& os,
Indent indent)
const override;
163 #ifndef ITK_MANUAL_INSTANTIATION
164 #include "itkAttributeSelectionLabelMapFilter.hxx"
Light weight base class for most itk classes.
typename ImageType::LabelObjectType LabelObjectType
void SetAttribute(const AttributeValueType &attr)
const AttributeSetType & GetAttributeSet() const
typename ImageType::PixelType PixelType
typename ImageType::IndexType IndexType
typename LabelObjectType::LabelType AttributeValueType
typename AttributeAccessorType::AttributeValueType AttributeValueType
typename ImageType::Pointer ImagePointer
typename std::set< AttributeValueType > AttributeSetType
ImageBaseType::IndexType IndexType
Base class for filters that takes an image as input and overwrites that image as the output...
typename ImageType::ConstPointer ImageConstPointer
Control indentation during Print() invocation.
void SetAttributeSet(const AttributeSetType &set)
remove the objects according to the value of their attribute
AttributeSetType m_AttributeSet
void AddAttribute(const AttributeValueType &attr)