#include <itkThreadedIndexedContainerPartitioner.h>
Partitions an indexed container.
The DomainType
is defined to be a two element itk::Index of ElementIdentifiers: the first element defines the start of the domain, and the second element defines the end of the domain.
Element counting starts from zero and the identifier at the end of the domain is inclusive.
This class is typically used as a template argument to a DomainThreader.
Definition at line 45 of file itkThreadedIndexedContainerPartitioner.h.
Public Types | |
using | ConstPointer = SmartPointer<const Self> |
using | DomainType = Superclass::DomainType |
using | IndexRangeType = DomainType |
using | Pointer = SmartPointer<Self> |
using | Self = ThreadedIndexedContainerPartitioner |
using | Superclass = ThreadedDomainPartitioner<Index<2>> |
![]() | |
using | ConstPointer |
using | DomainType |
using | Pointer |
using | Self |
using | Superclass |
![]() | |
using | ConstPointer = SmartPointer<const Self> |
using | Pointer = SmartPointer<Self> |
using | Self = Object |
using | Superclass = LightObject |
![]() | |
using | ConstPointer = SmartPointer<const Self> |
using | Pointer = SmartPointer<Self> |
using | Self = LightObject |
Public Member Functions | |
virtual::itk::LightObject::Pointer | CreateAnother () const |
const char * | GetNameOfClass () const override |
ThreadIdType | PartitionDomain (const ThreadIdType threadId, const ThreadIdType requestedTotal, const DomainType &completeIndexRange, DomainType &subIndexRange) const override |
![]() | |
unsigned long | AddObserver (const EventObject &event, Command *cmd) const |
unsigned long | AddObserver (const EventObject &event, std::function< void(const EventObject &)> function) const |
virtual void | DebugOff () const |
virtual void | DebugOn () const |
Command * | GetCommand (unsigned long tag) |
bool | GetDebug () const |
MetaDataDictionary & | GetMetaDataDictionary () |
const MetaDataDictionary & | GetMetaDataDictionary () const |
virtual ModifiedTimeType | GetMTime () const |
virtual const TimeStamp & | GetTimeStamp () const |
bool | HasObserver (const EventObject &event) const |
void | InvokeEvent (const EventObject &) |
void | InvokeEvent (const EventObject &) const |
virtual void | Modified () const |
void | Register () const override |
void | RemoveAllObservers () |
void | RemoveObserver (unsigned long tag) const |
void | SetDebug (bool debugFlag) const |
void | SetReferenceCount (int) override |
void | UnRegister () const noexcept override |
void | SetMetaDataDictionary (const MetaDataDictionary &rhs) |
void | SetMetaDataDictionary (MetaDataDictionary &&rrhs) |
virtual void | SetObjectName (std::string _arg) |
virtual const std::string & | GetObjectName () const |
![]() | |
Pointer | Clone () const |
virtual void | Delete () |
virtual int | GetReferenceCount () const |
void | Print (std::ostream &os, Indent indent=0) const |
Static Public Member Functions | |
static Pointer | New () |
![]() | |
static bool | GetGlobalWarningDisplay () |
static void | GlobalWarningDisplayOff () |
static void | GlobalWarningDisplayOn () |
static Pointer | New () |
static void | SetGlobalWarningDisplay (bool val) |
![]() | |
static void | BreakOnError () |
static Pointer | New () |
Protected Member Functions | |
ThreadedIndexedContainerPartitioner () | |
~ThreadedIndexedContainerPartitioner () override | |
![]() | |
ThreadedDomainPartitioner ()=default | |
ThreadedDomainPartitioner ()=default | |
~ThreadedDomainPartitioner () override=default | |
~ThreadedDomainPartitioner () override=default | |
![]() | |
Object () | |
bool | PrintObservers (std::ostream &os, Indent indent) const |
void | PrintSelf (std::ostream &os, Indent indent) const override |
virtual void | SetTimeStamp (const TimeStamp &timeStamp) |
~Object () override | |
![]() | |
virtual LightObject::Pointer | InternalClone () const |
LightObject () | |
virtual void | PrintHeader (std::ostream &os, Indent indent) const |
virtual void | PrintTrailer (std::ostream &os, Indent indent) const |
virtual | ~LightObject () |
Additional Inherited Members | |
![]() | |
std::atomic< int > | m_ReferenceCount {} |
Definition at line 54 of file itkThreadedIndexedContainerPartitioner.h.
Type for convenience of base class methods
Definition at line 63 of file itkThreadedIndexedContainerPartitioner.h.
Synonym for the domain that is more descriptive.
Definition at line 66 of file itkThreadedIndexedContainerPartitioner.h.
Definition at line 53 of file itkThreadedIndexedContainerPartitioner.h.
Standard class type aliases.
Definition at line 51 of file itkThreadedIndexedContainerPartitioner.h.
Definition at line 52 of file itkThreadedIndexedContainerPartitioner.h.
|
protected |
Referenced by GetNameOfClass().
|
overrideprotected |
|
virtual |
Create an object from an instance, potentially deferring to a factory. This method allows you to create an instance of an object that is exactly the same type as the referring object. This is useful in cases where an object has been cast back to a base class.
Reimplemented from itk::Object.
|
overridevirtual |
Reimplemented from itk::ThreadedDomainPartitioner< Index< 2 > >.
References ThreadedIndexedContainerPartitioner().
|
static |
Method for creation through the object factory.
|
overridevirtual |
Split the index range completeIndexRange
into up to requestedTotal
non-overlapping subranges, setting subrange number threadId
as subIndexRange
and returning the total number of subranges actually available.
This method should be called repeatedly for each value of threadId
, from 0 up to the return value (which is always less than or equal to requestedTotal
).
It is an error for completeIndexRange
to be zero-length (i.e. for completeIndexRange.End to be less than completeIndexRange.Begin). If threadId
is greater than the return value, the contents of subIndexRange
are undefined.
Implements itk::ThreadedDomainPartitioner< Index< 2 > >.