44 Fatal(
"TEmulatedMapProxy",
"Class %s is not a map-type!",
fName.c_str());
53 Fatal(
"TEmulatedMapProxy",
"Class %s is not a map-type!",
fName.c_str());
74 return idx<(c->size()/
fValDiff) ? ((
char*)&(*c->begin())) + idx*
fValDiff : 0;
76 Fatal(
"TEmulatedMapProxy",
"At> Logic error - no proxy object set.");
87 Fatal(
"TEmulatedMapProxy",
"Size> Logic error - no proxy object set.");
94 Bool_t vsn3 =
b.GetInfo() &&
b.GetInfo()->GetOldVersion()<=3;
101 char* temp = (
char*)
At(0);
102 for ( idx = 0; idx < nElements; ++idx ) {
104 for ( loop=0; loop<2; loop++) {
111 switch(
int(
v->fKind) ) {
120 helper->
flt = float(f);
break;
128 helper->
dbl = double(f);
break;
132 Error(
"TEmulatedMapProxy",
"fType %d is not supported yet!\n",
v->fKind);
136 b.StreamObject(helper,
v->fType);
142 helper->
set(
b.ReadObjectAny(
v->fType));
162 char* temp = (
char*)
At(0);
163 for (
UInt_t loop, idx = 0; idx < nElements; ++idx ) {
165 for ( loop = 0; loop<2; ++loop ) {
172 switch(
int(
v->fKind) ) {
191 Error(
"TEmulatedMapProxy",
"fType %d is not supported yet!\n",
v->fKind);
195 b.StreamObject(i,
v->fType);
201 b.WriteObjectAny(i->
ptr(),
v->fType);
232 if ( nElements > 0 ) {
240 if (
b.IsReading() ) {
246 if ( nElements > 0 ) {
253 if ( nElements > 0 ) {
virtual void Streamer(TBuffer &refBuffer)
Streamer Function.
virtual TVirtualCollectionProxy * Generate() const
Virtual copy constructor.
void Fatal(const char *location, const char *msgfmt,...)
std::string fName
Name of the class being proxied.
void ReadMap(UInt_t nElements, TBuffer &b)
void write_tstring_pointer(TBuffer &b)
virtual UInt_t Size() const
Return the current size of the container.
Buffer base class used for serializing objects.
Streamer around an arbitrary STL like container, which implements basic container functionality...
virtual void ReadBuffer(TBuffer &buff, void *pObj)
Streamer around a map container.
void read_std_string(TBuffer &b)
void Error(const char *location, const char *msgfmt,...)
virtual void Resize(UInt_t n, Bool_t force_delete)
Resize the container.
int fValOffset
Offset from key to value (in maps)
TGenCollectionProxy * Initialize(Bool_t silent) const
Proxy initializer.
void read_std_string_pointer(TBuffer &b)
int fSTL_type
STL container type.
The ROOT global object gROOT contains a list of all defined classes.
int fValDiff
Offset between two consecutive value_types (memory layout).
virtual ~TEmulatedMapProxy()
void write_std_string_pointer(TBuffer &b)
virtual void SetOnFileClass(TClass *cl)
Value * fKey
Descriptor of the key_type.
Helper class to facilitate I/O.
EnvironBase_t * fEnv
Address of the currently proxied object.
you should not use this method at all Int_t Int_t Double_t Double_t Double_t Int_t Double_t Double_t Double_t Double_t b
TEmulatedMapProxy(const TEmulatedMapProxy ©)
void WriteMap(UInt_t nElements, TBuffer &b)
virtual void * At(UInt_t idx)
Return the address of the value at index 'idx'.
Small helper to describe the Value_type or the key_type of an STL container.
void read_tstring_pointer(Bool_t vsn3, TBuffer &b)
Value * fVal
Descriptor of the Value_type.