ROOT  6.07/01
Reference Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Classes | Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | Friends | List of all members
TGenCollectionProxy Class Reference

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

The purpose of this implementation is to shield any generated dictionary implementation from the underlying streamer/proxy implementation and only expose the creation functions.

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.

Definition at line 38 of file TGenCollectionProxy.h.

Classes

class  Method
 Small helper to execute (compiler) generated function for the access to STL or other containers. More...
 
class  Method0
 
class  StreamHelper
 Helper class to facilitate I/O. More...
 
class  TStaging
 Small helper to stage the content of an associative container when reading and before inserting it in the actual collection. More...
 
class  Value
 Small helper to describe the Value_type or the key_type of an STL container. More...
 

Public Types

enum  { kBIT_ISSTRING = 0x20000000, kBIT_ISTSTRING = 0x40000000, kBOOL_t = 21 }
 
typedef const std::type_info & Info_t
 
- Public Types inherited from TVirtualCollectionProxy
enum  EProperty { kIsAssociative = BIT(2), kIsEmulated = BIT(3), kNeedDelete = BIT(4) }
 
typedef void(* CreateIterators_t )(void *collection, void **begin_arena, void **end_arena, TVirtualCollectionProxy *proxy)
 
typedef void *(* CopyIterator_t )(void *dest, const void *source)
 
typedef void *(* Next_t )(void *iter, const void *end)
 
typedef void(* DeleteIterator_t )(void *iter)
 
typedef void(* DeleteTwoIterators_t )(void *begin, void *end)
 

Public Member Functions

virtual TVirtualCollectionProxyGenerate () const
 Virtual copy constructor. More...
 
 TGenCollectionProxy (const TGenCollectionProxy &copy)
 Build a proxy for an emulated container. More...
 
 TGenCollectionProxy (Info_t typ, size_t iter_size)
 Build a proxy for a collection whose type is described by 'collectionClass'. More...
 
 TGenCollectionProxy (const ROOT::Detail::TCollectionProxyInfo &info, TClass *cl)
 Build a proxy for a collection whose type is described by 'collectionClass'. More...
 
virtual ~TGenCollectionProxy ()
 Standard destructor. More...
 
virtual TClassGetCollectionClass () const
 Return a pointer to the TClass representing the container. More...
 
virtual Int_t GetCollectionType () const
 Return the type of collection see TClassEdit::ESTLType. More...
 
virtual ULong_t GetIncrement () const
 Return the offset between two consecutive value_types (memory layout). More...
 
virtual UInt_t Sizeof () const
 Return the sizeof the collection object. More...
 
virtual void PushProxy (void *objstart)
 Add an object. More...
 
virtual void PopProxy ()
 Remove the last object. More...
 
virtual Bool_t HasPointers () const
 Return true if the content is of type 'pointer to'. More...
 
virtual TClassGetValueClass () const
 Return a pointer to the TClass representing the content. More...
 
virtual EDataType GetType () const
 If the content is a simple numerical value, return its type (see TDataType) More...
 
virtual voidAt (UInt_t idx)
 Return the address of the value at index 'idx'. More...
 
virtual void Clear (const char *opt="")
 Clear the emulated collection. More...
 
virtual void Resize (UInt_t n, Bool_t force_delete)
 Resize the container. More...
 
virtual UInt_t Size () const
 Return the current size of the container. More...
 
virtual voidAllocate (UInt_t n, Bool_t forceDelete)
 Allocate the needed space. More...
 
virtual 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. More...
 
virtual void Commit (void *env)
 Commit the change. More...
 
virtual void Streamer (TBuffer &refBuffer)
 Streamer Function. More...
 
virtual void Streamer (TBuffer &refBuffer, void *pObject, int siz)
 Streamer I/O overload. More...
 
virtual void operator() (TBuffer &refBuffer, void *pObject)
 TClassStreamer IO overload. More...
 
virtual void ReadBuffer (TBuffer &b, void *obj)
 
virtual void ReadBuffer (TBuffer &b, void *obj, const TClass *onfileClass)
 
virtual void SetOnFileClass (TClass *cl)
 
virtual TClassGetOnFileClass () const
 
