summaryrefslogtreecommitdiff
path: root/include/sim_core.h
blob: 88533d05195ffb7b223e9e560f3ef64c81c36592 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#ifndef SIM_CORE_H
#define SIM_CORE_H

#include <type_traits>
#include "fixed_point.h"

struct SimState {
    fp_t stage_width;
    fp_t stage_height;
    fp_t camera_x;
    fp_t camera_y;
};

static_assert(std::is_trivially_copyable_v<SimState>, "SimState must be trivially copyable for rollback");
static_assert(sizeof(SimState) == 16, "SimState size changed unexpectedly");

#endif // !SIM_CORE_H