ROOT logo
ROOT » IO » IO » TEmulatedCollectionProxy

class TEmulatedCollectionProxy: public TGenCollectionProxy


 TEmulatedCollectionProxy

 Streamer around an arbitrary STL like container, which implements basic
 container functionality.

 Note:
 Although this class contains all the setup necessary to deal
 with maps, the map-like functionality is NOT supported.
 For optimization reasons this functionality is put into
 the class TEmulatedMapProxy.


Function Members (Methods)

public:
TEmulatedCollectionProxy(const TEmulatedCollectionProxy& copy)
TEmulatedCollectionProxy(const char* cl_name)
virtual~TEmulatedCollectionProxy()
virtual void*Allocate(UInt_t n, Bool_t forceDelete)
virtual void*At(UInt_t idx)
virtual voidClear(const char* opt = "")
virtual voidCommit(void* env)
virtual voidDeleteArray(void* p, Bool_t dtorOnly = kFALSE)
virtual voidDestructor(void* p, Bool_t dtorOnly = kFALSE)
virtual TVirtualCollectionProxy*Generate() const
virtual TClass*TGenCollectionProxy::GetCollectionClass()
virtual TClass*TGenCollectionProxy::GetOnFileClass() const
virtual EDataTypeTGenCollectionProxy::GetType()
virtual TClass*TGenCollectionProxy::GetValueClass()
virtual Bool_tTGenCollectionProxy::HasPointers() const
Bool_tIsValid() const
virtual void*New() const
virtual void*New(void* memory) const
virtual void*NewArray(Int_t nElements) const
virtual void*NewArray(Int_t nElements, void* memory) const
virtual voidTGenCollectionProxy::operator()(TBuffer& refBuffer, void* pObject)
char*TVirtualCollectionProxy::operator[](UInt_t idx) const
virtual voidTGenCollectionProxy::PopProxy()
virtual voidTGenCollectionProxy::PushProxy(void* objstart)
virtual voidResize(UInt_t n, Bool_t force_delete)
virtual voidTGenCollectionProxy::SetOnFileClass(TClass* cl)
virtual voidTGenCollectionProxy::SetValueClass(TClass* newcl)
virtual UInt_tSize() const
virtual UInt_tSizeof() const
virtual voidStreamer(TBuffer& refBuffer)
virtual voidStreamer(TBuffer& buff, void* pObj, int siz)
protected:
voidTGenCollectionProxy::CheckFunctions() const
virtual voidTGenCollectionProxy::DeleteItem(Bool_t force, void* ptr) const
voidExpand(UInt_t nCurr, UInt_t left)
TGenCollectionProxy*TGenCollectionProxy::Initialize() const
virtual TGenCollectionProxy*InitializeEx()
voidReadItems(int nElements, TBuffer& b)
voidShrink(UInt_t nCurr, UInt_t left, Bool_t force)
voidWriteItems(int nElements, TBuffer& b)

Data Members

public:
enum TGenCollectionProxy::[unnamed] { kBIT_ISSTRING
kBIT_ISTSTRING
kBOOL_t
};
protected:
TClassRefTVirtualCollectionProxy::fClass
TGenCollectionProxy::MethodTGenCollectionProxy::fClearMethod cache for container accessors: clear container
TGenCollectionProxy::MethodTGenCollectionProxy::fCollectMethod to collect objects from container
TGenCollectionProxy::MethodTGenCollectionProxy::fConstructContainer accessors: block construct
TGenCollectionProxy::Method0TGenCollectionProxy::fCreateEnvMethod to allocate an Environment holder.
TGenCollectionProxy::MethodTGenCollectionProxy::fDestructContainer accessors: block destruct
ROOT::TCollectionProxyInfo::EnvironBase*TGenCollectionProxy::fEnvAddress of the currently proxied object
TGenCollectionProxy::MethodTGenCollectionProxy::fFeedContainer accessors: block feed
TGenCollectionProxy::MethodTGenCollectionProxy::fFirstContainer accessors: generic iteration: first
TGenCollectionProxy::Value*TGenCollectionProxy::fKeyDescriptor of the key_type
stringTGenCollectionProxy::fNameName of the class being proxied.
TGenCollectionProxy::MethodTGenCollectionProxy::fNextContainer accessors: generic iteration: next
TClass*TGenCollectionProxy::fOnFileClassOn file class
Bool_tTGenCollectionProxy::fPointersFlag to indicate if containee has pointers (key or value)
vector<ROOT::TCollectionProxyInfo::EnvironBase*,allocator<ROOT::TCollectionProxyInfo::EnvironBase*> >TGenCollectionProxy::fProxyKeptOptimization: Keep proxies once they were created
vector<ROOT::TCollectionProxyInfo::EnvironBase*,allocator<ROOT::TCollectionProxyInfo::EnvironBase*> >TGenCollectionProxy::fProxyListStack of recursive proxies
TGenCollectionProxy::MethodTGenCollectionProxy::fResizeContainer accessors: resize container
intTGenCollectionProxy::fSTL_typeSTL container type
TGenCollectionProxy::MethodTGenCollectionProxy::fSizeContainer accessors: size of container
type_info&TGenCollectionProxy::fTypeinfoType information
TGenCollectionProxy::Value*TGenCollectionProxy::fValDescriptor of the Value_type
intTGenCollectionProxy::fValDiffOffset between two consecutive value_types (memory layout).
intTGenCollectionProxy::fValOffsetOffset from key to value (in maps)
TGenCollectionProxy::Value*TGenCollectionProxy::fValueDescriptor of the container value type

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TGenCollectionProxy* InitializeEx()
 Some hack to avoid const-ness
void ReadItems(int nElements, TBuffer& b)
 Object input streamer
void WriteItems(int nElements, TBuffer& b)
 Object output streamer
void Shrink(UInt_t nCurr, UInt_t left, Bool_t force)
 Shrink the container
void Expand(UInt_t nCurr, UInt_t left)
 Expand the container
TVirtualCollectionProxy* Generate() const
 Virtual copy constructor
TEmulatedCollectionProxy(const TEmulatedCollectionProxy& copy)
 Copy constructor
TEmulatedCollectionProxy(const char* cl_name)
 Initializing constructor
virtual ~TEmulatedCollectionProxy()
 Standard destructor
void* New() const
 Virtual constructor
{ return new Cont_t; }
void* New(void* memory) const
 Virtual in-place constructor
{ return new(memory) Cont_t; }
void* NewArray(Int_t nElements) const
 Virtual array constructor
{ return new Cont_t[nElements]; }
void* NewArray(Int_t nElements, void* memory) const
 Virtual in-place constructor
{ return new(memory) Cont_t[nElements]; }
void Destructor(void* p, Bool_t dtorOnly = kFALSE)
 Virtual destructor
void DeleteArray(void* p, Bool_t dtorOnly = kFALSE)
 Virtual array destructor
UInt_t Sizeof() const
 TVirtualCollectionProxy overload: Return the sizeof the collection object.
{ return sizeof(Cont_t); }
void * At(UInt_t idx)
 Return the address of the value at index 'idx'
void Clear(const char* opt = "")
 Clear the container
void Resize(UInt_t n, Bool_t force_delete)
 Resize the container
UInt_t Size() const
 Return the current size of the container
void* Allocate(UInt_t n, Bool_t forceDelete)
 Block allocation of containees
void Commit(void* env)
 Block commit of containees
void Streamer(TBuffer& refBuffer)
 Streamer for I/O handling
void Streamer(TBuffer& buff, void* pObj, int siz)
 Streamer I/O overload
Bool_t IsValid() const
 Check validity of the proxy itself