virtual
TStreamerInfoActions::TActionSequence
GetConversionReadMemberWiseActions (TClass *oldClass, Int_t version)
 Return the set of action necessary to stream in this collection member-wise coming from the old value class layout refered to by 'version'. More...
 
virtual
TStreamerInfoActions::TActionSequence
GetReadMemberWiseActions (Int_t version)
 Return the set of action necessary to stream in this collection member-wise coming from the old value class layout refered to by 'version'. More...
 
virtual
TStreamerInfoActions::TActionSequence
GetWriteMemberWiseActions ()
 Return the set of action necessary to stream out this collection member-wise. More...
 
virtual CreateIterators_t GetFunctionCreateIterators (Bool_t read=kTRUE)
 See typedef void (*CreateIterators_t)(void *collection, void *&begin_arena, void *&end_arena); begin_arena and end_arena should contain the location of memory arena of size fgIteratorSize. More...
 
virtual CopyIterator_t GetFunctionCopyIterator (Bool_t read=kTRUE)
 See typedef void (*CopyIterator_t)(void *&dest, const void *source); Copy the iterator source, into dest. More...
 
virtual Next_t GetFunctionNext (Bool_t read=kTRUE)
 See typedef void* (*Next_t)(void *iter, void *end); iter and end should be pointer to respectively an iterator to be incremented and the result of colleciton.end() 'Next' will increment the iterator 'iter' and return 0 if the iterator reached the end. More...
 
virtual DeleteIterator_t GetFunctionDeleteIterator (Bool_t read=kTRUE)
 See typedef void (*DeleteIterator_t)(void *iter); If the sizeof iterator is greater than fgIteratorArenaSize, call delete on the addresses, Otherwise just call the iterator's destructor. More...
 
virtual DeleteTwoIterators_t GetFunctionDeleteTwoIterators (Bool_t read=kTRUE)
 See typedef void (*DeleteTwoIterators_t)(void *begin, void *end); If the sizeof iterator is greater than fgIteratorArenaSize, call delete on the addresses, Otherwise just call the iterator's destructor. More...
 
- Public Member Functions inherited from TVirtualCollectionProxy
 TVirtualCollectionProxy ()
 
 TVirtualCollectionProxy (TClass *cl)
 
virtual ~TVirtualCollectionProxy ()
 
virtual Int_t GetProperties () const
 
virtual voidNew () const
 
virtual voidNew (void *arena) const
 
virtual voidNewArray (Int_t nElements) const
 
virtual voidNewArray (Int_t nElements, void *arena) const
 
virtual void Destructor (void *p, Bool_t dtorOnly=kFALSE) const
 
virtual void DeleteArray (void *p, Bool_t dtorOnly=kFALSE) const
 
char * operator[] (UInt_t idx) const
 

Protected Types

typedef
ROOT::Detail::TCollectionProxyInfo::Environ
< char[64]> 
Env_t
 
typedef
ROOT::Detail::TCollectionProxyInfo::EnvironBase 
EnvironBase_t
 
typedef std::vector< TStaging * > Staged_t
 Collection of pre-allocated staged array for associative containers. More...
 
typedef std::vector
< EnvironBase_t * > 
Proxies_t
 
typedef void(* Sizing_t )(void *obj, size_t size)
 
typedef void *(* Feedfunc_t )(void *from, void *to, size_t size)
 
typedef void *(* Collectfunc_t )(void *from, void *to)
 
typedef void *(* ArrIterfunc_t )(void *from, size_t size)
 

Protected Member Functions

TGenCollectionProxyInitialize (Bool_t silent) const
 Proxy initializer. More...
 
virtual TGenCollectionProxyInitializeEx (Bool_t silent)
 Proxy initializer. More...
 
virtual void DeleteItem (Bool_t force, void *ptr) const
 Call to delete/destruct individual item. More...
 
void CheckFunctions () const
 Check existence of function pointers. More...
 
virtual void UpdateValueClass (const TClass *oldcl, TClass *newcl)
 Update the internal ValueClass when a TClass constructor need to replace an emulated TClass by the real TClass. More...
 

Protected Attributes

