15 #ifndef __IPSDKCORE_THREADMANAGER_H__ 16 #define __IPSDKCORE_THREADMANAGER_H__ 21 #pragma warning (push) 22 #pragma warning (disable : 4275 4251) 26 #include <boost/thread/mutex.hpp> 27 #include <boost/noncopyable.hpp> 31 class BaseAsyncProcessor;
80 bool restartProvider(
const Guid& providerGuid);
86 bool removeProvider(
const Guid& providerGuid);
101 void threadFunction(
ipUInt32 threadIdx);
152 #pragma warning (pop) 154 #endif // __IPSDKCORE_THREADMANAGER_H__ std::map< ipUInt32, ThreadPtr > ThreadColl
collection of indexed threads
Definition: ThreadManagerTypes.h:40
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
boost::shared_ptr< ProviderManager > ProviderManagerPtr
shared pointer to provider manager
Definition: ThreadManagerTypes.h:55
Predefined types used for execution thread management.
ThreadColl _threadColl
collection of threads associated to object
Definition: ThreadManager.h:125
bool isInit() const
retrieve object initialization flag
Definition: ThreadManager.h:141
Definition of import/export macro for library.
#define IPSDKCORE_API
Import/Export macro for library IPSDKCore.
Definition: IPSDKCoreExports.h:27
ProviderMap _providerMap
global collection of execution providers ordered by guid
Definition: ThreadManager.h:119
Class encapsulating an auto initialized uuid.
Definition: Guid.h:27
Base class for asynchronous processors.
Definition: BaseAsyncProcessor.h:29
std::map< Guid, ActionProviderPtr > ProviderMap
collection of providers ordered by guid
Definition: ThreadManagerTypes.h:43
ProviderManagerPtr _pProviderManager
object used to manage provider execution priority
Definition: ThreadManager.h:122
bool volatile _bTerminateRequested
flag indicating whether termination has been requested for threads
Definition: ThreadManager.h:128
boost::mutex _mutex
mutex allowing to protect concurrent accesses to object
Definition: ThreadManager.h:131
boost::shared_ptr< BaseActionProvider > ActionProviderPtr
shared pointer to action provider
Definition: ActionProviderTypes.h:58
Singleton class used to manage execution threads.
Definition: ThreadManager.h:38
bool _bInit
object initialization flag
Definition: ThreadManager.h:134
uint32_t ipUInt32
Base types definition.
Definition: BaseTypes.h:53