![]() |
VSM C++ SDK
Vehicle Specific Modules SDK
|
Helper class for defining custom callback creation functions which force several first arguments for the user callback. More...
#include <callback.h>
Public Types | |
using | Helper = callback_internal::Callback_forced_args_helper< Callable, void, Args...> |
Helper type. More... | |
using | Callback_ptr = typename Helper::template Callback_ptr< Forced_args_tuple > |
Resulted callback type. More... | |
Static Public Member Functions | |
static Callback_ptr | Create (Callable &&callable, Forced_args_tuple &&forced_args_tuple, Args &&...args) |
Create callback with forced first arguments. More... | |
Helper class for defining custom callback creation functions which force several first arguments for the user callback.
Callable | User provided callable object. |
Forced_args_tuple | std::tuple for enforced arguments. |
Args | User arguments for the callable. If the callable object is member function then the first user argument should be pointer (any smart pointer accepted) to the object instance. |
Usage example:
using ugcs::vsm::Callback_forced_args< Callable, Forced_args_tuple, Args >::Callback_ptr = typename Helper::template Callback_ptr<Forced_args_tuple> |
Resulted callback type.
using ugcs::vsm::Callback_forced_args< Callable, Forced_args_tuple, Args >::Helper = callback_internal::Callback_forced_args_helper<Callable, void, Args...> |
Helper type.
|
inlinestatic |
Create callback with forced first arguments.
callable | User provided callable object. Should be forwarded by std::forward(). |
forced_args_tuple | Tuple with first arguments values. Should be created by std::forward_as_tuple(). |
args | User provided arguments. Should be forwarded by std::forward(). |