18 lines
599 B
C++
18 lines
599 B
C++
#include "core/system/demo.hpp"
|
|
|
|
#include <cstring> // for memcpy
|
|
|
|
// Desempaqueta un blob binari amb TOTAL_DEMO_DATA registres consecutius
|
|
// de DemoKeys (struct POD de 6 bytes). Si el blob no te la mida esperada,
|
|
// torna un vector buit perque el playback el detecti i no peti.
|
|
auto loadDemoDataFromBytes(const std::vector<uint8_t> &bytes) -> DemoData {
|
|
DemoData dd;
|
|
const size_t EXPECTED = sizeof(DemoKeys) * TOTAL_DEMO_DATA;
|
|
if (bytes.size() < EXPECTED) {
|
|
return dd;
|
|
}
|
|
dd.resize(TOTAL_DEMO_DATA);
|
|
std::memcpy(dd.data(), bytes.data(), EXPECTED);
|
|
return dd;
|
|
}
|