30 #ifndef ELECTRONEUM_MESSAGES_MAP_H
31 #define ELECTRONEUM_MESSAGES_MAP_H
34 #include <type_traits>
40 #include <google/protobuf/stubs/common.h>
41 #include <google/protobuf/generated_message_util.h>
42 #include <google/protobuf/repeated_field.h>
43 #include <google/protobuf/extension_set.h>
44 #include <google/protobuf/generated_enum_reflection.h>
45 #include "google/protobuf/descriptor.pb.h"
47 #include "messages/messages.pb.h"
58 static ::google::protobuf::Message *
get_message(
int wire_number);
59 static ::google::protobuf::Message *
get_message(messages::MessageType);
65 template<
class t_message=google::protobuf::Message>
72 template<
class t_message=google::protobuf::Message>
79 return std::dynamic_pointer_cast<t_message>(in);
82 template<
class t_message=google::protobuf::Message>
89 return std::static_pointer_cast<t_message>(in);
static messages::MessageType get_message_wire_number()
::google::protobuf::Message * get_message(int wire_number)
std::shared_ptr< t_message > message_ptr_retype(std::shared_ptr< google::protobuf::Message > &in)
std::shared_ptr< t_message > message_ptr_retype_static(std::shared_ptr< google::protobuf::Message > &in)
const GenericPointer< typename T::ValueType > T2 value