OpenTTD Source 20260721-master-g25ec12c62d
SlGamelogRevision Class Reference
Inheritance diagram for SlGamelogRevision:
DefaultSaveLoadHandler< SlGamelogRevision, LoggedChange > SaveLoadHandler

Public Member Functions

void Save (LoggedChange *lc) const override
 Save the object to disk.
void Load (LoggedChange *lc) const override
 Load the object from disk.
void LoadCheck (LoggedChange *lc) const override
 Similar to load, but used only to validate savegames.
Public Member Functions inherited from DefaultSaveLoadHandler< SlGamelogRevision, LoggedChange >
SaveLoadTable GetDescription () const override
 Get the description of the fields in the savegame.
SaveLoadCompatTable GetCompatDescription () const override
 Get the pre-header description of the fields in the savegame.
virtual void FixPointers (LoggedChange *object) const
 A post-load callback to fix SaveLoadType::Reference integers into pointers.
Public Member Functions inherited from SaveLoadHandler
virtual ~SaveLoadHandler ()=default
 Ensure the destructor of the sub classes are called as well.
virtual void Save (void *object) const
 Save the object to disk.
virtual void Load (void *object) const
 Load the object from disk.
virtual void LoadCheck (void *object) const
 Similar to load, but used only to validate savegames.
virtual void FixPointers (void *object) const
 A post-load callback to fix SaveLoadType::Reference integers into pointers.
SaveLoadTable GetLoadDescription () const
 Get the description for how to load the chunk.

Static Public Attributes

static const size_t GAMELOG_REVISION_LENGTH = 15
 Length of the old revision text length.
static std::array< char, GAMELOG_REVISION_LENGTHrevision_text
 Temporary location to store the old revision text.
static const SaveLoad description []
static const SaveLoadCompatTable compat_description = _gamelog_revision_sl_compat

Additional Inherited Members

Data Fields inherited from SaveLoadHandler
std::optional< std::vector< SaveLoad > > load_description
 Description derived from savegame being loaded.

Detailed Description

Definition at line 45 of file gamelog_sl.cpp.

Member Function Documentation

◆ Load()

void SlGamelogRevision::Load ( LoggedChange * object) const
inlineoverridevirtual

Load the object from disk.

Parameters
objectThe object to load.

Reimplemented from DefaultSaveLoadHandler< SlGamelogRevision, LoggedChange >.

Definition at line 65 of file gamelog_sl.cpp.

References LoggedChange::ct, SaveLoadHandler::GetLoadDescription(), IsSavegameVersionBefore(), Revision, revision_text, SlObject(), StringGamelog, and StrMakeValid().

Referenced by LoadCheck().

◆ LoadCheck()

void SlGamelogRevision::LoadCheck ( LoggedChange * object) const
inlineoverridevirtual

Similar to load, but used only to validate savegames.

Parameters
objectThe object to load.

Reimplemented from DefaultSaveLoadHandler< SlGamelogRevision, LoggedChange >.

Definition at line 75 of file gamelog_sl.cpp.

References Load().

◆ Save()

void SlGamelogRevision::Save ( LoggedChange * object) const
inlineoverridevirtual

Save the object to disk.

Parameters
objectThe object to store.

Reimplemented from DefaultSaveLoadHandler< SlGamelogRevision, LoggedChange >.

Definition at line 59 of file gamelog_sl.cpp.

References LoggedChange::ct, DefaultSaveLoadHandler< SlGamelogRevision, LoggedChange >::GetDescription(), Revision, and SlObject().

Field Documentation

◆ compat_description

const SaveLoadCompatTable SlGamelogRevision::compat_description = _gamelog_revision_sl_compat
inlinestatic

Definition at line 57 of file gamelog_sl.cpp.

◆ description

const SaveLoad SlGamelogRevision::description[]
inlinestatic
Initial value:
= {
SLE_VARNAME(LoggedChangeRevision, newgrf, "revision.newgrf", VarTypes::U32),
SLE_VARNAME(LoggedChangeRevision, slver, "revision.slver", VarTypes::U16),
SLE_VARNAME(LoggedChangeRevision, modified, "revision.modified", VarTypes::U8),
}
static std::array< char, GAMELOG_REVISION_LENGTH > revision_text
Temporary location to store the old revision text.
static const size_t GAMELOG_REVISION_LENGTH
Length of the old revision text length.
#define SLEG_CONDARR(name, variable, type, length, from, to)
Storage of a global fixed-size array of SaveLoadType::Variable elements in some savegame versions.
Definition saveload.h:1125
#define SLE_CONDSSTRNAME(base, variable, name, type, from, to)
Storage of a std::string in some savegame versions.
Definition saveload.h:949
#define SLE_VARNAME(base, variable, name, type)
Storage of a variable in every version of a savegame.
Definition saveload.h:1006
@ StringGamelog
Saveload version: 314, GitHub pull request: 10801 Use std::string in gamelog.
Definition saveload.h:359
@ MinVersion
First savegame version.
Definition saveload.h:34
@ MaxVersion
Highest possible saveload version.
Definition saveload.h:424
A log entry for a change in OpenTTD version.
static constexpr VarType U16
Store a 16 bits unsigned int.
Definition saveload.h:729
static constexpr VarType U8
Store a 8 bits unsigned int.
Definition saveload.h:727
static constexpr VarType STR
Store string.
Definition saveload.h:735
static constexpr VarType U32
Store a 32 bits unsigned int.
Definition saveload.h:731

Definition at line 50 of file gamelog_sl.cpp.

◆ GAMELOG_REVISION_LENGTH

const size_t SlGamelogRevision::GAMELOG_REVISION_LENGTH = 15
static

Length of the old revision text length.

Definition at line 47 of file gamelog_sl.cpp.

◆ revision_text

std::array<char, GAMELOG_REVISION_LENGTH> SlGamelogRevision::revision_text
inlinestatic

Temporary location to store the old revision text.

Definition at line 48 of file gamelog_sl.cpp.

Referenced by Load().


The documentation for this class was generated from the following file: