Files
Lioncache 28bb335317 General: Remove BasicTypes
Avoids dumping extremely common names into the global namespace.
2026-01-21 10:24:36 -05:00

34 lines
830 B
C++

#ifndef AXIO_CSERIALVERSION_H
#define AXIO_CSERIALVERSION_H
#include "Common/EGame.h"
#include <cstdint>
class IInputStream;
class IOutputStream;
class CSerialVersion
{
uint16_t mArchiveVersion = 0;
uint16_t mFileVersion = 0;
EGame mGame{};
public:
constexpr CSerialVersion() = default;
explicit constexpr CSerialVersion(uint16_t ArchiveVer, uint16_t FileVer, EGame Game)
: mArchiveVersion{ArchiveVer}, mFileVersion{FileVer}, mGame{Game} {}
explicit CSerialVersion(IInputStream& rInput);
void Read(IInputStream& rInput);
void Write(IOutputStream& rOutput) const;
uint16_t ArchiveVersion() const { return mArchiveVersion; }
uint16_t FileVersion() const { return mFileVersion; }
EGame Game() const { return mGame; }
};
#endif // AXIO_CSERIALVERSION_H