![]() |
IPSDK
4_1_0_2
IPSDK : Image Processing Software Development Kit
|
Class allowing to manager providers execution with respect to their priority. More...
#include <ProviderManager.h>
Public Member Functions | |
| bool | isInit () const |
| retrieve object initialization flag | |
| void | init () |
| initialization of object | |
| void | addProvider (const ActionProviderPtr &pActionProvider, bool bPushBack) |
| insert a new action provider into providers collection (with respect to its priority) More... | |
| void | removeProvider (const ActionProviderPtr &pActionProvider) |
| remove provider from providers collection More... | |
| void | askForNewAction (ActionRequestPtr &pActionRequest) |
| ask new action for execution More... | |
| void | requestTermination () |
| method allowing to request termination of executions More... | |
| void | clear () |
| clear of objects data | |
| const ProviderPriorityColl & | getProviderPriorityColl () const |
| retrieve the collection of provider, cassified by priority | |
Constructors and destructors | |
| ProviderManager () | |
| ~ProviderManager () | |
Protected Attributes | |
| ProviderPriorityColl | _providerPriorityColl |
| collection of execution providers ordered by priority | |
| ipUInt32 volatile | _nbPendingProviders |
| counter indicating number of pending providers | |
| bool volatile | _bTerminateRequested |
| boost::mutex | _mutex |
| mutex allowing to protect concurrent accesses to object | |
| boost::condition_variable | _condition |
| condition variable used to wake up execution threads | |
| bool | _bInit |
| object initialization flag | |
Class allowing to manager providers execution with respect to their priority.
| void ipsdk::core::ProviderManager::addProvider | ( | const ActionProviderPtr & | pActionProvider, |
| bool | bPushBack | ||
| ) |
insert a new action provider into providers collection (with respect to its priority)
| ipsdk::core::IPSDKCoreException | if isInit() == false |
| ipsdk::core::IPSDKCoreException | if pActionProvider.get() == 0 |
| ipsdk::core::IPSDKCoreException | if pActionProvider->isInit() == false |
| void ipsdk::core::ProviderManager::removeProvider | ( | const ActionProviderPtr & | pActionProvider | ) |
remove provider from providers collection
| ipsdk::core::IPSDKCoreException | if isInit() == false |
| void ipsdk::core::ProviderManager::askForNewAction | ( | ActionRequestPtr & | pActionRequest | ) |
ask new action for execution
| void ipsdk::core::ProviderManager::requestTermination | ( | ) |
method allowing to request termination of executions
this method wake up waiting threads
|
protected |
flag indicating whether termination has been requested for execution
1.8.14