|
OpenTTD Source 20260711-master-g3fb3006dff
|
Handlers and description of chunk. More...
#include <saveload.h>
Public Member Functions | |
| ChunkHandler (uint32_t id, ChunkType type) | |
| virtual | ~ChunkHandler ()=default |
| Ensure the destructor of the sub classes are called as well. | |
| virtual void | Save () const |
| Save the chunk. | |
| virtual void | Load () const =0 |
| Load the chunk. | |
| virtual void | FixPointers () const |
| Fix the pointers. | |
| virtual void | LoadCheck (size_t len=0) const |
| Load the chunk for game preview. | |
| std::string | GetName () const |
Data Fields | |
| uint32_t | id |
| Unique ID (4 letters). | |
| ChunkType | type |
| Type of the chunk. | |
Handlers and description of chunk.
Definition at line 483 of file saveload.h.
|
inline |
Definition at line 487 of file saveload.h.
|
inlinevirtual |
Fix the pointers.
Pointers are saved using the index of the pointed object. On load, pointers are filled with indices and need to be fixed to point to the real object. Must be overridden if the chunk saves any pointer.
Reimplemented in BKORChunkHandler, CAPYChunkHandler, CHKPChunkHandler, CITYChunkHandler, DEPTChunkHandler, ERNWChunkHandler, INDYChunkHandler, LGRSChunkHandler, OBJSChunkHandler, ORDLChunkHandler, PLYRChunkHandler, ROADChunkHandler, STNNChunkHandler, STNSChunkHandler, and VEHSChunkHandler.
Definition at line 510 of file saveload.h.
|
inline |
Definition at line 519 of file saveload.h.
|
pure virtual |
Load the chunk.
Must be overridden.
Implemented in AIPLChunkHandler, ANITChunkHandler, BKORChunkHandler, CAPAChunkHandler, CAPRChunkHandler, CAPYChunkHandler, CHKPChunkHandler, CHTSChunkHandler, CITYChunkHandler, CMDLChunkHandler, CMPUChunkHandler, DATEChunkHandler, DEPTChunkHandler, ECMYChunkHandler, EIDSChunkHandler, ENGNChunkHandler, ENGSChunkHandler, ERNWChunkHandler, GLOGChunkHandler, GOALChunkHandler, GRPSChunkHandler, GSDTChunkHandler, GSTRChunkHandler, IBLDChunkHandler, INDYChunkHandler, ITBLChunkHandler, LEAEChunkHandler, LEATChunkHandler, LGRJChunkHandler, LGRPChunkHandler, LGRSChunkHandler, M3HIChunkHandler, M3LOChunkHandler, MAP2ChunkHandler, MAP5ChunkHandler, MAP7ChunkHandler, MAP8ChunkHandler, MAPEChunkHandler, MAPHChunkHandler, MAPOChunkHandler, MAPSChunkHandler, MAPTChunkHandler, NAMEChunkHandler, NewGRFMappingChunkHandler, NGRFChunkHandler, OBJSChunkHandler, OPTSChunkHandler, ORDLChunkHandler, ORDRChunkHandler, PATSChunkHandler, PLYRChunkHandler, PRICChunkHandler, PSACChunkHandler, RAILChunkHandler, ROADChunkHandler, ROTTChunkHandler, SIGNChunkHandler, SRNDChunkHandler, STNNChunkHandler, STNSChunkHandler, STPAChunkHandler, STPEChunkHandler, SUBSChunkHandler, VEHSChunkHandler, VIEWChunkHandler, and WaterRegionChunkHandler.
Referenced by SlLoadChunk().
|
virtual |
Load the chunk for game preview.
Default implementation just skips the data.
| len | Number of bytes to skip. |
Reimplemented in DATEChunkHandler, GLOGChunkHandler, MAPSChunkHandler, NGRFChunkHandler, PATSChunkHandler, and PLYRChunkHandler.
Definition at line 2147 of file saveload.cpp.
References _sl, Array, Riff, SlSkipArray(), SlSkipBytes(), SlTableHeader(), SparseArray, SparseTable, and Table.
Referenced by SlLoadCheckChunk().
|
inlinevirtual |
Save the chunk.
Must be overridden, unless Chunk type is ChunkType::ReadOnly.
Reimplemented in AIPLChunkHandler, ANITChunkHandler, BKORChunkHandler, CAPAChunkHandler, CAPYChunkHandler, CHTSChunkHandler, CITYChunkHandler, CMDLChunkHandler, CMPUChunkHandler, DATEChunkHandler, DEPTChunkHandler, ECMYChunkHandler, EIDSChunkHandler, ENGNChunkHandler, ERNWChunkHandler, GLOGChunkHandler, GOALChunkHandler, GRPSChunkHandler, GSDTChunkHandler, GSTRChunkHandler, IBLDChunkHandler, INDYChunkHandler, ITBLChunkHandler, LEAEChunkHandler, LEATChunkHandler, LGRJChunkHandler, LGRPChunkHandler, LGRSChunkHandler, M3HIChunkHandler, M3LOChunkHandler, MAP2ChunkHandler, MAP5ChunkHandler, MAP7ChunkHandler, MAP8ChunkHandler, MAPEChunkHandler, MAPHChunkHandler, MAPOChunkHandler, MAPSChunkHandler, MAPTChunkHandler, NewGRFMappingChunkHandler, NGRFChunkHandler, OBJSChunkHandler, ORDLChunkHandler, PATSChunkHandler, PLYRChunkHandler, PSACChunkHandler, RAILChunkHandler, ROADChunkHandler, ROTTChunkHandler, SIGNChunkHandler, SRNDChunkHandler, STNNChunkHandler, STPAChunkHandler, STPEChunkHandler, SUBSChunkHandler, VEHSChunkHandler, and VIEWChunkHandler.
Definition at line 496 of file saveload.h.
Referenced by SlSaveChunk().
| uint32_t ChunkHandler::id |
| ChunkType ChunkHandler::type |
Type of the chunk.
Definition at line 485 of file saveload.h.
Referenced by SlSaveChunk().