![]() |
IPSDK
4_1_0_2
IPSDK : Image Processing Software Development Kit
|
Class allowing to store elements split informations. More...
#include <ElementsSplitInfo.h>
Public Member Functions | |
| bool | isInit () const |
| check for object initialization | |
| void | init (const ElementsLocationInfo &elementsLocationInfo, const ipUInt64 nbMinEltsPerSplit, const ipUInt64 nbMaxEltsPerSplit, const ipUInt64 minMemSzPerSplit, const ipUInt64 maxMemSzPerSplit, const ipUInt64 nbMaxAskedThreads) |
| ipUInt64 | getNbMinEltsPerSplit () const |
| retrieve minimum number of elements by split More... | |
| ipUInt64 | getNbMaxEltsPerSplit () const |
| retrieve maximum number of elements by split More... | |
| ipUInt64 | getMinMemSzPerSplit () const |
| retrieve minimum number of elements by split More... | |
| ipUInt64 | getMaxMemSzPerSplit () const |
| retrieve maximum number of elements by split More... | |
| bool | hasPendingData () const |
| check whether data are still waiting to be processed More... | |
| bool | hasRemainingData () const |
| check whether data are still waiting to be processed or are still waiting to be released More... | |
| bool | hasSocketGuid (const Guid &socketGuid) const |
| check whether a given socket guid is valid for object More... | |
| ipUInt64 | getRemainingDataMemorySize () const |
| retrieve remaining data memory size associated to not processed elements More... | |
| ipUInt64 | getRemainingDataMemorySize (const Guid &socketGuid) const |
| retrieve remaining data memory size associated to not processed elements for a given socket guid More... | |
| ipUInt64 | getAcquiredDataMemorySize (const Guid &socketGuid) const |
| retrieve currently acquired data memory size associated a given socket guid More... | |
| core::QueryResult | acquiredNextRange (ElementsRange &acquiredElementsRange, ipUInt64 &acquiredDataMemorySize) |
| method allowing to acquired a not already processed range of data associated to local data More... | |
| core::QueryResult | acquiredNextRange (const Guid &socketGuid, ElementsRange &acquiredElementsRange, ipUInt64 &acquiredDataMemorySize) |
| method allowing to acquired a not already processed range of data associated to a given socket guid More... | |
| core::QueryResult | stealNextLocalRange (const Guid &socketGuid, ElementsRange &acquiredElementsRange, ipUInt64 &acquiredDataMemorySize) |
| method allowing to steal a not already processed local range of data to be processed by a given socket guid | |
| core::QueryResult | forceNextRangeAcquisition (ElementsRange &acquiredElementsRange, ipUInt64 &acquiredDataMemorySize) |
| method allowing to acquire a not already processed range of data to be processed by local machine without consideration on data localization | |
| void | markHasReleased (const Guid &socketGuid, const ElementsRange &elementsRange) |
| remove some data from remotely acquired data More... | |
| const ElementsLocation & | getProcessedElements () const |
| retrieve processed elements informations More... | |
| ipUInt64 | getNbProcessedElements () const |
| retrieve number of processed elements More... | |
| ipUInt64 | getNbNotReleased () const |
| retrieve number of not released elements More... | |
| ipUInt64 | getNbPendingElements () const |
| retrieve number of pending elements More... | |
| RemoteDataSize | getNotReleasedDataSizes () const |
| retrieve the size of data used by the process More... | |
| void | clear () |
| clear of object data | |
Constructors and destructors | |
| ElementsSplitInfo () | |
| ~ElementsSplitInfo () | |
Protected Member Functions | |
| core::QueryResult | acquiredNextRange (const Guid &socketGuidOwner, const Guid &socketGuidProcessor, ElementsRange &acquiredElementsRange, ipUInt64 &acquiredDataMemorySize) |
| method allowing to acquired a not already processed range of data associated to a given socket guid owner and for a given socket guid processor More... | |
Protected Attributes | |
| ipUInt64 | _nbMinEltsPerSplit |
| minimum number of elements for a split operation | |
| ipUInt64 | _nbMaxEltsPerSplit |
| maximum number of elements for a split operation | |
| ipUInt64 | _minMemSzPerSplit |
| minimum data size for a split operation | |
| ipUInt64 | _maxMemSzPerSplit |
| maximum data size for a split operation | |
| ipUInt64 | _remainingDataMemorySize |
| remaining data memory size associated to not processed elements | |
| ElementsLocation | _pendingElements |
| collection of pending elements for processing | |
| ElementsLocation | _acquiredElements |
| RemoteDataSize | _acquiredDataSizes |
| ElementsLocation | _processedElements |
| collection of processed elements | |
| bool | _bInit |
| flag indicating whether object has been initialized | |
Class allowing to store elements split informations.
| void ipsdk::processor::ElementsSplitInfo::init | ( | const ElementsLocationInfo & | elementsLocationInfo, |
| const ipUInt64 | nbMinEltsPerSplit, | ||
| const ipUInt64 | nbMaxEltsPerSplit, | ||
| const ipUInt64 | minMemSzPerSplit, | ||
| const ipUInt64 | maxMemSzPerSplit, | ||
| const ipUInt64 | nbMaxAskedThreads | ||
| ) |
initialization of object It is possible to enforce the maximum number of threads used to dispatch the data
| ipsdk::IPSDKBaseProcessingException | if nbMinEltsPerSplit == 0 |
| ipsdk::IPSDKBaseProcessingException | if nbMinEltsPerSplit > nbMaxEltsPerSplit |
| ipsdk::IPSDKBaseProcessingException | if elementsLocationInfo informations are not compatible with min/max elements per split parameters |
| ipUInt64 ipsdk::processor::ElementsSplitInfo::getNbMinEltsPerSplit | ( | ) | const |
retrieve minimum number of elements by split
| ipsdk::IPSDKBaseProcessingException | if isInit() == false |
| ipUInt64 ipsdk::processor::ElementsSplitInfo::getNbMaxEltsPerSplit | ( | ) | const |
retrieve maximum number of elements by split
| ipsdk::IPSDKBaseProcessingException | if isInit() == false |
| ipUInt64 ipsdk::processor::ElementsSplitInfo::getMinMemSzPerSplit | ( | ) | const |
retrieve minimum number of elements by split
| ipsdk::IPSDKBaseProcessingException | if isInit() == false |
| ipUInt64 ipsdk::processor::ElementsSplitInfo::getMaxMemSzPerSplit | ( | ) | const |
retrieve maximum number of elements by split
| ipsdk::IPSDKBaseProcessingException | if isInit() == false |
| bool ipsdk::processor::ElementsSplitInfo::hasPendingData | ( | ) | const |
check whether data are still waiting to be processed
| ipsdk::IPSDKBaseProcessingException | if isInit() == false |
| bool ipsdk::processor::ElementsSplitInfo::hasRemainingData | ( | ) | const |
check whether data are still waiting to be processed or are still waiting to be released
| ipsdk::IPSDKBaseProcessingException | if isInit() == false |
| bool ipsdk::processor::ElementsSplitInfo::hasSocketGuid | ( | const Guid & | socketGuid | ) | const |
check whether a given socket guid is valid for object
| ipsdk::IPSDKBaseProcessingException | if isInit() == false |
| ipUInt64 ipsdk::processor::ElementsSplitInfo::getRemainingDataMemorySize | ( | ) | const |
retrieve remaining data memory size associated to not processed elements
| ipsdk::IPSDKBaseProcessingException | if isInit() == false |
| ipUInt64 ipsdk::processor::ElementsSplitInfo::getRemainingDataMemorySize | ( | const Guid & | socketGuid | ) | const |
retrieve remaining data memory size associated to not processed elements for a given socket guid
| ipsdk::IPSDKBaseProcessingException | if hasSocketGuid(socketGuid) == false |
| ipUInt64 ipsdk::processor::ElementsSplitInfo::getAcquiredDataMemorySize | ( | const Guid & | socketGuid | ) | const |
retrieve currently acquired data memory size associated a given socket guid
| ipsdk::IPSDKBaseProcessingException | if hasSocketGuid(socketGuid) == false |
| core::QueryResult ipsdk::processor::ElementsSplitInfo::acquiredNextRange | ( | ElementsRange & | acquiredElementsRange, |
| ipUInt64 & | acquiredDataMemorySize | ||
| ) |
method allowing to acquired a not already processed range of data associated to local data
| ipsdk::IPSDKBaseProcessingException | if isInit() == false |
| core::QueryResult ipsdk::processor::ElementsSplitInfo::acquiredNextRange | ( | const Guid & | socketGuid, |
| ElementsRange & | acquiredElementsRange, | ||
| ipUInt64 & | acquiredDataMemorySize | ||
| ) |
method allowing to acquired a not already processed range of data associated to a given socket guid
| ipsdk::IPSDKBaseProcessingException | if hasSocketGuid(socketGuid) == false |
| void ipsdk::processor::ElementsSplitInfo::markHasReleased | ( | const Guid & | socketGuid, |
| const ElementsRange & | elementsRange | ||
| ) |
remove some data from remotely acquired data
| ipsdk::IPSDKBaseProcessingException | if elements range has not been acquired |
| const ElementsLocation& ipsdk::processor::ElementsSplitInfo::getProcessedElements | ( | ) | const |
retrieve processed elements informations
| ipsdk::IPSDKBaseProcessingException | if hasRemainingData() == true |
| ipUInt64 ipsdk::processor::ElementsSplitInfo::getNbProcessedElements | ( | ) | const |
retrieve number of processed elements
| ipsdk::IPSDKBaseProcessingException | if isInit() == false |
| ipUInt64 ipsdk::processor::ElementsSplitInfo::getNbNotReleased | ( | ) | const |
retrieve number of not released elements
| ipsdk::IPSDKBaseProcessingException | if isInit() == false |
| ipUInt64 ipsdk::processor::ElementsSplitInfo::getNbPendingElements | ( | ) | const |
retrieve number of pending elements
| ipsdk::IPSDKBaseProcessingException | if isInit() == false |
| RemoteDataSize ipsdk::processor::ElementsSplitInfo::getNotReleasedDataSizes | ( | ) | const |
retrieve the size of data used by the process
| ipsdk::IPSDKBaseProcessingException | if isInit() == false |
|
protected |
method allowing to acquired a not already processed range of data associated to a given socket guid owner and for a given socket guid processor
| ipsdk::IPSDKBaseProcessingException | if hasSocketGuid(socketGuidOwner) == false |
|
protected |
collection of acquired elements associated to currently processed data
|
protected |
collection of socket guid associated to an amount of currently processed data
1.8.14