OpenTTD Source 20260917-master-gec444f7315
SlStationBase Class Reference

SaveLoad handler for the BaseStation, which all other stations / waypoints make use of. More...

Inheritance diagram for SlStationBase:
DefaultSaveLoadHandler< SlStationBase, BaseStation > SaveLoadHandler

Public Member Functions

void Save (BaseStation *bst) const override
 Save the object to disk.
void Load (BaseStation *bst) const override
 Load the object from disk.
void FixPointers (BaseStation *bst) const override
 A post-load callback to fix SaveLoadType::Reference integers into pointers.
Public Member Functions inherited from DefaultSaveLoadHandler< SlStationBase, BaseStation >
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 LoadCheck (BaseStation *object) const
 Similar to load, but used only to validate savegames.
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 SaveLoad description []
static const SaveLoadCompatTable compat_description = _station_base_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

SaveLoad handler for the BaseStation, which all other stations / waypoints make use of.

Definition at line 583 of file station_sl.cpp.

Member Function Documentation

◆ FixPointers()

void SlStationBase::FixPointers ( BaseStation * object) const
inlineoverridevirtual

A post-load callback to fix SaveLoadType::Reference integers into pointers.

Parameters
objectThe object to fix.

Reimplemented from DefaultSaveLoadHandler< SlStationBase, BaseStation >.

Definition at line 613 of file station_sl.cpp.

References DefaultSaveLoadHandler< SlStationBase, BaseStation >::GetDescription(), and SlObject().

◆ Load()

void SlStationBase::Load ( BaseStation * object) const
inlineoverridevirtual

Load the object from disk.

Parameters
objectThe object to load.

Reimplemented from DefaultSaveLoadHandler< SlStationBase, BaseStation >.

Definition at line 608 of file station_sl.cpp.

References SaveLoadHandler::GetLoadDescription(), and SlObject().

◆ Save()

void SlStationBase::Save ( BaseStation * object) const
inlineoverridevirtual

Save the object to disk.

Parameters
objectThe object to store.

Reimplemented from DefaultSaveLoadHandler< SlStationBase, BaseStation >.

Definition at line 603 of file station_sl.cpp.

References DefaultSaveLoadHandler< SlStationBase, BaseStation >::GetDescription(), and SlObject().

Field Documentation

◆ compat_description

const SaveLoadCompatTable SlStationBase::compat_description = _station_base_sl_compat
inlinestatic

Definition at line 601 of file station_sl.cpp.

◆ description

const SaveLoad SlStationBase::description[]
inlinestatic
Initial value:
= {
SaveLoad::Variable<VarFileType::U8>("waiting_triggers", SLE_OBJECT_ADDRESS(BaseStation, waiting_random_triggers)),
}
static uint8_t last_num_specs
Number of specs of the last loaded station.
#define SLE_OBJECT_ADDRESS(base, variable)
Macro to be able to pass the variable type and construct the SaveLoad::AddressFunction given a base c...
Definition saveload.h:754
#define SLE_GLOBAL_ADDRESS(variable)
Macro to be able to pass the variable type and construct the SaveLoad::AddressFunction given a global...
Definition saveload.h:761
@ MinVersion
First savegame version.
Definition saveload.h:37
@ SaveloadListLength
Saveload version: 293, GitHub pull request: 9374 Consistency in list length with SaveLoadType::Struc...
Definition saveload.h:337
@ AllowControlCode
Allow the special control codes.
Definition string_type.h:47
Base class for all station-ish types.
static SaveLoad StructList(std::string name, SaveLoadVersion from=SaveLoadVersion::MinVersion, SaveLoadVersion to=SaveLoadVersion::MaxVersion)
Storage of a list of structs, optionally in some savegame versions.
Definition saveload.h:1103
static SaveLoad Variable(std::string name, AddressFunction< T > address_func, SaveLoadVersion from=SaveLoadVersion::MinVersion, SaveLoadVersion to=SaveLoadVersion::MaxVersion, size_t extra=0)
Storage of a variable in some savegame versions.
Definition saveload.h:926
static SaveLoad Reference(std::string name, AddressFunction< T > address_func, SaveLoadVersion from=SaveLoadVersion::MinVersion, SaveLoadVersion to=SaveLoadVersion::MaxVersion)
Storage of a reference to a pool element in some savegame versions.
Definition saveload.h:951
static SaveLoad String(std::string name, AddressFunction< T > address_func, StringValidationSettings string_validation_settings={}, SaveLoadVersion from=SaveLoadVersion::MinVersion, SaveLoadVersion to=SaveLoadVersion::MaxVersion, size_t extra=0)
Storage of a string in some savegame versions.
Definition saveload.h:977

Definition at line 585 of file station_sl.cpp.


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