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, Bool_t silent)
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
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 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(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)
voidWriteItems(int nElements, TBuffer& b)

Data Members

public:
enum TGenCollectionProxy::[unnamed] { kBIT_ISSTRING
kBIT_ISTSTRING
kBOOL_t
};
enum TVirtualCollectionProxy::EProperty { kIsInitialized
kIsAssociative
kIsEmulated
kNeedDelete
};
public:
static const Int_tTVirtualCollectionProxy::fgIteratorArenaSizegreater than sizeof(void*) + sizeof(UInt_t)
protected:
TClassRefTVirtualCollectionProxy::fClass
TGenCollectionProxy::MethodTGenCollectionProxy::fClearMethod cache for container accessors: clear container
void*TGenCollectionProxy::fCollectMethod to collect objects from container
void*TGenCollectionProxy::fConstructContainer accessors: block construct
map<std::string,TObjArray*>*TGenCollectionProxy::fConversionReadMemberWiseArray of bundle of TStreamerInfoActions to stream out (read) derived from another class.
TGenCollectionProxy::Method0TGenCollectionProxy::fCreateEnvMethod to allocate an Environment holder.
void*TGenCollectionProxy::fDestructContainer accessors: block destruct
ROOT::TCollectionProxyInfo::EnvironBase*TGenCollectionProxy::fEnvAddress of the currently proxied object
void*TGenCollectionProxy::fFeedContainer accessors: block feed
TGenCollectionProxy::MethodTGenCollectionProxy::fFirstContainer accessors: generic iteration: first
void*TGenCollectionProxy::fFunctionCopyIterator
void*TGenCollectionProxy::fFunctionCreateIterators
void*TGenCollectionProxy::fFunctionDeleteIterator
void*TGenCollectionProxy::fFunctionDeleteTwoIterators
void*TGenCollectionProxy::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
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
TObjArray*TGenCollectionProxy::fReadMemberWiseArray of bundle of TStreamerInfoActions to stream out (read)
void*TGenCollectionProxy::fResizeContainer accessors: resize container
intTGenCollectionProxy::fSTL_typeSTL container type
TGenCollectionProxy::MethodTGenCollectionProxy::fSizeContainer accessors: size of container
vector<TGenCollectionProxy::TStaging*,allocator<TGenCollectionProxy::TStaging*> >TGenCollectionProxy::fStagedOptimization: Keep staged array once they were created
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
TStreamerInfoActions::TActionSequence*TGenCollectionProxy::fWriteMemberWise

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TGenCollectionProxy* InitializeEx(Bool_t silent)
 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
TEmulatedCollectionProxy & operator=(const TEmulatedCollectionProxy& )
TVirtualCollectionProxy* Generate() const
 Virtual copy constructor
TEmulatedCollectionProxy(const TEmulatedCollectionProxy& copy)
 Copy constructor
TEmulatedCollectionProxy(const char* cl_name, Bool_t silent)
 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) const
 Virtual destructor
void DeleteArray(void* p, Bool_t dtorOnly = kFALSE) const
 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 ReadBuffer(TBuffer& buff, void* pObj)
 Read portion of the streamer
void ReadBuffer(TBuffer& buff, void* pObj, const TClass* onfile)
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