MCPcopy Create free account
hub / github.com/OpenTTD/OpenTTD / SerialiseNewsReference

Function SerialiseNewsReference

src/news_gui.cpp:920–933  ·  view source on GitHub ↗

* Encode a NewsReference for serialisation, e.g. for writing in the crash log. * @param reference The reference to serialise. * @return Reference serialised into a single uint32_t. */

Source from the content-addressed store, hash-verified

918 * @return Reference serialised into a single uint32_t.
919 */
920uint32_t SerialiseNewsReference(const NewsReference &reference)
921{
922 struct visitor {
923 uint32_t operator()(const std::monostate &) { return 0; }
924 uint32_t operator()(const TileIndex &t) { return t.base(); }
925 uint32_t operator()(const VehicleID v) { return v.base(); }
926 uint32_t operator()(const StationID s) { return s.base(); }
927 uint32_t operator()(const IndustryID i) { return i.base(); }
928 uint32_t operator()(const TownID t) { return t.base(); }
929 uint32_t operator()(const EngineID e) { return e.base(); }
930 };
931
932 return std::visit(visitor{}, reference);
933}
934
935/**
936 * Create a new custom news item.

Callers 1

SurveyRecentNewsFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected