Public Member Functions | Private Attributes | List of all members
prbt_hardware_support::AsyncRunPermittedTask Class Reference

An AsyncRunPermittedTask is represented by a task execution and a completion signalling. More...

#include <run_permitted_state_machine.h>

Public Member Functions

 AsyncRunPermittedTask (const TServiceCallFunc &operation, const std::function< void()> &finished_handler)
 
void execute ()
 Execute the task. More...
 
void signalCompletion ()
 Signal completion of the task execution. More...
 

Private Attributes

std::function< void()> finished_handler_
 
TServiceCallFunc operation_
 

Detailed Description

An AsyncRunPermittedTask is represented by a task execution and a completion signalling.

The separation of task execution and the completion signalling allows the task execution to be done asynchronously. Both functions have the signature

void()

.

Definition at line 60 of file run_permitted_state_machine.h.

Constructor & Destructor Documentation

◆ AsyncRunPermittedTask()

prbt_hardware_support::AsyncRunPermittedTask::AsyncRunPermittedTask ( const TServiceCallFunc operation,
const std::function< void()> &  finished_handler 
)
inline

Definition at line 63 of file run_permitted_state_machine.h.

Member Function Documentation

◆ execute()

void prbt_hardware_support::AsyncRunPermittedTask::execute ( )
inline

Execute the task.

Definition at line 71 of file run_permitted_state_machine.h.

◆ signalCompletion()

void prbt_hardware_support::AsyncRunPermittedTask::signalCompletion ( )
inline

Signal completion of the task execution.

Definition at line 82 of file run_permitted_state_machine.h.

Member Data Documentation

◆ finished_handler_

std::function<void()> prbt_hardware_support::AsyncRunPermittedTask::finished_handler_
private

Definition at line 89 of file run_permitted_state_machine.h.

◆ operation_

TServiceCallFunc prbt_hardware_support::AsyncRunPermittedTask::operation_
private

Definition at line 88 of file run_permitted_state_machine.h.


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


prbt_hardware_support
Author(s):
autogenerated on Mon Feb 28 2022 23:14:34