MCPcopy Create free account
hub / github.com/clementgallet/libTAS / saveChains

Method saveChains

src/program/ui/PointerScanModel.cpp:184–202  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

182}
183
184int PointerScanModel::saveChains(const std::string& file)
185{
186 std::ofstream ofs(file, std::ios::binary | std::ios::trunc);
187
188 if (!ofs) return -1;
189
190 /* Save pointer size first, so that we don't read garbage data */
191 int ptr_size = sizeof(uintptr_t);
192 ofs.write(reinterpret_cast<char*>(&ptr_size), sizeof(ptr_size));
193
194 for (const auto& chain : pointer_chains) {
195 ofs.write(reinterpret_cast<const char*>(&chain.first), sizeof(chain.first));
196 int size = static_cast<int>(chain.second.size());
197 ofs.write(reinterpret_cast<char*>(&size), sizeof(size));
198 ofs.write(reinterpret_cast<const char*>(chain.second.data()), size*sizeof(int));
199 }
200
201 return 0;
202}
203
204int PointerScanModel::loadChains(const std::string& file)
205{

Callers 1

slotSaveMethod · 0.80

Calls 3

writeMethod · 0.45
sizeMethod · 0.45
dataMethod · 0.45

Tested by

no test coverage detected