 |
ATLAS Offline Software
|
Go to the documentation of this file.
25 #ifndef ROOTCONVERSIONS_TCONVERTERREGISTRY_H
26 #define ROOTCONVERSIONS_TCONVERTERREGISTRY_H
34 class TMemberStreamer;
98 const std::string& to_type,
99 TMemberStreamer* streamer);
102 const std::string& to_type)
const;
111 using Payload = std::pair<TVirtualConverter*, bool>;
113 using MapType = std::map<std::string, CheckSumMap>;
120 using lock_t = std::lock_guard<std::mutex>;
124 using SMapType = std::map<std::string, TMemberStreamer*>;
130 #endif // not ROOTCONVERSIONS_TCONVERTERREGISTRY_H
std::map< std::string, CheckSumMap > MapType
TMemberStreamer * GetStreamerConverter(const std::string &from_type, const std::string &to_type) const
~TConverterRegistry()
Destructor.
std::pair< TVirtualConverter *, bool > Payload
std::mutex fMutex
Protect access to the map.
Base class for converters for Root schema evolution.
std::lock_guard< std::mutex > lock_t
void AddStreamerConverter(const std::string &from_type, const std::string &to_type, TMemberStreamer *streamer)
std::map< UInt_t, Payload > CheckSumMap
Registry for Root converters.
MapType fMap
Map of registered converters.
void AddConverter(TVirtualConverter *conv)
Add a new converter to the registry.
static TConverterRegistry * Instance()
Return a pointer to the global registry instance.
TVirtualConverter * GetConverter(const char *name, int checksum) const
Look up a converter in the registry by name and checksum.
std::map< std::string, TMemberStreamer * > SMapType
Streamer converters.