C++ Parameter class.
More...
#include "px4_param_macros.h"
#include <parameters/px4_parameters_public.h>
Go to the source code of this file.
|
#define | _DEFINE_SINGLE_PARAMETER(x) do_not_explicitly_use_this_namespace::PAIR(x); |
|
#define | _CALL_UPDATE(x) STRIP(x).update(); |
|
#define | _DEFINE_PARAMETER_UPDATE_METHOD(...) |
|
#define | DEFINE_PARAMETERS(...) |
|
#define | _DEFINE_PARAMETER_UPDATE_METHOD_CUSTOM_PARENT(parent_class, ...) |
|
#define | DEFINE_PARAMETERS_CUSTOM_PARENT(parent_class, ...) |
|
|
template<px4::params p> |
using | do_not_explicitly_use_this_namespace::ParamFloat = Param< float, p > |
|
template<px4::params p> |
using | do_not_explicitly_use_this_namespace::ParamInt = Param< int32_t, p > |
|
template<px4::params p> |
using | do_not_explicitly_use_this_namespace::ParamExtFloat = Param< float &, p > |
|
template<px4::params p> |
using | do_not_explicitly_use_this_namespace::ParamExtInt = Param< int32_t &, p > |
|
template<px4::params p> |
using | do_not_explicitly_use_this_namespace::ParamBool = Param< bool, p > |
|
§ _DEFINE_PARAMETER_UPDATE_METHOD
#define _DEFINE_PARAMETER_UPDATE_METHOD |
( |
|
... | ) |
|
Value:protected: \
void updateParamsImpl() final { \
APPLY_ALL(_CALL_UPDATE, __VA_ARGS__) \
} \
private:
§ _DEFINE_PARAMETER_UPDATE_METHOD_CUSTOM_PARENT
#define _DEFINE_PARAMETER_UPDATE_METHOD_CUSTOM_PARENT |
( |
|
parent_class, |
|
|
|
... |
|
) |
| |
Value:protected: \
void updateParamsImpl() override { \
parent_class::updateParamsImpl(); \
APPLY_ALL(_CALL_UPDATE, __VA_ARGS__) \
} \
private:
§ DEFINE_PARAMETERS
#define DEFINE_PARAMETERS |
( |
|
... | ) |
|
Value:APPLY_ALL(_DEFINE_SINGLE_PARAMETER, __VA_ARGS__) \
_DEFINE_PARAMETER_UPDATE_METHOD(__VA_ARGS__)
§ DEFINE_PARAMETERS_CUSTOM_PARENT
#define DEFINE_PARAMETERS_CUSTOM_PARENT |
( |
|
parent_class, |
|
|
|
... |
|
) |
| |
Value:APPLY_ALL(_DEFINE_SINGLE_PARAMETER, __VA_ARGS__) \
_DEFINE_PARAMETER_UPDATE_METHOD_CUSTOM_PARENT(parent_class, __VA_ARGS__)