Skip to main content

nebula::exec::client::ExecutionClient

//Creating of Execution Client object
auto &execClient = nebula::exec::client::ExecutionClient::getInstance();

//Usage of Execution Client object to report execution status to EM
execClient.reportExecutionState(nebula::exec::client::ExecutionState::ESRunning);

class nebula::exec::client::ExecutionClient

This is a singleton type class of ExecutionClient and application can use it to connect to EM report there status.

Members

public ~ExecutionClient()

Destroy the ExecutionClient object.

public nebula::platform::osal::Result< nebula::platform::osal::SocketResult > reportExecutionState(ExecutionState state)

This method is to report execution state of application to EM. Applications should use this method, whenever status of application is changing.

  • Parameters

    • state The application state, to which application is moving in to. Below are possible Enum values can be send by applications. ExecutionState::ESRunning --> When application starts running. this should be sent when ever application started fully. ExecutionState::ESTerminating --> When application is going to terminate. After sending this, application should process only clearing section of a process. if application takes more time, then EM can kill the process
  • Returns nebula::platform::osal::Result<nebula::platform::osal::SocketResult> Result of reporting status. Returns OK on success otherwise NOK on error.

public inline static ExecutionClient&getInstance(const ApplicationType & appType)

Get the Instance object of ExecutionClient. This class provides required functionality for applications to connect to EM. Applications (launched by EM) should initialize this class with type of application it is (adaptive / ROS) so this method take care of respective steps.

  • Parameters

    • appType parameter indicates which type of application it is. below are possible values ApplicationType::APP_TYPE_ADAPTIVE --> Normal adaptive app. (default) no need to mention. ApplicationType::APP_TYPE_ROS --> ROS application ApplicationType::APP_TYPE_UNKNOWN --> Future purpose
  • Returns ExecutionClient& returns reference to object of ExecutionClient singleton class object.