metaforce/DataSpec/DNAMP1/EVNT.cpp

29 lines
940 B
C++
Raw Normal View History

2015-08-14 21:12:15 -07:00
#include "EVNT.hpp"
2018-12-07 21:30:43 -08:00
namespace DataSpec::DNAMP1 {
2015-08-14 21:12:15 -07:00
2018-02-21 23:24:51 -08:00
template <class Op>
2018-12-07 21:30:43 -08:00
void EVNT::Enumerate(typename Op::StreamT& s) {
2019-08-26 20:02:31 -07:00
Do<Op>(athena::io::PropId{"version"}, version, s);
2015-08-14 21:12:15 -07:00
2019-08-26 20:02:31 -07:00
DoSize<Op>(athena::io::PropId{"boolPOICount"}, boolPOICount, s);
Do<Op>(athena::io::PropId{"boolPOINodes"}, boolPOINodes, boolPOICount, s);
2015-08-14 21:12:15 -07:00
2019-08-26 20:02:31 -07:00
DoSize<Op>(athena::io::PropId{"int32POICount"}, int32POICount, s);
Do<Op>(athena::io::PropId{"int32POINodes"}, int32POINodes, int32POICount, s);
2015-08-14 21:12:15 -07:00
2019-08-26 20:02:31 -07:00
DoSize<Op>(athena::io::PropId{"particlePOICount"}, particlePOICount, s);
Do<Op>(athena::io::PropId{"particlePOINodes"}, particlePOINodes, particlePOICount, s);
2015-08-14 21:12:15 -07:00
2018-12-07 21:30:43 -08:00
if (version == 2) {
2019-08-26 20:02:31 -07:00
DoSize<Op>(athena::io::PropId{"soundPOICount"}, soundPOICount, s);
Do<Op>(athena::io::PropId{"soundPOINodes"}, soundPOINodes, soundPOICount, s);
2018-12-07 21:30:43 -08:00
}
2015-08-14 21:12:15 -07:00
}
2018-02-21 23:24:51 -08:00
AT_SPECIALIZE_DNA_YAML(EVNT)
2015-08-14 21:12:15 -07:00
2021-04-10 01:42:06 -07:00
std::string_view EVNT::DNAType() { return "DNAMP1::EVNT"sv; }
2016-01-18 21:32:34 -08:00
2018-12-07 21:30:43 -08:00
} // namespace DataSpec::DNAMP1