OpenTTD Source: DefaultSaveLoadHandler< TImpl, TObject > Class Template Reference

OpenTTD Source 15.0-beta1

Public Member Functions
DefaultSaveLoadHandler< TImpl, TObject > Class Template Reference

Default handler for saving/loading an object to/from disk. More...

`#include <saveload.h>`

Inheritance diagram for DefaultSaveLoadHandler< TImpl, TObject >:

## Public Member Functions
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 | Save (TObject *object) const
void | Save (void *object) const override
| Save the object to disk.
virtual void | Load (TObject *object) const
void | Load (void *object) const override
| Load the object from disk.
virtual void | LoadCheck (TObject *object) const
void | LoadCheck (void *object) const override
| Similar to load, but used only to validate savegames.
virtual void | FixPointers (TObject *object) const
void | FixPointers (void *object) const override
| A post-load callback to fix SL_REF integers into pointers.
Public Member Functions inherited from SaveLoadHandler
SaveLoadTable | GetLoadDescription () const
| Get the description for how to load the chunk.

## Additional Inherited Members
Data Fields inherited from SaveLoadHandler
std::optional< std::vector< SaveLoad > > | load_description

## Detailed Description

template<class TImpl, class TObject>
class DefaultSaveLoadHandler< TImpl, TObject >

Default handler for saving/loading an object to/from disk.

This handles a few common things for handlers, meaning the actual handler needs less code.

Usage: class SlMine : public DefaultSaveLoadHandler<SlMine, MyObject> {}

Template Parameters

  TImpl | The class initializing this template.
  TObject | The class of the object using this SaveLoadHandler.

Definition at line 581 of file saveload.h.

## Member Function Documentation

## ◆ FixPointers() [1/2]

template<class TImpl , class TObject >

virtual void DefaultSaveLoadHandler< TImpl, TObject >::FixPointers | ( | TObject * | object | ) | const
| inlinevirtual

Definition at line 595 of file saveload.h.

## ◆ FixPointers() [2/2]

template<class TImpl , class TObject >

void DefaultSaveLoadHandler< TImpl, TObject >::FixPointers | ( | void * | object | ) | const
| inlineoverridevirtual

A post-load callback to fix SL_REF integers into pointers.

Parameters

  object | The object to fix.

Reimplemented from SaveLoadHandler.

Definition at line 596 of file saveload.h.

References DefaultSaveLoadHandler< TImpl, TObject >::FixPointers().

Referenced by DefaultSaveLoadHandler< TImpl, TObject >::FixPointers().

## ◆ GetCompatDescription()

template<class TImpl , class TObject >

SaveLoadCompatTable DefaultSaveLoadHandler< TImpl, TObject >::GetCompatDescription | ( |  | ) | const
| inlineoverridevirtual

Get the pre-header description of the fields in the savegame.

Implements SaveLoadHandler.

Definition at line 584 of file saveload.h.

## ◆ GetDescription()

template<class TImpl , class TObject >

SaveLoadTable DefaultSaveLoadHandler< TImpl, TObject >::GetDescription | ( |  | ) | const
| inlineoverridevirtual

Get the description of the fields in the savegame.

Implements SaveLoadHandler.

Reimplemented in SlCompanyOldAIBuildRec, and SlLinkgraphJobProxy.

Definition at line 583 of file saveload.h.

## ◆ Load() [1/2]

template<class TImpl , class TObject >

virtual void DefaultSaveLoadHandler< TImpl, TObject >::Load | ( | TObject * | object | ) | const
| inlinevirtual

Definition at line 589 of file saveload.h.

## ◆ Load() [2/2]

template<class TImpl , class TObject >

void DefaultSaveLoadHandler< TImpl, TObject >::Load | ( | void * | object | ) | const
| inlineoverridevirtual

Load the object from disk.

Parameters

  object | The object to load.

Reimplemented from SaveLoadHandler.

Definition at line 590 of file saveload.h.

References DefaultSaveLoadHandler< TImpl, TObject >::Load().

Referenced by DefaultSaveLoadHandler< TImpl, TObject >::Load().

## ◆ LoadCheck() [1/2]

template<class TImpl , class TObject >

virtual void DefaultSaveLoadHandler< TImpl, TObject >::LoadCheck | ( | TObject * | object | ) | const
| inlinevirtual

Definition at line 592 of file saveload.h.

## ◆ LoadCheck() [2/2]

template<class TImpl , class TObject >

void DefaultSaveLoadHandler< TImpl, TObject >::LoadCheck | ( | void * | object | ) | const
| inlineoverridevirtual

Similar to load, but used only to validate savegames.

Parameters

  object | The object to load.

Reimplemented from SaveLoadHandler.

Definition at line 593 of file saveload.h.

References DefaultSaveLoadHandler< TImpl, TObject >::LoadCheck().

Referenced by DefaultSaveLoadHandler< TImpl, TObject >::LoadCheck().

## ◆ Save() [1/2]

template<class TImpl , class TObject >

virtual void DefaultSaveLoadHandler< TImpl, TObject >::Save | ( | TObject * | object | ) | const
| inlinevirtual

Definition at line 586 of file saveload.h.

## ◆ Save() [2/2]

template<class TImpl , class TObject >

void DefaultSaveLoadHandler< TImpl, TObject >::Save | ( | void * | object | ) | const
| inlineoverridevirtual

Save the object to disk.

Parameters

  object | The object to store.

Reimplemented from SaveLoadHandler.

Definition at line 587 of file saveload.h.

References DefaultSaveLoadHandler< TImpl, TObject >::Save().

Referenced by DefaultSaveLoadHandler< TImpl, TObject >::Save().

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

- src/saveload/saveload.h