TObjArrayfReadMemberWise
 Array of bundle of TStreamerInfoActions to stream out (read) More...
 
std::map< std::string,
TObjArray * > * 
fConversionReadMemberWise
 Array of bundle of TStreamerInfoActions to stream out (read) derived from another class. More...
 
TStreamerInfoActions::TActionSequencefWriteMemberWise
 
std::string fName
 Name of the class being proxied. More...
 
Bool_t fPointers
 Flag to indicate if containee has pointers (key or value) More...
 
Method fClear
 Method cache for container accessors: clear container. More...
 
Method fSize
 Container accessors: size of container. More...
 
Sizing_t fResize
 Container accessors: resize container. More...
 
Method fFirst
 Container accessors: generic iteration: first. More...
 
Method fNext
 Container accessors: generic iteration: next. More...
 
ArrIterfunc_t fConstruct
 Container accessors: block construct. More...
 
Sizing_t fDestruct
 Container accessors: block destruct. More...
 
Feedfunc_t fFeed
 Container accessors: block feed. More...
 
Collectfunc_t fCollect
 Method to collect objects from container. More...
 
Method0 fCreateEnv
 Method to allocate an Environment holder. More...
 
std::atomic< Value * > fValue
 Descriptor of the container value type. More...
 
ValuefVal
 Descriptor of the Value_type. More...
 
ValuefKey
 Descriptor of the key_type. More...
 
EnvironBase_tfEnv
 Address of the currently proxied object. More...
 
int fValOffset
 Offset from key to value (in maps) More...
 
int fValDiff
 Offset between two consecutive value_types (memory layout). More...
 
Proxies_t fProxyList
 Stack of recursive proxies. More...
 
Proxies_t fProxyKept
 Optimization: Keep proxies once they were created. More...
 
Staged_t fStaged
 Optimization: Keep staged array once they were created. More...
 
int fSTL_type
 STL container type. More...
 
Info_t fTypeinfo
 Type information. More...
 
TClassfOnFileClass
 On file class. More...
 
CreateIterators_t fFunctionCreateIterators
 
CopyIterator_t fFunctionCopyIterator
 
Next_t fFunctionNextIterator
 
DeleteIterator_t fFunctionDeleteIterator
 
DeleteTwoIterators_t fFunctionDeleteTwoIterators
 
- Protected Attributes inherited from TVirtualCollectionProxy
TClassRef fClass
 
UInt_t fProperties
 

Private Member Functions

 TGenCollectionProxy ()
 
TGenCollectionProxyoperator= (const TGenCollectionProxy &)
 

Friends

class TCollectionProxyFactory
 

Additional Inherited Members

- Static Public Attributes inherited from TVirtualCollectionProxy
static const Int_t fgIteratorArenaSize = 16
 

#include <TGenCollectionProxy.h>

Inheritance diagram for TGenCollectionProxy:
[legend]

Member Typedef Documentation

typedef void*(* TGenCollectionProxy::ArrIterfunc_t)(void *from, size_t size)
protected

Definition at line 307 of file TGenCollectionProxy.h.

typedef void*(* TGenCollectionProxy::Collectfunc_t)(void *from, void *to)
protected

Definition at line 306 of file TGenCollectionProxy.h.

Definition at line 297 of file TGenCollectionProxy.h.

Definition at line 298 of file TGenCollectionProxy.h.

typedef void*(* TGenCollectionProxy::Feedfunc_t)(void *from, void *to, size_t size)
protected

Definition at line 305 of file TGenCollectionProxy.h.

typedef const std::type_info& TGenCollectionProxy::Info_t

Definition at line 50 of file TGenCollectionProxy.h.

typedef std::vector<EnvironBase_t*> TGenCollectionProxy::Proxies_t
protected

Definition at line 300 of file TGenCollectionProxy.h.

typedef void(* TGenCollectionProxy::Sizing_t)(void *obj, size_t size)
protected

Definition at line 304 of file TGenCollectionProxy.h.

typedef std::vector<TStaging*> TGenCollectionProxy::Staged_t
protected

Collection of pre-allocated staged array for associative containers.

Definition at line 299 of file TGenCollectionProxy.h.

