MCPcopy Create free account
hub / github.com/Nelarius/imnodes / load

Method load

example/save_load.cpp:149–181  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

147 }
148
149 void load()
150 {
151 // Load the internal imnodes state
152 ImNodes::LoadCurrentEditorStateFromIniFile("save_load.ini");
153
154 // Load our editor state into memory
155
156 std::fstream fin("save_load.bytes", std::ios_base::in | std::ios_base::binary);
157
158 if (!fin.is_open())
159 {
160 return;
161 }
162
163 // copy nodes into memory
164 size_t num_nodes;
165 fin.read(reinterpret_cast<char*>(&num_nodes), static_cast<std::streamsize>(sizeof(size_t)));
166 nodes_.resize(num_nodes);
167 fin.read(
168 reinterpret_cast<char*>(nodes_.data()),
169 static_cast<std::streamsize>(sizeof(Node) * num_nodes));
170
171 // copy links into memory
172 size_t num_links;
173 fin.read(reinterpret_cast<char*>(&num_links), static_cast<std::streamsize>(sizeof(size_t)));
174 links_.resize(num_links);
175 fin.read(
176 reinterpret_cast<char*>(links_.data()),
177 static_cast<std::streamsize>(sizeof(Link) * num_links));
178
179 // copy current_id into memory
180 fin.read(reinterpret_cast<char*>(&current_id_), static_cast<std::streamsize>(sizeof(int)));
181 }
182
183private:
184 std::vector<Node> nodes_;

Callers 1

NodeEditorInitializeFunction · 0.80

Calls 1

Tested by

no test coverage detected