ROOT » IO » IO » TEmulatedCollectionProxy

class TEmulatedCollectionProxy: public TGenCollectionProxy


 TEmulatedCollectionProxy

 Streamer around an arbitrary container, which implements basic
 functionality and iteration.

 In particular this is used to implement splitting and abstract
 element access of any container. Access to compiled code is necessary
 to implement the abstract iteration sequence and functionality like
 size(), clear(), resize(). resize() may be a void operation.


Function Members (Methods)

public:
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) const
virtual voidDestructor(void* p, Bool_t dtorOnly = kFALSE) const
virtual TVirtualCollectionProxy*Generate() const
virtual TClass*TGenCollectionProxy::GetCollectionClass() const
virtual Int_tTGenCollectionProxy::GetCollectionType() const
virtual TStreamerInfoActions::TActionSequence*TGenCollectionProxy::GetConversionReadMemberWiseActions(TClass* oldClass, Int_t version)
virtual TVirtualCollectionProxy::CopyIterator_tTGenCollectionProxy::GetFunctionCopyIterator(Bool_t read = kTRUE)
virtual TVirtualCollectionProxy::CreateIterators_tTGenCollectionProxy::GetFunctionCreateIterators(Bool_t read = kTRUE)
virtual TVirtualCollectionProxy::DeleteIterator_tTGenCollectionProxy::GetFunctionDeleteIterator(Bool_t read = kTRUE)
virtual TVirtualCollectionProxy::DeleteTwoIterators_tTGenCollectionProxy::GetFunctionDeleteTwoIterators(Bool_t read = kTRUE)
virtual TVirtualCollectionProxy::Next_tTGenCollectionProxy::GetFunctionNext(Bool_t read = kTRUE)
virtual ULong_tTGenCollectionProxy::GetIncrement() const
virtual TClass*TGenCollectionProxy::GetOnFileClass() const
virtual Int_tTVirtualCollectionProxy::GetProperties() const
virtual TStreamerInfoActions::TActionSequence*TGenCollectionProxy::GetReadMemberWiseActions(Int_t version)
virtual EDataTypeTGenCollectionProxy::GetType() const
virtual TClass*TGenCollectionProxy::GetValueClass() const
virtual TStreamerInfoActions::TActionSequence*TGenCollectionProxy::GetWriteMemberWiseActions()
virtual Bool_tTGenCollectionProxy::HasPointers() const
virtual voidInsert(const void* data, void* container, size_t size)
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 voidReadBuffer(TBuffer& buff, void* pObj)
virtual voidReadBuffer(TBuffer& buff, void* pObj, const TClass* onfile)
virtual voidResize(UInt_t n, Bool_t force_delete)
virtual voidTGenCollectionProxy::SetOnFileClass(TClass* cl)
virtual UInt_tSize() const
virtual UInt_tSizeof() const
virtual voidStreamer(TBuffer& refBuffer)
virtual voidStreamer(TBuffer& buff, void* pObj, int siz)
TEmulatedCollectionProxy(const TEmulatedCollectionProxy& copy)
TEmulatedCollectionProxy(const char* cl_name, Bool_t silent)
protected:
voidTGenCollectionProxy::CheckFunctions() const
virtual voidTGenCollectionProxy::DeleteItem(Bool_t force, void* ptr) const
voidExpand(UInt_t nCurr, UInt_t left)
TGenCollectionProxy*TGenCollectionProxy::Initialize(Bool_t silent) const
virtual TGenCollectionProxy*InitializeEx(Bool_t silent)
voidReadItems(int nElements, TBuffer& b)
voidShrink(UInt_t nCurr, UInt_t left, Bool_t force)
virtual voidTGenCollectionProxy::UpdateValueClass(const TClass* oldcl, TClass* newcl)
voidWriteItems(int nElements, TBuffer& b)

Data Members