Member Enumeration Documentation

anonymous enum
Enumerator
kBIT_ISSTRING 
kBIT_ISTSTRING 
kBOOL_t 

Definition at line 53 of file TGenCollectionProxy.h.

Constructor & Destructor Documentation

TGenCollectionProxy::TGenCollectionProxy ( )
private

Referenced by Generate().

TGenCollectionProxy::TGenCollectionProxy ( const TGenCollectionProxy copy)

Build a proxy for an emulated container.

Definition at line 562 of file TGenCollectionProxy.cxx.

TGenCollectionProxy::TGenCollectionProxy ( Info_t  typ,
size_t  iter_size 
)

Build a proxy for a collection whose type is described by 'collectionClass'.

Definition at line 600 of file TGenCollectionProxy.cxx.

TGenCollectionProxy::TGenCollectionProxy ( const ROOT::Detail::TCollectionProxyInfo info,
TClass cl 
)

Build a proxy for a collection whose type is described by 'collectionClass'.

Definition at line 645 of file TGenCollectionProxy.cxx.

TGenCollectionProxy::~TGenCollectionProxy ( )
virtual

Standard destructor.

Definition at line 711 of file TGenCollectionProxy.cxx.

Member Function Documentation

void * TGenCollectionProxy::Allocate ( UInt_t  n,
Bool_t  forceDelete 
)
virtual

Allocate the needed space.

For associative collection, this returns a TStaging object that need to be deleted manually or returned by calling Commit(TStaging*)

Implements TVirtualCollectionProxy.

Reimplemented in TEmulatedCollectionProxy.

Definition at line 1116 of file TGenCollectionProxy.cxx.

void * TGenCollectionProxy::At ( UInt_t  idx)
virtual

Return the address of the value at index 'idx'.

Implements TVirtualCollectionProxy.

Reimplemented in TEmulatedCollectionProxy, and TEmulatedMapProxy.

Definition at line 1013 of file TGenCollectionProxy.cxx.

Referenced by Clear(), Resize(), and TGenCollectionStreamer::WriteMap().

void TGenCollectionProxy::CheckFunctions ( ) const
protected
void TGenCollectionProxy::Clear ( const char *  opt = "")
virtual
void TGenCollectionProxy::Commit ( void env)
virtual

Commit the change.

Implements TVirtualCollectionProxy.

Reimplemented in TEmulatedCollectionProxy.

Definition at line 1200 of file TGenCollectionProxy.cxx.

void TGenCollectionProxy::DeleteItem ( Bool_t  force,
void ptr 
) const
protectedvirtual

Call to delete/destruct individual item.

Definition at line 1273 of file TGenCollectionProxy.cxx.

Referenced by Clear(), and Resize().

TVirtualCollectionProxy * TGenCollectionProxy::Generate ( ) const
virtual

Virtual copy constructor.

Implements TVirtualCollectionProxy.

Reimplemented in TGenCollectionStreamer, TEmulatedCollectionProxy, and TEmulatedMapProxy.

Definition at line 737 of file TGenCollectionProxy.cxx.

Referenced by TCollectionStreamer::TCollectionStreamer().

TClass * TGenCollectionProxy::GetCollectionClass ( ) const
virtual

Return a pointer to the TClass representing the container.

Reimplemented from TVirtualCollectionProxy.

Definition at line 928 of file TGenCollectionProxy.cxx.

Referenced by TCollectionClassStreamer::Stream(), and Streamer().

Int_t TGenCollectionProxy::GetCollectionType ( ) const
virtual

Return the type of collection see TClassEdit::ESTLType.

Implements TVirtualCollectionProxy.

Definition at line 936 of file TGenCollectionProxy.cxx.

TStreamerInfoActions::TActionSequence * TGenCollectionProxy::GetConversionReadMemberWiseActions ( TClass oldClass,
Int_t  version 
)
virtual

Return the set of action necessary to stream in this collection member-wise coming from the old value class layout refered to by 'version'.

Implements TVirtualCollectionProxy.

Definition at line 1663 of file TGenCollectionProxy.cxx.

