123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- #ifndef __PROTO_TOOL_H
- #define __PROTO_TOOL_H
- #include <istream>
- #include <google/protobuf/message.h>
- class proto_tool {
- public:
- // 必须关闭拷贝构造和赋值构造,只能通过 get_instance 函数来进行操作唯一的实例。
- proto_tool(const proto_tool&)=delete;
- proto_tool& operator =(const proto_tool&)= delete;
- ~proto_tool()=default;
- private:
- // 父类的构造函数必须保护,子类的构造函数必须私有。
- proto_tool()=default;
- public:
- //读取protobuf 配置文件,转化为protobuf参数形式
- //input: prototxt_path :prototxt文件路径
- //ouput: parameter: protobuf参数,这里是消息基类,实际调用时传入对应的子类即可。
- static bool read_proto_param(std::string prototxt_path, ::google::protobuf::Message& protobuf_parameter);
- static bool write_proto_param(std::string prototxt_path, ::google::protobuf::Message& protobuf_parameter);
- };
- #endif //__PROTO_TOOL_H
|