41template <
typename TSample>
82 return this->m_IdHolder;
123 Swap(
unsigned int index1,
unsigned int index2);
164 return (m_Iter == it.
m_Iter);
179 return m_Sample->GetFrequency(*m_Iter);
185 return m_Sample->GetMeasurementVector(*m_Iter);
191 return (m_Iter - m_Subsample->GetIdHolder().begin());
201 , m_Subsample(classSample)
202 , m_Sample(classSample->GetSample())
206 typename InstanceIdentifierHolder::const_iterator
m_Iter;
231 this->ConstIterator::operator=(iter);
240 Iterator(
typename InstanceIdentifierHolder::const_iterator iter,
const Self * classSample);
246 Iterator(
typename InstanceIdentifierHolder::iterator iter,
Self * classSample)
258 Iterator iter(m_IdHolder.begin(),
this);
268 Iterator iter(m_IdHolder.end(),
this);
296 const TSample * m_Sample{};
298 unsigned int m_ActiveDimension{};
304#ifndef ITK_MANUAL_INSTANTIATION
305# include "itkSubsample.hxx"
Base class for all data objects in ITK.
Control indentation during Print() invocation.
InstanceIdentifier GetInstanceIdentifier() const
bool operator==(const ConstIterator &it) const
AbsoluteFrequencyType GetFrequency() const
ITK_UNEQUAL_OPERATOR_MEMBER_FUNCTION(ConstIterator)
InstanceIdentifierHolder::const_iterator m_Iter
const MeasurementVectorType & GetMeasurementVector() const
ConstIterator(const Self *sample)
ConstIterator(const ConstIterator &iter)
ConstIterator & operator=(const ConstIterator &iter)
ConstIterator & operator++()
ConstIterator(typename InstanceIdentifierHolder::const_iterator iter, const Self *classSample)
ConstIterator & operator=(const ConstIterator &it)
Iterator(const Self *sample)
Iterator(const Iterator &iter)
Iterator(typename InstanceIdentifierHolder::iterator iter, Self *classSample)
Iterator(typename InstanceIdentifierHolder::const_iterator iter, const Self *classSample)
Iterator(const ConstIterator &it)
Iterator & operator=(const Iterator &iter)
This class stores a subset of instance identifiers from another sample object. You can create a subsa...
void Graft(const DataObject *thatObject) override
TotalAbsoluteFrequencyType GetTotalFrequency() const override
AbsoluteFrequencyType GetFrequencyByIndex(unsigned int index) const
InstanceIdentifier GetInstanceIdentifier(unsigned int index)
ConstIterator Begin() const
typename TSample::AbsoluteFrequencyType AbsoluteFrequencyType
typename TSample::InstanceIdentifier InstanceIdentifier
void InitializeWithAllInstances()
MeasurementVectorType ValueType
void Swap(unsigned int index1, unsigned int index2)
InstanceIdentifier Size() const override
typename TSample::MeasurementVectorType MeasurementVectorType
~Subsample() override=default
const TSample * GetSample() const
typename TSample::TotalAbsoluteFrequencyType TotalAbsoluteFrequencyType
void PrintSelf(std::ostream &os, Indent indent) const override
const MeasurementVectorType & GetMeasurementVectorByIndex(unsigned int index) const
AbsoluteFrequencyType GetFrequency(InstanceIdentifier id) const override
void AddInstance(InstanceIdentifier id)
std::vector< InstanceIdentifier > InstanceIdentifierHolder
const MeasurementVectorType & GetMeasurementVector(InstanceIdentifier id) const override
ConstIterator End() const
typename TSample::MeasurementType MeasurementType
const InstanceIdentifierHolder & GetIdHolder() const
void SetSample(const TSample *sample)
typename TSample::Pointer SamplePointer
SmartPointer< Self > Pointer
The "itk" namespace contains all Insight Segmentation and Registration Toolkit (ITK) classes....