TVirtualCollectionProxy::CopyIterator_t TGenCollectionProxy::GetFunctionCopyIterator ( Bool_t  read = kTRUE)
virtual

See typedef void (*CopyIterator_t)(void *&dest, const void *source); Copy the iterator source, into dest.

dest should contain should contain the location of memory arena of size fgIteratorSize. If the collection iterator are of that size or less, the iterator will be constructed in place in this location (new with placement) Otherwise the iterator will be allocated via a regular new and its address returned by modifying the value of dest.

Implements TVirtualCollectionProxy.

Definition at line 1562 of file TGenCollectionProxy.cxx.

TVirtualCollectionProxy::CreateIterators_t TGenCollectionProxy::GetFunctionCreateIterators ( Bool_t  read = kTRUE)
virtual

See typedef void (*CreateIterators_t)(void *collection, void *&begin_arena, void *&end_arena); begin_arena and end_arena should contain the location of memory arena of size fgIteratorSize.

If the collection iterator are of that size or less, the iterators will be constructed in place in those location (new with placement) Otherwise the iterators will be allocated via a regular new and their address returned by modifying the value of begin_arena and end_arena.

Implements TVirtualCollectionProxy.

Definition at line 1528 of file TGenCollectionProxy.cxx.

Referenced by TGenCollectionStreamer::ReadBufferDefault().

TVirtualCollectionProxy::DeleteIterator_t TGenCollectionProxy::GetFunctionDeleteIterator ( Bool_t  read = kTRUE)
virtual

See typedef void (*DeleteIterator_t)(void *iter); If the sizeof iterator is greater than fgIteratorArenaSize, call delete on the addresses, Otherwise just call the iterator's destructor.

Implements TVirtualCollectionProxy.

Definition at line 1614 of file TGenCollectionProxy.cxx.

TVirtualCollectionProxy::DeleteTwoIterators_t TGenCollectionProxy::GetFunctionDeleteTwoIterators ( Bool_t  read = kTRUE)
virtual

See typedef void (*DeleteTwoIterators_t)(void *begin, void *end); If the sizeof iterator is greater than fgIteratorArenaSize, call delete on the addresses, Otherwise just call the iterator's destructor.

Implements TVirtualCollectionProxy.

Definition at line 1639 of file TGenCollectionProxy.cxx.

TVirtualCollectionProxy::Next_t TGenCollectionProxy::GetFunctionNext ( Bool_t  read = kTRUE)
virtual

See typedef void* (*Next_t)(void *iter, void *end); iter and end should be pointer to respectively an iterator to be incremented and the result of colleciton.end() 'Next' will increment the iterator 'iter' and return 0 if the iterator reached the end.

If the end is not reached, 'Next' will return the address of the content unless the collection contains pointers in which case 'Next' will return the value of the pointer.

Implements TVirtualCollectionProxy.

Definition at line 1589 of file TGenCollectionProxy.cxx.

ULong_t TGenCollectionProxy::GetIncrement ( ) const
virtual

Return the offset between two consecutive value_types (memory layout).

Implements TVirtualCollectionProxy.

Definition at line 947 of file TGenCollectionProxy.cxx.

virtual TClass* TGenCollectionProxy::GetOnFileClass ( ) const
inlinevirtual

Definition at line 438 of file TGenCollectionProxy.h.

TStreamerInfoActions::TActionSequence * TGenCollectionProxy::GetReadMemberWiseActions ( Int_t  version)
virtual

Return the set of action necessary to stream in this collection member-wise coming from the old value class layout refered to by 'version'.

Implements TVirtualCollectionProxy.

Definition at line 1714 of file TGenCollectionProxy.cxx.

EDataType TGenCollectionProxy::GetType ( ) const
virtual

If the content is a simple numerical value, return its type (see TDataType)

Implements TVirtualCollectionProxy.

Definition at line 1004 of file TGenCollectionProxy.cxx.

Referenced by TGenCollectionStreamer::ReadMap().

TClass * TGenCollectionProxy::GetValueClass ( ) const
virtual

Return a pointer to the TClass representing the content.

Implements TVirtualCollectionProxy.

Definition at line 980 of file TGenCollectionProxy.cxx.

