#ifndef __COMMON_CRSC_HPP__ #define __COMMON_CRSC_HPP__ #include "ParticleCommon.hpp" #include "PAK.hpp" #include "athena/FileWriter.hpp" #include "optional.hpp" namespace DataSpec { namespace DNAParticle { template struct CRSM : BigYAML { static const char* DNAType() { return "CRSM"; } const char* DNATypeV() const { return DNAType(); } std::unordered_map> x0_generators; std::unordered_map x10_sfx; std::unordered_map> x20_decals; float x30_RNGE; float x34_FOFF; void read(athena::io::YAMLDocReader& r); void write(athena::io::YAMLDocWriter& w) const; size_t binarySize(size_t __isz) const; void read(athena::io::IStreamReader& r); void write(athena::io::IStreamWriter& w) const; CRSM(); void gatherDependencies(std::vector&) const; }; template bool ExtractCRSM(PAKEntryReadStream& rs, const hecl::ProjectPath& outPath); template bool WriteCRSM(const CRSM& crsm, const hecl::ProjectPath& outPath); } } #endif // __COMMON_CRSC_HPP__