@@ -14,6 +14,7 @@ limitations under the License. */
1414
1515#include " paddle/fluid/inference/io.h"
1616
17+ #include < algorithm>
1718#include < fstream>
1819#include " paddle/fluid/framework/block_desc.h"
1920#include " paddle/fluid/framework/feed_fetch_type.h"
@@ -27,14 +28,14 @@ namespace inference {
2728// linking the inference shared library.
2829void Init (bool init_p2p) { framework::InitDevices (init_p2p); }
2930
30- void ReadBinaryFile (const std::string& filename, std::string& contents) {
31+ void ReadBinaryFile (const std::string& filename, std::string* contents) {
3132 std::ifstream fin (filename, std::ios::in | std::ios::binary);
3233 PADDLE_ENFORCE (static_cast <bool >(fin), " Cannot open file %s" , filename);
3334 fin.seekg (0 , std::ios::end);
34- contents. clear ();
35- contents. resize (fin.tellg ());
35+ contents-> clear ();
36+ contents-> resize (fin.tellg ());
3637 fin.seekg (0 , std::ios::beg);
37- fin.read (&contents[ 0 ] , contents. size ());
38+ fin.read (&( contents-> at ( 0 )) , contents-> size ());
3839 fin.close ();
3940}
4041
@@ -47,7 +48,7 @@ bool IsPersistable(const framework::VarDesc* var) {
4748 return false ;
4849}
4950
50- void LoadPersistables (framework::Executor& executor, framework::Scope& scope,
51+ void LoadPersistables (framework::Executor* executor, framework::Scope* scope,
5152 const framework::ProgramDesc& main_program,
5253 const std::string& dirname,
5354 const std::string& param_filename) {
@@ -92,18 +93,18 @@ void LoadPersistables(framework::Executor& executor, framework::Scope& scope,
9293 op->CheckAttrs ();
9394 }
9495
95- executor. Run (*load_program, & scope, 0 , true , true );
96+ executor-> Run (*load_program, scope, 0 , true , true );
9697
9798 delete load_program;
9899}
99100
100- std::unique_ptr<framework::ProgramDesc> Load (framework::Executor& executor,
101- framework::Scope& scope,
101+ std::unique_ptr<framework::ProgramDesc> Load (framework::Executor* executor,
102+ framework::Scope* scope,
102103 const std::string& dirname) {
103104 std::string model_filename = dirname + " /__model__" ;
104105 std::string program_desc_str;
105106 VLOG (3 ) << " loading model from " << model_filename;
106- ReadBinaryFile (model_filename, program_desc_str);
107+ ReadBinaryFile (model_filename, & program_desc_str);
107108
108109 std::unique_ptr<framework::ProgramDesc> main_program (
109110 new framework::ProgramDesc (program_desc_str));
@@ -113,11 +114,11 @@ std::unique_ptr<framework::ProgramDesc> Load(framework::Executor& executor,
113114}
114115
115116std::unique_ptr<framework::ProgramDesc> Load (
116- framework::Executor& executor, framework::Scope& scope,
117+ framework::Executor* executor, framework::Scope* scope,
117118 const std::string& prog_filename, const std::string& param_filename) {
118119 std::string model_filename = prog_filename;
119120 std::string program_desc_str;
120- ReadBinaryFile (model_filename, program_desc_str);
121+ ReadBinaryFile (model_filename, & program_desc_str);
121122
122123 std::unique_ptr<framework::ProgramDesc> main_program (
123124 new framework::ProgramDesc (program_desc_str));
0 commit comments