VSM C++ SDK
Vehicle Specific Modules SDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
ugcs::vsm::Vehicle_request_spec< Payload > Class Template Reference

Vehicle request with specific payload. More...

#include <vehicle_request.h>

Inheritance diagram for ugcs::vsm::Vehicle_request_spec< Payload >:
ugcs::vsm::Vehicle_request

Classes

class  Handle
 Handle of a specific vehicle request. More...
 

Public Types

typedef std::shared_ptr
< Vehicle_request_spec
Ptr
 Pointer type.
 
typedef std::weak_ptr
< Vehicle_request_spec
Weak_ptr
 Pointer type.
 
- Public Types inherited from ugcs::vsm::Vehicle_request
enum  Result { Result::OK, Result::NOK }
 Request completion result. More...
 
typedef std::shared_ptr
< Vehicle_request
Ptr
 Pointer type.
 
typedef std::weak_ptr
< Vehicle_request
Weak_ptr
 Pointer type.
 
typedef Callback_proxy< void,
Result, std::string > 
Completion_handler
 Completion handler type of the request. More...
 

Public Member Functions

template<typename... Args>
 Vehicle_request_spec (Completion_handler completion_handler, Request_completion_context::Ptr completion_ctx, Args &&...args)
 Construct vehicle request with specific payload. More...
 
- Public Member Functions inherited from ugcs::vsm::Vehicle_request
 Vehicle_request (Completion_handler completion_handler, Request_completion_context::Ptr completion_ctx)
 Construct base request instance. More...
 
virtual ~Vehicle_request ()
 Make sure class is polymorphic. More...
 
void Set_completion_result (Result result, const std::string &)
 Set completion result to be used when Complete method is called. More...
 
void Complete ()
 Should be called when vehicle request is completed by the user. More...
 
void Abort ()
 Abort the request. More...
 
Result Get_completion_result ()
 Get current completion result. More...
 
bool Is_completed () const
 Check if the request was completed. More...
 
void Add_ref ()
 Add reference from user handle. More...
 
void Release_ref ()
 Release reference from user handle. More...
 

Static Public Member Functions

template<typename... Args>
static Ptr Create (Args &&...args)
 Create an instance. More...
 
- Static Public Member Functions inherited from ugcs::vsm::Vehicle_request
template<typename... Args>
static Ptr Create (Args &&...args)
 Create an instance. More...
 

Public Attributes

Payload payload
 Specific payload of the request. More...
 

Detailed Description

template<class Payload>
class ugcs::vsm::Vehicle_request_spec< Payload >

Vehicle request with specific payload.

Constructor & Destructor Documentation

template<class Payload >
template<typename... Args>
ugcs::vsm::Vehicle_request_spec< Payload >::Vehicle_request_spec ( Completion_handler  completion_handler,
Request_completion_context::Ptr  completion_ctx,
Args &&...  args 
)
inline

Construct vehicle request with specific payload.

Template arguments:

  • Args Arguments passed to payload constructor.

Member Function Documentation

template<class Payload >
template<typename... Args>
static Ptr ugcs::vsm::Vehicle_request_spec< Payload >::Create ( Args &&...  args)
inlinestatic

Create an instance.

Member Data Documentation

template<class Payload >
Payload ugcs::vsm::Vehicle_request_spec< Payload >::payload

Specific payload of the request.


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