Referenced by GetConversionReadMemberWiseActions(), GetReadMemberWiseActions(), and GetWriteMemberWiseActions().

TStreamerInfoActions::TActionSequence * TGenCollectionProxy::GetWriteMemberWiseActions ( )
virtual

Return the set of action necessary to stream out this collection member-wise.

Implements TVirtualCollectionProxy.

Definition at line 1736 of file TGenCollectionProxy.cxx.

Bool_t TGenCollectionProxy::HasPointers ( ) const
virtual

Return true if the content is of type 'pointer to'.

Implements TVirtualCollectionProxy.

Definition at line 965 of file TGenCollectionProxy.cxx.

TGenCollectionProxy * TGenCollectionProxy::Initialize ( Bool_t  silent) const
protected
TGenCollectionProxy * TGenCollectionProxy::InitializeEx ( Bool_t  silent)
protectedvirtual
void TGenCollectionProxy::Insert ( const void data,
void container,
size_t  size 
)
virtual

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>.

Implements TVirtualCollectionProxy.

Reimplemented in TEmulatedCollectionProxy.

Definition at line 1192 of file TGenCollectionProxy.cxx.

void TGenCollectionProxy::operator() ( TBuffer refBuffer,
void pObject 
)
virtual

TClassStreamer IO overload.

Definition at line 1369 of file TGenCollectionProxy.cxx.

TGenCollectionProxy& TGenCollectionProxy::operator= ( const TGenCollectionProxy )
private
void TGenCollectionProxy::PopProxy ( )
virtual

Remove the last object.

Implements TVirtualCollectionProxy.

Definition at line 1257 of file TGenCollectionProxy.cxx.

void TGenCollectionProxy::PushProxy ( void objstart)
virtual

Add an object.

Implements TVirtualCollectionProxy.

Definition at line 1222 of file TGenCollectionProxy.cxx.

void TGenCollectionProxy::ReadBuffer ( TBuffer b,
void obj 
)
virtual
void TGenCollectionProxy::ReadBuffer ( TBuffer b,
void obj,
const TClass onfileClass 
)
virtual
void TGenCollectionProxy::Resize ( UInt_t  n,
Bool_t  force_delete 
)
virtual

Resize the container.

Reimplemented in TEmulatedCollectionProxy.

Definition at line 1093 of file TGenCollectionProxy.cxx.

virtual void TGenCollectionProxy::SetOnFileClass ( TClass cl)
inlinevirtual
UInt_t TGenCollectionProxy::Size ( ) const
virtual

Return the current size of the container.

Implements TVirtualCollectionProxy.

Reimplemented in TEmulatedCollectionProxy, and TEmulatedMapProxy.

Definition at line 1077 of file TGenCollectionProxy.cxx.

UInt_t TGenCollectionProxy::Sizeof ( ) const
virtual

Return the sizeof the collection object.

Implements TVirtualCollectionProxy.

Reimplemented in TEmulatedCollectionProxy.

Definition at line 957 of file TGenCollectionProxy.cxx.

void TGenCollectionProxy::Streamer ( TBuffer refBuffer)
virtual
void TGenCollectionProxy::Streamer ( TBuffer refBuffer,
void pObject,
int  siz 
)
virtual

Streamer I/O overload.

Reimplemented in TEmulatedCollectionProxy, TGenCollectionStreamer, and TEmulatedMapProxy.

Definition at line 1360 of file TGenCollectionProxy.cxx.

void TGenCollectionProxy::UpdateValueClass ( const TClass oldValueType,
TClass newValueType 
)
protectedvirtual

Update the internal ValueClass when a TClass constructor need to replace an emulated TClass by the real TClass.

Implements TVirtualCollectionProxy.

Definition at line 990 of file TGenCollectionProxy.cxx.

Friends And Related Function Documentation

friend class TCollectionProxyFactory
friend

Definition at line 43 of file TGenCollectionProxy.h.

Member Data Documentation

Method TGenCollectionProxy::fClear
protected
Collectfunc_t TGenCollectionProxy::fCollect
protected
ArrIterfunc_t TGenCollectionProxy::fConstruct
protected
std::map<std::string, TObjArray*>* TGenCollectionProxy::fConversionReadMemberWise
mutableprotected

