Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
TCollectionProxyFactory Class Reference

TCollectionProxyFactory Interface to collection proxy and streamer generator.

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.

Author
M.Frank
Version
1.0

Definition at line 65 of file TCollectionProxyFactory.h.

Public Types

typedef const std::type_info & Info_t
 
typedef TVirtualCollectionProxy Proxy_t
 

Static Public Member Functions

template<class T >
static TClassStreamer * GenClassStreamer (const T &arg, TClass *cl)
 Generate class streamer from template.
 
static TClassStreamer * GenEmulatedClassStreamer (const char *class_name, Bool_t silent)
 Generate emulated class streamer for a given collection class.
 
static TMemberStreamer * GenEmulatedMemberStreamer (const char *class_name, Bool_t silent)
 Generate emulated member streamer for a given collection class.
 
static TVirtualCollectionProxy * GenEmulatedProxy (const char *class_name, Bool_t silent)
 Generate emulated collection proxy for a given class.
 
static TClassStreamer * GenExplicitClassStreamer (const ::ROOT::TCollectionProxyInfo &info, TClass *cl)
 Generate class streamer from static functions.
 
static TMemberStreamer * GenExplicitMemberStreamer (const ::ROOT::TCollectionProxyInfo &info, TClass *cl)
 Generate member streamer from static functions.
 
static Proxy_t * GenExplicitProxy (const ::ROOT::TCollectionProxyInfo &info, TClass *cl)
 Generate proxy from static functions.
 
static TGenCollectionStreamer * GenExplicitStreamer (const ::ROOT::TCollectionProxyInfo &info, TClass *cl)
 Generate streamer from static functions.
 
template<class T >
static TMemberStreamer * GenMemberStreamer (const T &arg, TClass *cl)
 Generate member streamer from template.
 
template<class T >
static Proxy_t * GenProxy (const T &arg, TClass *cl)
 Generate proxy from template.
 

#include <TCollectionProxyFactory.h>

Member Typedef Documentation

◆ Info_t

typedef const std::type_info& TCollectionProxyFactory::Info_t

Definition at line 72 of file TCollectionProxyFactory.h.

◆ Proxy_t

Member Function Documentation

◆ GenClassStreamer()

template<class T >
static TClassStreamer * TCollectionProxyFactory::GenClassStreamer ( const T &  arg,
TClass *  cl 
)
inlinestatic

Generate class streamer from template.

Definition at line 102 of file TCollectionProxyFactory.h.

◆ GenEmulatedClassStreamer()

TClassStreamer * TCollectionProxyFactory::GenEmulatedClassStreamer ( const char *  class_name,
Bool_t  silent 
)
static

Generate emulated class streamer for a given collection class.

Definition at line 71 of file TCollectionProxyFactory.cxx.

◆ GenEmulatedMemberStreamer()

TMemberStreamer * TCollectionProxyFactory::GenEmulatedMemberStreamer ( const char *  class_name,
Bool_t  silent 
)
static

Generate emulated member streamer for a given collection class.

Definition at line 81 of file TCollectionProxyFactory.cxx.

◆ GenEmulatedProxy()

TVirtualCollectionProxy * TCollectionProxyFactory::GenEmulatedProxy ( const char *  class_name,
Bool_t  silent 
)
static

Generate emulated collection proxy for a given class.

Definition at line 63 of file TCollectionProxyFactory.cxx.

◆ GenExplicitClassStreamer()

TClassStreamer * TCollectionProxyFactory::GenExplicitClassStreamer ( const ::ROOT::TCollectionProxyInfo &  info,
TClass *  cl 
)
static

Generate class streamer from static functions.

Definition at line 105 of file TCollectionProxyFactory.cxx.

◆ GenExplicitMemberStreamer()

TMemberStreamer * TCollectionProxyFactory::GenExplicitMemberStreamer ( const ::ROOT::TCollectionProxyInfo &  info,
TClass *  cl 
)
static

Generate member streamer from static functions.

Definition at line 114 of file TCollectionProxyFactory.cxx.

◆ GenExplicitProxy()

TCollectionProxyFactory::Proxy_t * TCollectionProxyFactory::GenExplicitProxy ( const ::ROOT::TCollectionProxyInfo &  info,
TClass *  cl 
)
static

Generate proxy from static functions.

Definition at line 90 of file TCollectionProxyFactory.cxx.

◆ GenExplicitStreamer()

TGenCollectionStreamer * TCollectionProxyFactory::GenExplicitStreamer ( const ::ROOT::TCollectionProxyInfo &  info,
TClass *  cl 
)
static

Generate streamer from static functions.

Definition at line 97 of file TCollectionProxyFactory.cxx.

◆ GenMemberStreamer()

template<class T >
static TMemberStreamer * TCollectionProxyFactory::GenMemberStreamer ( const T &  arg,
TClass *  cl 
)
inlinestatic

Generate member streamer from template.

Definition at line 111 of file TCollectionProxyFactory.h.

◆ GenProxy()

template<class T >
static Proxy_t * TCollectionProxyFactory::GenProxy ( const T &  arg,
TClass *  cl 
)
inlinestatic

Generate proxy from template.

Definition at line 89 of file TCollectionProxyFactory.h.


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