protected:
TClassRefTVirtualCollectionProxy::fClass
TGenCollectionProxy::MethodTGenCollectionProxy::fClearMethod cache for container accessors: clear container
TGenCollectionProxy::Collectfunc_tTGenCollectionProxy::fCollectMethod to collect objects from container
TGenCollectionProxy::ArrIterfunc_tTGenCollectionProxy::fConstructContainer accessors: block construct
map<string,TObjArray*>*TGenCollectionProxy::fConversionReadMemberWiseArray of bundle of TStreamerInfoActions to stream out (read) derived from another class.
TGenCollectionProxy::Method0TGenCollectionProxy::fCreateEnvMethod to allocate an Environment holder.
TGenCollectionProxy::Sizing_tTGenCollectionProxy::fDestructContainer accessors: block destruct
TGenCollectionProxy::EnvironBase_t*TGenCollectionProxy::fEnvAddress of the currently proxied object
TGenCollectionProxy::Feedfunc_tTGenCollectionProxy::fFeedContainer accessors: block feed
TGenCollectionProxy::MethodTGenCollectionProxy::fFirstContainer accessors: generic iteration: first
TVirtualCollectionProxy::CopyIterator_tTGenCollectionProxy::fFunctionCopyIterator
TVirtualCollectionProxy::CreateIterators_tTGenCollectionProxy::fFunctionCreateIterators
TVirtualCollectionProxy::DeleteIterator_tTGenCollectionProxy::fFunctionDeleteIterator
TVirtualCollectionProxy::DeleteTwoIterators_tTGenCollectionProxy::fFunctionDeleteTwoIterators
TVirtualCollectionProxy::Next_tTGenCollectionProxy::fFunctionNextIterator
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)
UInt_tTVirtualCollectionProxy::fProperties
TGenCollectionProxy::Proxies_tTGenCollectionProxy::fProxyKeptOptimization: Keep proxies once they were created
TGenCollectionProxy::Proxies_tTGenCollectionProxy::fProxyListStack of recursive proxies
TObjArray*TGenCollectionProxy::fReadMemberWiseArray of bundle of TStreamerInfoActions to stream out (read)
TGenCollectionProxy::Sizing_tTGenCollectionProxy::fResizeContainer accessors: resize container
intTGenCollectionProxy::fSTL_typeSTL container type
TGenCollectionProxy::MethodTGenCollectionProxy::fSizeContainer accessors: size of container
TGenCollectionProxy::Staged_tTGenCollectionProxy::fStagedOptimization: Keep staged array once they were created
TGenCollectionProxy::Info_tTGenCollectionProxy::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)
atomic<TGenCollectionProxy::Value*>TGenCollectionProxy::fValueDescriptor of the container value type
TStreamerInfoActions::TActionSequence*TGenCollectionProxy::fWriteMemberWise

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TEmulatedCollectionProxy(const TEmulatedCollectionProxy& copy)
 Build a Streamer for an emulated vector whose type is 'name'.
TEmulatedCollectionProxy(const char* cl_name, Bool_t silent)
 Build a Streamer for a collection whose type is described by 'collectionClass'.
~TEmulatedCollectionProxy()
 Standard destructor
TVirtualCollectionProxy* Generate() const
 Virtual copy constructor
void Destructor(void* p, Bool_t dtorOnly = kFALSE) const
 Virtual destructor
void DeleteArray(void* p, Bool_t dtorOnly = kFALSE) const
 Virtual array destructor
TGenCollectionProxy * InitializeEx(Bool_t silent)
 Proxy initializer
Bool_t IsValid() const
 Return true if the collection proxy was well initialized.
UInt_t Size() const
 Return the current size of the container
void Clear(const char* opt = "")
 Clear the emulated collection.
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
void Resize(UInt_t n, Bool_t force_delete)
 Resize the container
void* At(UInt_t idx)
 Return the address of the value at index 'idx'
void* Allocate(UInt_t n, Bool_t forceDelete)
 Allocate the necessary space.
void Insert(const void* data, void* container, size_t size)
 Insert data into the container where data is a C-style array of the actual type contained in the collection
 of the given size.   For associative container (map, etc.), the data type is the pair<key,value>.
void Commit(void* env)
void ReadItems(int nElements, TBuffer& b)
 Object input streamer
void WriteItems(int nElements, TBuffer& b)
 Object output streamer
void ReadBuffer(TBuffer& buff, void* pObj, const TClass* onfile)
 Read portion of the streamer.
void ReadBuffer(TBuffer& buff, void* pObj)
 Read portion of the streamer.
void Streamer(TBuffer& refBuffer)
 TClassStreamer IO overload
TEmulatedCollectionProxy & operator=(const TEmulatedCollectionProxy& )
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]; }
UInt_t Sizeof() const
 TVirtualCollectionProxy overload: Return the sizeof the collection object.
{ return sizeof(Cont_t); }
void Streamer(TBuffer& refBuffer)
 Streamer for I/O handling