1
0
mirror of https://github.com/vcmi/vcmi.git synced 2025-01-12 02:28:11 +02:00
vcmi/lib/serializer
Ivan Savenko 3dd4fa2528 Reduce usage of pointers to VLC entities
Final goal (of multiple PR's) is to remove all remaining pointers from
serializeable game state, and replace them with either identifiers or
with shared/unique pointers.

CGTownInstance::town and CGHeroInstance::type members have been removed.
Now this data is computed dynamically using subID member.

VLC entity of a town can now be accessed via following methods:
- getFactionID() returns ID of a faction
- getFaction() returns pointer to a faction
- getTown() returns pointer to a town

VLC entity of a hero can now be accessed via following methods:
- getHeroTypeID() returns ID of a hero
- getHeroClassID() returns ID of a hero class
- getHeroType() returns pointer to a hero
- getHeroClass() returns pointer to a hero class
2024-10-10 12:28:08 +00:00
..
BinaryDeserializer.cpp Added explicit indexing of type indexes for serialization 2024-08-26 20:06:35 +00:00
BinaryDeserializer.h Extracted handling of type ID's from serializer into a separate class 2024-08-26 19:48:46 +00:00
BinarySerializer.cpp Added explicit indexing of type indexes for serialization 2024-08-26 20:06:35 +00:00
BinarySerializer.h Extracted handling of type ID's from serializer into a separate class 2024-08-26 19:48:46 +00:00
CLoadFile.cpp Fixed deserialization of new artifacts (and possibly some other objects) 2024-07-29 18:19:15 +00:00
CLoadFile.h Use std::byte in serializer 2024-02-02 13:09:12 +02:00
CMemorySerializer.cpp Better handling of disconnects, code cleanup 2024-02-02 15:32:06 +02:00
CMemorySerializer.h Better handling of disconnects, code cleanup 2024-02-02 15:32:06 +02:00
Connection.cpp Replaced some of pointers to CPack's with references 2024-10-07 14:59:14 +00:00
Connection.h Replaced some of pointers to CPack's with references 2024-10-07 14:59:14 +00:00
CSaveFile.cpp Use std::byte in serializer 2024-02-02 13:09:12 +02:00
CSaveFile.h Use std::byte in serializer 2024-02-02 13:09:12 +02:00
CSerializer.cpp Reduce usage of pointers to VLC entities 2024-10-10 12:28:08 +00:00
CSerializer.h Fix SonarCloud issues 2024-03-02 14:08:03 +01:00
CTypeList.cpp Added explicit indexing of type indexes for serialization 2024-08-26 20:06:35 +00:00
CTypeList.h Added explicit indexing of type indexes for serialization 2024-08-26 20:06:35 +00:00
ESerializationVersion.h Reduce usage of pointers to VLC entities 2024-10-10 12:28:08 +00:00
JsonDeserializer.cpp Renamed JsonNode::meta to more logical modScope. Member is now private 2024-02-26 12:55:49 +02:00
JsonDeserializer.h Remove std::vector<boo> from Json Serializer, simplify affected code 2023-11-15 15:55:18 +02:00
JsonSerializeFormat.cpp Moved json files to new directory, split on per-class basis 2024-02-14 13:08:24 +02:00
JsonSerializeFormat.h Moved json files to new directory, split on per-class basis 2024-02-14 13:08:24 +02:00
JsonSerializer.cpp Reworked JsonNode constructors to more logical form 2024-02-26 12:55:49 +02:00
JsonSerializer.h Remove std::vector<boo> from Json Serializer, simplify affected code 2023-11-15 15:55:18 +02:00
JsonTreeSerializer.h vcmi: modernize lib/serializer 2023-02-12 21:23:00 +03:00
JsonUpdater.cpp Replace bonus string description with metastring that can properly 2024-04-09 16:13:30 +03:00
JsonUpdater.h Remove std::vector<boo> from Json Serializer, simplify affected code 2023-11-15 15:55:18 +02:00
RegisterTypes.h Implemented serialization of local player state in json form 2024-10-08 20:04:32 +00:00
Serializeable.h Added 'Serializeable' base class for classes serializeable by pointer 2024-05-16 18:40:59 +00:00
SerializerReflection.cpp Added GameSettings to gamestate, potentially allowing to define game 2024-09-05 15:16:27 +00:00
SerializerReflection.h Fix build 2024-08-26 20:06:36 +00:00