--- /dev/null
+#include "Importer.h"
+
+#include <google/protobuf/io/coded_stream.h>
+#include <google/protobuf/io/zero_copy_stream_impl.h>
+#include <google/protobuf/text_format.h>
+
+bool from_txt(std::istream &is, ::caffe::NetParameter ¶m)
+{
+ google::protobuf::io::IstreamInputStream iis{&is};
+
+ if (!google::protobuf::TextFormat::Parse(&iis, ¶m))
+ {
+ return false;
+ }
+
+ return true;
+}
+
+bool from_bin(std::istream &is, ::caffe::NetParameter ¶m)
+{
+ google::protobuf::io::IstreamInputStream iis{&is};
+ google::protobuf::io::CodedInputStream cis{&iis};
+
+ if (!param.ParseFromCodedStream(&cis))
+ {
+ return false;
+ }
+
+ return true;
+}
--- /dev/null
+#ifndef __IMPORTER_H__
+#define __IMPORTER_H__
+
+#include <caffe/proto/caffe.pb.h>
+
+#include <istream>
+
+bool from_txt(std::istream &is, ::caffe::NetParameter ¶m);
+bool from_bin(std::istream &is, ::caffe::NetParameter ¶m);
+
+#endif // __IMPORTER_H__