Array of bundle of TStreamerInfoActions to stream out (read) derived from another class.

Definition at line 302 of file TGenCollectionProxy.h.

Referenced by GetConversionReadMemberWiseActions(), TGenCollectionProxy(), and ~TGenCollectionProxy().

Method0 TGenCollectionProxy::fCreateEnv
protected
Sizing_t TGenCollectionProxy::fDestruct
protected
EnvironBase_t* TGenCollectionProxy::fEnv
protected
Feedfunc_t TGenCollectionProxy::fFeed
protected
Method TGenCollectionProxy::fFirst
protected
CopyIterator_t TGenCollectionProxy::fFunctionCopyIterator
protected

Definition at line 335 of file TGenCollectionProxy.h.

Referenced by GetFunctionCopyIterator(), and TGenCollectionProxy().

CreateIterators_t TGenCollectionProxy::fFunctionCreateIterators
protected
DeleteIterator_t TGenCollectionProxy::fFunctionDeleteIterator
protected

Definition at line 337 of file TGenCollectionProxy.h.

Referenced by GetFunctionDeleteIterator(), and TGenCollectionProxy().

DeleteTwoIterators_t TGenCollectionProxy::fFunctionDeleteTwoIterators
protected

Definition at line 338 of file TGenCollectionProxy.h.

Referenced by GetFunctionDeleteTwoIterators(), and TGenCollectionProxy().

Next_t TGenCollectionProxy::fFunctionNextIterator
protected

Definition at line 336 of file TGenCollectionProxy.h.

Referenced by GetFunctionNext(), and TGenCollectionProxy().

Value* TGenCollectionProxy::fKey
protected
std::string TGenCollectionProxy::fName
protected
Method TGenCollectionProxy::fNext
protected
TClass* TGenCollectionProxy::fOnFileClass
protected
Bool_t TGenCollectionProxy::fPointers
protected

Flag to indicate if containee has pointers (key or value)

Definition at line 310 of file TGenCollectionProxy.h.

Referenced by Generate(), HasPointers(), TEmulatedCollectionProxy::InitializeEx(), InitializeEx(), Resize(), and TGenCollectionProxy().

Proxies_t TGenCollectionProxy::fProxyKept
protected

Optimization: Keep proxies once they were created.

Definition at line 328 of file TGenCollectionProxy.h.

Referenced by PopProxy(), PushProxy(), and ~TGenCollectionProxy().

Proxies_t TGenCollectionProxy::fProxyList
protected

Stack of recursive proxies.

Definition at line 327 of file TGenCollectionProxy.h.

Referenced by PopProxy(), PushProxy(), and ~TGenCollectionProxy().

TObjArray* TGenCollectionProxy::fReadMemberWise
mutableprotected

Array of bundle of TStreamerInfoActions to stream out (read)

Definition at line 301 of file TGenCollectionProxy.h.

Referenced by GetReadMemberWiseActions(), TGenCollectionProxy(), and ~TGenCollectionProxy().

Sizing_t TGenCollectionProxy::fResize
protected
Method TGenCollectionProxy::fSize
protected
Staged_t TGenCollectionProxy::fStaged
protected

Optimization: Keep staged array once they were created.

Definition at line 329 of file TGenCollectionProxy.h.

Referenced by Allocate(), Commit(), and ~TGenCollectionProxy().

int TGenCollectionProxy::fSTL_type
protected
Info_t TGenCollectionProxy::fTypeinfo
protected

Type information.

Definition at line 331 of file TGenCollectionProxy.h.

Referenced by TEmulatedCollectionProxy::InitializeEx(), and InitializeEx().

Value* TGenCollectionProxy::fVal
protected
int TGenCollectionProxy::fValDiff
protected
int TGenCollectionProxy::fValOffset
protected
std::atomic<Value*> TGenCollectionProxy::fValue
protected
TStreamerInfoActions::TActionSequence* TGenCollectionProxy::fWriteMemberWise
mutableprotected
Collaboration diagram for TGenCollectionProxy:
[legend]

The documentation for this class was generated from the following files: