IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Public Member Functions | Protected Member Functions | List of all members
ipsdk::processor::BaseDataSplit Class Referenceabstract

Base class for data split objets used for data dispatch. More...

#include <BaseDataSplit.h>

Inheritance diagram for ipsdk::processor::BaseDataSplit:
ipsdk::processor::BaseDynamicSplit ipsdk::processor::BaseStaticSplit ipsdk::imaproc::BaseImageTileCollSplit< OutputTileType::ImageType > ipsdk::imaproc::BaseImageTileCollSplit< TAttribute::TileType ::ImageType > ipsdk::imaproc::BaseShape2dCollSplit< InputStorageType::element_type > ipsdk::imaproc::BaseShape3dCollSplit< InputStorageType::element_type > ipsdk::imaproc::BaseImageStripSplit< InputDataType > ipsdk::imaproc::BaseImageTileCollSplit< InputImageType > ipsdk::imaproc::BaseMeasureSetSplit< InputDataType > ipsdk::imaproc::BaseShape2dCollSplit< InputDataType > ipsdk::imaproc::BaseShape3dCollSplit< InputDataType > ipsdk::processor::DynamicByCopyResultSplit< TProcessor, TAttribute > ipsdk::processor::DynamicByCreationResultSplit< TProcessor, TAttribute > ipsdk::processor::DynamicByRangeDataSplit< TProcessor, TAttribute, CollField, ValueField > ipsdk::processor::DynamicNoSplit< TProcessor, TAttribute > ipsdk::imaproc::BaseCudaSubImageSplit< TAttribute::StorageType > ipsdk::imaproc::BaseSubImageSplit< TAttribute::StorageType > ipsdk::imaproc::BaseCudaSubImageSplit< InOutStorageType > ipsdk::imaproc::BaseImageTileSplit< InputDataType > ipsdk::imaproc::BasePlanIndexedSplit ipsdk::imaproc::BaseStaticImageStripSplit< InputDataType > ipsdk::imaproc::BaseSubImageSplit< InOutStorageType > ipsdk::processor::StaticNoSplit< TProcessor, TAttribute > ipsdk::processor::StaticParameterSplit< TProcessor, TAttribute > ipsdk::processor::StaticResultSplit< TProcessor, TAttribute >

Public Member Functions

virtual eSplitBaseType getSplitBaseType () const =0
 retrieve split operation base type
 
virtual const std::string & getAttributeName () const =0
 retrieve attribute name associated to split operation
 
virtual const std::string & getAttributeToolTip () const =0
 retrieve attribute tooltip associated to split operation
 
bool isInit () const
 retrieve object initialization flag
 
bool isSplitted () const
 check whether object will be associated to split operation More...
 
const ElementsLocationInfogetElementsLocationInfo () const
 retrieve data location informations More...
 
ipUInt64 getFullMemorySize () const
 retrieve full memory data size for elements More...
 
bool areDataLocalized () const
 check whether data are localized More...
 
bool hasLocalData () const
 check whether some data are local data More...
 
bool hasRemoteData () const
 check whether some data are remote data More...
 
void disableDataLocalization ()
 method allowing to disable data localization More...
 
Constructors and destructors
 BaseDataSplit ()
 
virtual ~BaseDataSplit ()=0
 
Splitted data information access
ipUInt64 getNbElements () const
 retrieve total number of elements associated to input data More...
 
ipUInt64 getDataMemorySize (const ipUInt64 elementIdx) const
 retrieve memory size of data for a given element More...
 
Un splitted data information access
ipUInt64 getDataMemorySize () const
 retrieve memory size of data for a given element More...
 

Protected Member Functions

void initBaseSplitted (const ElementsLocationInfo &elementsLocationInfo)
 base class initialization method for splitted elements More...
 
void initBaseUnSplitted (const ElementsLocationInfo &elementsLocationInfo)
 base class initialization method for un splitted elements More...
 
virtual bool checkProcessorType (const processor::BaseProcessor &processor)=0
 check processor type in derived class
 
void throwNullInputSharedPtr ()
 

Detailed Description

Base class for data split objets used for data dispatch.

Author
E. Noirfalise
Date
2013/9/25

Member Function Documentation

◆ isSplitted()

bool ipsdk::processor::BaseDataSplit::isSplitted ( ) const

check whether object will be associated to split operation

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif isInit() == false

◆ getElementsLocationInfo()

const ElementsLocationInfo& ipsdk::processor::BaseDataSplit::getElementsLocationInfo ( ) const

retrieve data location informations

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif isInit() == false

◆ getFullMemorySize()

ipUInt64 ipsdk::processor::BaseDataSplit::getFullMemorySize ( ) const

retrieve full memory data size for elements

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif isInit() == false

◆ areDataLocalized()

bool ipsdk::processor::BaseDataSplit::areDataLocalized ( ) const

check whether data are localized

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif isInit() == false

◆ hasLocalData()

bool ipsdk::processor::BaseDataSplit::hasLocalData ( ) const

check whether some data are local data

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif isInit() == false

◆ hasRemoteData()

bool ipsdk::processor::BaseDataSplit::hasRemoteData ( ) const

check whether some data are remote data

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif isInit() == false

◆ disableDataLocalization()

void ipsdk::processor::BaseDataSplit::disableDataLocalization ( )

method allowing to disable data localization

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif isInit() == false

◆ getNbElements()

ipUInt64 ipsdk::processor::BaseDataSplit::getNbElements ( ) const

retrieve total number of elements associated to input data

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif isSplitted() == false

◆ getDataMemorySize() [1/2]

ipUInt64 ipsdk::processor::BaseDataSplit::getDataMemorySize ( const ipUInt64  elementIdx) const

retrieve memory size of data for a given element

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif elementIdx >= getNbElements()

◆ getDataMemorySize() [2/2]

ipUInt64 ipsdk::processor::BaseDataSplit::getDataMemorySize ( ) const

retrieve memory size of data for a given element

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif isSplitted() == true

◆ initBaseSplitted()

void ipsdk::processor::BaseDataSplit::initBaseSplitted ( const ElementsLocationInfo elementsLocationInfo)
protected

base class initialization method for splitted elements

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif elementsLocationInfo.getNbElements() == 0

◆ initBaseUnSplitted()

void ipsdk::processor::BaseDataSplit::initBaseUnSplitted ( const ElementsLocationInfo elementsLocationInfo)
protected

base class initialization method for un splitted elements

Exceptions
ipsdk::processor::IPSDKBaseProcessingExceptionif elementsLocationInfo.getNbElements() != 1

◆ throwNullInputSharedPtr()

void ipsdk::processor::BaseDataSplit::throwNullInputSharedPtr ( )
protected

Unconditional thrown of an exception allowing to report an input null shared pointer provided to derived template class during initialization

Exceptions
ipsdk::processor::IPSDKBaseProcessingException

The documentation for this class was generated from the following file: