MIRA
|
Contains the base interface of all Reflectors, Serializers, etc. More...
#include <string>
#include <unordered_map>
#include <boost/preprocessor/repetition.hpp>
#include <boost/mpl/bool.hpp>
#include <boost/type_traits/integral_constant.hpp>
#include <platform/Environment.h>
#include <platform/Typename.h>
#include <rpc/RPCMacros.h>
#include <serialization/GetterSetter.h>
#include <serialization/PropertyHint.h>
#include <serialization/ReflectControlFlags.h>
Go to the source code of this file.
Classes | |
struct | AcceptDesiredVersion |
Tag class used as parameter to ReflectorInterface::version() etc. More... | |
class | ReflectorInterface< Derived > |
This is the public interface of all reflectors that are able to visit a class' reflect() method. More... | |
struct | ReflectorInterface< Derived >::Tag |
struct | ReflectorInterface< Derived >::ReflectState |
If 'reflect barriers' are used, each separated reflection block within an object has a separate state (defined by the Reflector). More... | |
Namespaces | |
mira | |
specialize cv::DataType for our ImgPixel and inherit from cv::DataType<Vec> | |
mira::serialization | |
Macros | |
#define | MIRA_REFLECT_VERSION(reflector, versionNumber) reflector.version(versionNumber, this) |
Macro that should be used to specify the (reflected) version of the class. More... | |
#define | MIRA_REFLECT_REQUIRE_VERSION(reflector, versionNumber) reflector.requireVersion(versionNumber, this) |
Macro that should be used to specify the required (reflected) version of the class. More... | |
#define | MIRA_REFLECT_BASE(reflector, BaseClass) reflector.template reflectBase<BaseClass>(*this) |
Macro that can be used to reflect the base class easily. More... | |
#define | MIRA_REFLECT_BASE_NONINTRUSIVE(reflector, BaseClass, object) reflector.template reflectBase<BaseClass>(object) |
Macro that can be used to reflect the base class easily in a non-intrusive reflect() method. More... | |
#define | MIRA_REFLECT_BASE_IF_VERSION_ATLEAST(reflector, BaseClass, versionvar, minversion) |
Macro that can be used to selectively call BaseClass::reflect() directly or through reflectBase(), depending on version. More... | |
#define | MIRA_REFLECT_BASE_NONINTRUSIVE_IF_VERSION_ATLEAST(reflector, BaseClass, object, versionvar, minversion) |
Macro that can be used in non-intrusive reflection to selectively call reflect(reflector, (BaseClass&)object) directly or through reflectBase(), depending on version. More... | |
#define | MIRA_MEMBER_WITH_ID(reflector, name, id, var,...) |
Macro that should be used to reflect a member if a manually specified ID is used. More... | |
#define | MIRA_PROPERTY_WITH_ID(reflector, name, id, var,...) |
Methods for reflecting RPC (remote procedure call) methods | |
#define | RPC_METHODS_MAX_PARAMS 8 |
#define | RPCGEN_METHODS(z, n, _) |
#define | RPCGEN_METHODS_PARAMDESC(z, n, _) |
#define | RPCGEN_METHODS_PARAMDESCSAMPLE(z, n, _) |
#define | RPCGEN_METHODS_WRONG_ARGUMENT_NUMBER(z, n, _) |
#define | RPCGEN_METHODS_INVALID(z, n, _) |
Typedefs | |
typedef uint8 | VersionType |
typedef std::unordered_map < Typename, VersionType > | ClassVersionMap |
Contains the base interface of all Reflectors, Serializers, etc.
#define RPC_METHODS_MAX_PARAMS 8 |
#define RPCGEN_METHODS | ( | z, | |
n, | |||
_ | |||
) |
#define RPCGEN_METHODS_PARAMDESC | ( | z, | |
n, | |||
_ | |||
) |
#define RPCGEN_METHODS_PARAMDESCSAMPLE | ( | z, | |
n, | |||
_ | |||
) |
#define RPCGEN_METHODS_WRONG_ARGUMENT_NUMBER | ( | z, | |
n, | |||
_ | |||
) |
#define RPCGEN_METHODS_INVALID | ( | z, | |
n, | |||
_ | |||
) |
#define MIRA_PROPERTY_WITH_ID | ( | reflector, | |
name, | |||
id, | |||
var, | |||
... | |||
) |