IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Public Types | Protected Types | Protected Attributes | List of all members
ipsdk::processor::BaseStaticProcessorDispatcher Class Referenceabstract

Base class for processor operations dispatching with static split operation types. More...

#include <BaseStaticProcessorDispatcher.h>

Inheritance diagram for ipsdk::processor::BaseStaticProcessorDispatcher:
ipsdk::processor::BaseProcessorDispatcher ipsdk::core::BaseActionProvider ipsdk::processor::StaticProcessorDispatcher< TProcessor >

Public Types

typedef BaseStaticSplit DataSplitType
 data split operations type
 

Public Member Functions

Constructors and destructors
 BaseStaticProcessorDispatcher ()
 
virtual ~BaseStaticProcessorDispatcher ()=0
 
- Public Member Functions inherited from ipsdk::processor::BaseProcessorDispatcher
BoolResult setProcessorDispatchPolicy (const ProcessorDispatchPolicy &processorDispatchPolicy)
 select used processor dispatch policy More...
 
const ProcessorDispatchPolicygetProcessorDispatchPolicy () const
 retrieve used processor dispatch policy More...
 
virtual const std::string & getProcessorName () const =0
 retrieve processor name associated to dispatch operation
 
virtual const std::string & getProcessorToolTip () const =0
 retrieve processor tooltip associated to dispatch operation
 
ElementsSplitInfoConstPtr getElementsSplitInfo () const
 retrieve informations about splitted data More...
 
ipUInt64 getNbNotReleased () const
 retrieve the number of non released (i.e. running) processors
 
ipUInt64 getNbPendingElements () const
 retrieve the number of pending (i.e. waiting to start) processors
 
ipUInt64 getNbProcessedElements () const
 retrieve the number of finished processors
 
RemoteDataSize getNotReleasedDataSizes () const
 retrieve the size of data used by the process
 
ipUInt64 getRemainingDataMemorySize () const
 retrieve the size of remaining data
 
 BaseProcessorDispatcher ()
 
virtual ~BaseProcessorDispatcher ()=0
 
void setProcessorRulePolicy (const eProcessorRulePolicy &processorRulePolicy)
 access to used rule policy on created processors
 
const eProcessorRulePolicygetProcessorRulePolicy () const
 access to used rule policy on created processors
 
- Public Member Functions inherited from ipsdk::core::BaseActionProvider
bool isInit () const
 retrieve object initialization flag
 
const GuidgetGuid () const
 retrieve guid associated to provider More...
 
const ePrioritygetActionsPriority () const
 retrieve priority associated to provided actions More...
 
eExecutionStatus getStatus () const
 check for provider execution status More...
 
void addCompletionCB (const ProviderCompletionCB &completionCB)
 add a completion callback associated to action provider More...
 
bool areActionsPending () const
 check whether additional actions potentially are pending More...
 
void waitForCompletion ()
 method allowing to wait for execution completion More...
 
bool waitForCompletion (const boost::chrono::milliseconds &duration)
 method allowing to wait for a given duration for execution completion More...
 
bool waitForCompletion (const boost::chrono::system_clock::time_point &deadLineTime)
 method allowing to wait until a given time point for execution completion More...
 
void requestCancellation ()
 method allowing to request cancellation More...
 
bool isCancellationRequested () const
 check whether a cancellation has been requested More...
 
ExecResult getGlobalResult () const
 retrieve execution global result More...
 
double getFullExecutionDuration () const
 retrieve full execution time More...
 
void clear ()
 clear of object data More...
 
 BaseActionProvider ()
 
virtual ~BaseActionProvider ()=0
 

Protected Types

typedef boost::shared_ptr< DataSplitTypeDataSplitPtr
 shared pointer to DataSplit
 
typedef std::vector< DataSplitPtrDataSplitColl
 collection of data split operations
 

Protected Member Functions

BoolResult initBase (const core::BasePriority &actionPriority, const DataSplitColl &dataSplitColl)
 base class initialization method More...
 
BoolResult initBase (const core::BasePriority &actionPriority, const ipUInt64 nbMaxThreads, const DataSplitColl &dataSplitColl)
 base class initialization method More...
 
- Protected Member Functions inherited from ipsdk::processor::BaseProcessorDispatcher
BoolResult initBase (const core::BasePriority &actionPriority, const ElementsLocationInfo &elementsLocationInfo, const GuidSet &broadcastSocketGuids, const ipUInt64 nbMinEltsPerSplit, const ipUInt64 nbMaxEltsPerSplit, const ipUInt64 minMemSzPerThread=0, const ipUInt64 maxMemSzPerThread=NumericLimits< ipUInt64 >::max(), const ipUInt64 nbMaxThreads=0)
 base class initialization method It is possible to enforce the maximum number of threads used to dispatch the data More...
 
virtual ProcessorPtr createProcessor () const =0
 create a new instance of associated processor
 
void broadcastToRemotes ()
 method allowing to broadcast processor dispatcher to all configured remote processing servers
 
- Protected Member Functions inherited from ipsdk::core::BaseActionProvider
BoolResult initBase (const BasePriority &actionsPriority, const Guid &providerGuid=Guid())
 base class initialization method More...
 
bool existsRemoteProvider (const Guid &socketGuid)
 check whether a remote provider exists for a given socket guid More...
 
void addRemoteProvider (const Guid &socketGuid)
 define a new remote provider for a given socket guid More...
 
bool unRegisterRemoteProvider (const Guid &socketGuid)
 un register a remote provider for a given socket guid More...
 
BoolResult registerRemoteProvider (const Guid &socketGuid)
 instantly register a new remote provider for a given socket guid More...
 
BoolResult registerRemoteProviders ()
 register remote providers associated to object More...
 
virtual void requestCancellationDerived ()
 method allowing to request cancellation in derived classes
 

Protected Attributes

DataSplitColl _dataSplitColl
 collection of data split operations associated to object
 

Detailed Description

Base class for processor operations dispatching with static split operation types.

Author
E. Noirfalise
Date
2014/2/7

Member Function Documentation

◆ initBase() [1/2]

BoolResult ipsdk::processor::BaseStaticProcessorDispatcher::initBase ( const core::BasePriority actionPriority,
const DataSplitColl dataSplitColl 
)
protected

base class initialization method

Returns
false in case of failure

◆ initBase() [2/2]

BoolResult ipsdk::processor::BaseStaticProcessorDispatcher::initBase ( const core::BasePriority actionPriority,
const ipUInt64  nbMaxThreads,
const DataSplitColl dataSplitColl 
)
protected

base class initialization method

Returns
false in case of failure

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