30#ifndef ELECTRONEUM_MESSAGES_MAP_H
31#define ELECTRONEUM_MESSAGES_MAP_H
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);
60 static ::google::protobuf::Message *
get_message(
const std::string & msg_name);
65 template<
class t_message=google::protobuf::Message>
67 BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
72 template<
class t_message=google::protobuf::Message>
74 BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
79 return std::dynamic_pointer_cast<t_message>(in);
82 template<
class t_message=google::protobuf::Message>
84 BOOST_STATIC_ASSERT(boost::is_base_of<google::protobuf::Message, t_message>::value);
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)