OpenTTD Source  20240919-master-gdf0233f4c2
SlLinkgraphJobProxy Class Reference

Proxy to reuse LinkGraph to save/load a LinkGraphJob. More...

Inheritance diagram for SlLinkgraphJobProxy:
DefaultSaveLoadHandler< SlLinkgraphJobProxy, LinkGraphJob > SaveLoadHandler

Public Member Functions

SaveLoadTable GetDescription () const override
 Get the description of the fields in the savegame.
 
void Save (LinkGraphJob *lgj) const override
 
void Load (LinkGraphJob *lgj) const override
 
- Public Member Functions inherited from DefaultSaveLoadHandler< SlLinkgraphJobProxy, LinkGraphJob >
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 ([[maybe_unused]] LinkGraphJob *object) const
 
void Save (void *object) const override
 
virtual void Load ([[maybe_unused]] LinkGraphJob *object) const
 
void Load (void *object) const override
 
virtual void LoadCheck ([[maybe_unused]] LinkGraphJob *object) const
 
void LoadCheck (void *object) const override
 
virtual void FixPointers ([[maybe_unused]] LinkGraphJob *object) const
 
void FixPointers (void *object) const override
 
- Public Member Functions inherited from SaveLoadHandler
virtual void Save ([[maybe_unused]] void *object) const
 Save the object to disk. More...
 
virtual void Load ([[maybe_unused]] void *object) const
 Load the object from disk. More...
 
virtual void LoadCheck ([[maybe_unused]] void *object) const
 Similar to load, but used only to validate savegames. More...
 
virtual void FixPointers ([[maybe_unused]] void *object) const
 A post-load callback to fix SL_REF integers into pointers. More...
 
virtual SaveLoadCompatTable GetCompatDescription () const =0
 Get the pre-header description of the fields in the savegame.
 
SaveLoadTable GetLoadDescription () const
 Get the description for how to load the chunk. More...
 

Static Public Attributes

static const SaveLoad description [] = {{}}
 
const static SaveLoadCompatTable compat_description = _linkgraph_sl_compat
 

Additional Inherited Members

- Data Fields inherited from SaveLoadHandler
std::optional< std::vector< SaveLoad > > load_description
 

Detailed Description

Proxy to reuse LinkGraph to save/load a LinkGraphJob.

One of the members of a LinkGraphJob is a LinkGraph, but SLEG_STRUCT() doesn't allow us to select a member. So instead, we add a bit of glue to accept a LinkGraphJob, get the LinkGraph, and use that to call the save/load routines for a regular LinkGraph.

Definition at line 154 of file linkgraph_sl.cpp.


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