ATLAS Offline Software
TConverterStreamer.h
Go to the documentation of this file.
1 // This file's extension implies that it's C, but it's really -*- C++ -*-.
2 
3 /*
4  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
5 */
6 
7 // $Id: TConverterStreamer.h,v 1.3 2008-11-04 12:42:10 ssnyder Exp $
29 #ifndef ROOTCONVERSIONS_TCONVERTERSTREAMER_H
30 #define ROOTCONVERSIONS_TCONVERTERSTREAMER_H
31 
32 #include <map>
33 #include "TClassStreamer.h"
34 #include "TVirtualConverter.h"
35 
36 class TClass;
37 class TBuffer;
38 class TFile;
39 
45  : public TClassStreamer
46 {
47 public:
48  using Payload = std::pair<TVirtualConverter*, bool>;
49  using CheckSumMap = std::map<UInt_t, Payload>;
50 
56  TConverterStreamer (const CheckSumMap& convmap, TClass* cls);
57 
63  virtual void operator() (TBuffer& b, void* obj);
64 
65 
66 private:
76  void FindVersion(TBuffer& buf,
77  UInt_t& startpos,
78  UInt_t& bcnt,
79  Version_t& version);
80 
88  Version_t R__FindStreamerInfoVersion(const TClass* cl, UInt_t checksum);
89 
92 
94  TClass* fClass;
95 
98 
100  TFile* fLastFile;
101 };
102 
103 
104 #endif // not ROOTCONVERSIONS_TCONVERTERSTREAMER_H
105 
TConverterStreamer::CheckSumMap
std::map< UInt_t, Payload > CheckSumMap
Definition: TConverterStreamer.h:49
CaloClusterListBadChannel.cls
cls
Definition: CaloClusterListBadChannel.py:8
TConverterStreamer
Root streamer that calls our converter when reading in non-split mode.
Definition: TConverterStreamer.h:46
TConverterStreamer::fStreamerChecksum
UInt_t fStreamerChecksum
Cached checksum for the last object read.
Definition: TConverterStreamer.h:97
TVirtualConverter.h
Base class for Root converters.
TConverterStreamer::Payload
std::pair< TVirtualConverter *, bool > Payload
Definition: TConverterStreamer.h:48
TConverterStreamer::R__FindStreamerInfoVersion
Version_t R__FindStreamerInfoVersion(const TClass *cl, UInt_t checksum)
Translate a Root checksum to a class version number.
Definition: TConverterStreamer.cxx:158
TConverterStreamer::TConverterStreamer
TConverterStreamer(const CheckSumMap &convmap, TClass *cls)
Constructor.
Definition: TConverterStreamer.cxx:24
TConverterStreamer::FindVersion
void FindVersion(TBuffer &buf, UInt_t &startpos, UInt_t &bcnt, Version_t &version)
Read the initial byte count/version from an object.
Definition: TConverterStreamer.cxx:75
TConverterStreamer::fConvmap
const CheckSumMap & fConvmap
The checksum -> converter map passed to the constructor.
Definition: TConverterStreamer.h:91
TConverterStreamer::fClass
TClass * fClass
The transient class we're reading.
Definition: TConverterStreamer.h:94
plotBeamSpotMon.b
b
Definition: plotBeamSpotMon.py:76
get_generator_info.version
version
Definition: get_generator_info.py:33
TConverterStreamer::fLastFile
TFile * fLastFile
Cached file for the last object read.
Definition: TConverterStreamer.h:100
TConverterStreamer::operator()
virtual void operator()(TBuffer &b, void *obj)
Standard Root streamer interface.
Definition: TConverterStreamer.cxx:39
python.PyAthena.obj
obj
Definition: PyAthena.py:132
dq_make_web_display.cl
cl
print [x.__class__ for x in toList(dqregion.getSubRegions()) ]
Definition: dq_make_web_display.py:25