IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
SingleActionProvider.h
1 // SingleActionProvider.h:
3 // -----------------------
4 //
14 
15 #ifndef __IPSDKCORE_SINGLEACTIONPROVIDER_H__
16 #define __IPSDKCORE_SINGLEACTIONPROVIDER_H__
17 
18 // suppression warnings
19 // warning C4251: 'ipsdk::core::SingleActionProvider::_pAction' : class 'boost::shared_ptr<T>' needs to have dll-interface to be used by clients of class 'ipsdk::core::SingleActionProvider'
20 #pragma warning (push)
21 #pragma warning (disable : 4251)
22 
23 #include <IPSDKCore/Processing/ActionProvider/BaseActionProvider.h>
24 #include <IPSDKCore/Processing/Action/BaseAction.h>
25 
26 namespace ipsdk {
27 namespace core {
28 
31 
33 {
34 public:
40 
41 // methods
42 public:
47  BoolResult init(const ActionPtr& pAction);
48 
51  const BaseAction& getAction() const;
52 
53 protected:
60  QueryResult queryNextAction(const BaseRequestOrigin& requestOrigin,
61  ActionRequestPtr& pActionRequest,
62  bool& bProcessCompletionCheck,
63  SerializationObjectPtr& pCbAdditionalData);
64 
67  bool hasPendingAction() const;
68 
70  void clearDerived();
71 
72 // attributes
73 protected:
76 
79 };
80 
83 
84 } // end of namespace core
85 } // end of namespace ipsdk
86 
87 #pragma warning (pop)
88 
89 #endif // __IPSDKCORE_SINGLEACTIONPROVIDER_H__
Main namespace for IPSDK library.
Definition: AlgorithmFunctionEfficiency.h:22
boost::shared_ptr< BaseAction > ActionPtr
shared pointer to BaseAction
Definition: ActionTypes.h:54
Base class for action providers.
Definition: BaseActionProvider.h:54
#define IPSDKCORE_API
Import/Export macro for library IPSDKCore.
Definition: IPSDKCoreExports.h:27
Class allowing to provide a single action.
Definition: SingleActionProvider.h:32
bool _bDispatched
flag indicating whether action has already been retrieved
Definition: SingleActionProvider.h:78
boost::shared_ptr< BaseActionRequest > ActionRequestPtr
shared pointer for action requests
Definition: ActionRequestTypes.h:52
boost::shared_ptr< BaseSerializationObject > SerializationObjectPtr
shared pointer to a base serialization object
Definition: SerializationTypes.h:23
Base class for request origin description.
Definition: BaseRequestOrigin.h:28
ActionPtr _pAction
single action associated to provider
Definition: SingleActionProvider.h:75
Base class for library actions.
Definition: BaseAction.h:43