IPSDK  4_1_0_2
IPSDK : Image Processing Software Development Kit
Public Member Functions | Protected Member Functions | Friends | List of all members
ipsdk::core::BaseActionRequest Class Referenceabstract

Base class for action requests. More...

#include <BaseActionRequest.h>

Inheritance diagram for ipsdk::core::BaseActionRequest:
ipsdk::core::LocalActionRequest ipsdk::core::PendingActionRequest ipsdk::core::RemoteActionRequest

Public Member Functions

virtual eActionRequestType getActionRequestType () const =0
 retrieve action request type
 
bool isInit () const
 retrieve object initialization flag
 
const GuidgetGuid () const
 retrieve guid associated to action request More...
 
eExecutionStatus getStatus () const
 check for request execution status More...
 
void addCompletionCB (const RequestCompletionCB &completionCB)
 add a completion callback associated to action request More...
 
ExecResult executeAction ()
 launch execution of associated action More...
 
void requestCancellation ()
 ask for cancellation of associated action More...
 
bool isCancellationRequested () const
 check whether a cancellation has been requested More...
 
void waitForCompletion ()
 method allowing to wait for execution end More...
 
ExecResult getActionResult () const
 retrieve action result More...
 
void clear ()
 clear of object data More...
 
Constructors and destructors
 BaseActionRequest ()
 
virtual ~BaseActionRequest ()=0
 

Protected Member Functions

BoolResult initBase (const Guid &requestGuid=Guid())
 base class initialization method More...
 
virtual ExecResult executeActionDerived ()=0
 launch execution of associated action in derived class More...
 
virtual void requestCancellationDerived ()=0
 ask for cancellation of associated action in derived class
 
virtual void clearDerived ()
 clear of object data in derived class
 
void setStatusToWaiting ()
 method allowing to set request status to waiting for execution More...
 
void notifyCompletion (const ExecResult &bResult)
 method used to notify of execution completion for request More...
 

Friends

class AskForRemoteAction
 
class BaseActionProvider
 

Detailed Description

Base class for action requests.

Author
E. Noirfalise
Date
2013/12/18

Member Function Documentation

◆ getGuid()

const Guid& ipsdk::core::BaseActionRequest::getGuid ( ) const

retrieve guid associated to action request

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == false

◆ getStatus()

eExecutionStatus ipsdk::core::BaseActionRequest::getStatus ( ) const

check for request execution status

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == false

◆ addCompletionCB()

void ipsdk::core::BaseActionRequest::addCompletionCB ( const RequestCompletionCB completionCB)

add a completion callback associated to action request

Exceptions
ipsdk::core::IPSDKCoreExceptionif (getStatus() != eExecutionStatus::eES_NotStarted && getStatus() != eExecutionStatus::eES_WaitingForExecution)

◆ executeAction()

ExecResult ipsdk::core::BaseActionRequest::executeAction ( )

launch execution of associated action

Exceptions
ipsdk::core::IPSDKCoreExceptionif getStatus() != eExecutionStatus::eES_NotStarted
Returns
execution result

◆ requestCancellation()

void ipsdk::core::BaseActionRequest::requestCancellation ( )

ask for cancellation of associated action

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == false

◆ isCancellationRequested()

bool ipsdk::core::BaseActionRequest::isCancellationRequested ( ) const

check whether a cancellation has been requested

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == false

◆ waitForCompletion()

void ipsdk::core::BaseActionRequest::waitForCompletion ( )

method allowing to wait for execution end

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == false

◆ getActionResult()

ExecResult ipsdk::core::BaseActionRequest::getActionResult ( ) const

retrieve action result

Exceptions
ipsdk::core::IPSDKCoreExceptionif getStatus() != eExecutionStatus::eES_Completed

◆ clear()

void ipsdk::core::BaseActionRequest::clear ( )

clear of object data

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == true && (getStatus() == eExecutionStatus::eES_Running || getStatus() == eExecutionStatus::eES_WaitingForExecution)

◆ initBase()

BoolResult ipsdk::core::BaseActionRequest::initBase ( const Guid requestGuid = Guid())
protected

base class initialization method

Exceptions
ipsdk::core::IPSDKCoreExceptionif isInit() == true && (getStatus() == eExecutionStatus::eES_Running || getStatus() == eExecutionStatus::eES_WaitingForExecution)
Returns
false in case of failure

◆ executeActionDerived()

virtual ExecResult ipsdk::core::BaseActionRequest::executeActionDerived ( )
protectedpure virtual

launch execution of associated action in derived class

Returns
execution result

Implemented in ipsdk::core::PendingActionRequest, ipsdk::core::RemoteActionRequest, and ipsdk::core::LocalActionRequest.

◆ setStatusToWaiting()

void ipsdk::core::BaseActionRequest::setStatusToWaiting ( )
protected

method allowing to set request status to waiting for execution

Exceptions
ipsdk::core::IPSDKCoreExceptionif getStatus() != eExecutionStatus::eES_NotStarted

◆ notifyCompletion()

void ipsdk::core::BaseActionRequest::notifyCompletion ( const ExecResult bResult)
protected

method used to notify of execution completion for request

Exceptions
ipsdk::core::IPSDKCoreExceptionif getStatus() != eExecutionStatus::eES_Running || getStatus() != eExecutionStatus::eES_WaitingForExecution

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