Logo ROOT  
Reference Guide
 
Loading...
Searching...
No Matches
ROOT::Detail::TCollectionProxyInfo Class Reference

Definition at line 57 of file TCollectionProxyInfo.h.

Classes

struct  Address
 
struct  Address< std::vector< Bool_t, A > >
 
class  Environ
 Small helper to save proxy environment in the event of recursive calls. More...
 
struct  EnvironBase
 
class  Insert
 Small helper to encapsulate all necessary data accesses for containers like set, multiset etc. More...
 
class  Iterators
 Small helper to implement the function to create,access and destroy iterators. More...
 
struct  Iterators< Cont_t, true >
 
struct  Iterators< std::vector< T >, false >
 
class  IteratorValue
 Small helper to encapsulate whether to return the value pointed to by the iterator or its address. More...
 
struct  IteratorValue< Cont_t, value_ptr * >
 
class  MapInsert
 Small helper to encapsulate all necessary data accesses for containers like set, multiset etc. More...
 
struct  PairHolder
 
class  Pushback
 Small helper to encapsulate all necessary data accesses for containers like vector, list, deque. More...
 
struct  Pushback< Internal::TStdBitsetHelper< Bitset_t > >
 
struct  Pushback< std::vector< Bool_t, A > >
 
class  Pushfront
 Small helper to encapsulate all necessary data accesses for containers like forward_list. More...
 
struct  SfinaeHelper
 
class  Type
 Small helper to encapsulate basic data accesses for all STL continers. More...
 
struct  Type< Internal::TStdBitsetHelper< Bitset_t > >
 
struct  Type< std::vector< Bool_t, A > >
 

Public Member Functions

 TCollectionProxyInfo (const std::type_info &info, size_t iter_size, size_t value_diff, int value_offset, void *(*size_func)(void *), void(*resize_func)(void *, size_t), void *(*clear_func)(void *), void *(*first_func)(void *), void *(*next_func)(void *), void *(*construct_func)(void *, size_t), void(*destruct_func)(void *, size_t), void *(*feed_func)(void *, void *, size_t), void *(*collect_func)(void *, void *), void *(*create_env)(), void(*getIterators)(void *collection, void **begin_arena, void **end_arena, TVirtualCollectionProxy *proxy)=nullptr, void *(*copyIterator)(void *dest, const void *source)=nullptr, void *(*next)(void *iter, const void *end)=nullptr, void(*deleteSingleIterator)(void *iter)=nullptr, void(*deleteTwoIterators)(void *begin, void *end)=nullptr)
 

Static Public Member Functions

template<class T >
static TCollectionProxyInfoGenerate (const T &)
 Generate proxy from template.
 
template<class T >
static TCollectionProxyInfo Get (const T &)
 

Public Attributes

void *(* fClearFunc )(void *)
 
void *(* fCollectFunc )(void *, void *)
 
void *(* fConstructFunc )(void *, size_t)
 
void *(* fCopyIterator )(void *dest, const void *source)
 
void *(* fCreateEnv )()
 
void(* fCreateIterators )(void *collection, void **begin_arena, void **end_arena, TVirtualCollectionProxy *proxy)
 
void(* fDeleteSingleIterator )(void *iter)
 
void(* fDeleteTwoIterators )(void *begin, void *end)
 
void(* fDestructFunc )(void *, size_t)
 
void *(* fFeedFunc )(void *, void *, size_t)
 
void *(* fFirstFunc )(void *)
 
const std::type_info & fInfo
 
size_t fIterSize
 
void *(* fNext )(void *iter, const void *end)
 
void *(* fNextFunc )(void *)
 
void(* fResizeFunc )(void *, size_t)
 
void *(* fSizeFunc )(void *)
 
size_t fValueDiff
 
int fValueOffset
 

Static Public Attributes

static const UInt_t fgIteratorArenaSize = 16
 

#include <TCollectionProxyInfo.h>

Constructor & Destructor Documentation

◆ TCollectionProxyInfo()

ROOT::Detail::TCollectionProxyInfo::TCollectionProxyInfo ( const std::type_info &  info,
size_t  iter_size,
size_t  value_diff,
int  value_offset,
void *(*)(void *)  size_func,
void(*)(void *, size_t)  resize_func,
void *(*)(void *)  clear_func,
void *(*)(void *)  first_func,
void *(*)(void *)  next_func,
void *(*)(void *, size_t)  construct_func,
void(*)(void *, size_t)  destruct_func,
void *(*)(void *, void *, size_t)  feed_func,
void *(*)(void *, void *)  collect_func,
void *(*)()  create_env,
void(*)(void *collection, void **begin_arena, void **end_arena, TVirtualCollectionProxy *proxy)  getIterators = nullptr,
void *(*)(void *dest, const void *source)  copyIterator = nullptr,
void *(*)(void *iter, const void *end)  next = nullptr,
void(*)(void *iter)  deleteSingleIterator = nullptr,
void(*)(void *begin, void *end)  deleteTwoIterators = nullptr 
)
inline

Definition at line 537 of file TCollectionProxyInfo.h.

Member Function Documentation

◆ Generate()

template<class T >
static TCollectionProxyInfo * ROOT::Detail::TCollectionProxyInfo::Generate ( const T &  )
inlinestatic

Generate proxy from template.

Definition at line 569 of file TCollectionProxyInfo.h.

◆ Get()

template<class T >
static TCollectionProxyInfo ROOT::Detail::TCollectionProxyInfo::Get ( const T &  )
inlinestatic

Definition at line 598 of file TCollectionProxyInfo.h.

Member Data Documentation

◆ fClearFunc

void *(* ROOT::Detail::TCollectionProxyInfo::fClearFunc) (void *)

Definition at line 505 of file TCollectionProxyInfo.h.

◆ fCollectFunc

void *(* ROOT::Detail::TCollectionProxyInfo::fCollectFunc) (void *, void *)

Definition at line 511 of file TCollectionProxyInfo.h.

◆ fConstructFunc

void *(* ROOT::Detail::TCollectionProxyInfo::fConstructFunc) (void *, size_t)

Definition at line 508 of file TCollectionProxyInfo.h.

◆ fCopyIterator

void *(* ROOT::Detail::TCollectionProxyInfo::fCopyIterator) (void *dest, const void *source)

Definition at line 520 of file TCollectionProxyInfo.h.

◆ fCreateEnv

void *(* ROOT::Detail::TCollectionProxyInfo::fCreateEnv) ()

Definition at line 512 of file TCollectionProxyInfo.h.

◆ fCreateIterators

void(* ROOT::Detail::TCollectionProxyInfo::fCreateIterators) (void *collection, void **begin_arena, void **end_arena, TVirtualCollectionProxy *proxy)

Definition at line 515 of file TCollectionProxyInfo.h.

◆ fDeleteSingleIterator

void(* ROOT::Detail::TCollectionProxyInfo::fDeleteSingleIterator) (void *iter)

Definition at line 531 of file TCollectionProxyInfo.h.

◆ fDeleteTwoIterators

void(* ROOT::Detail::TCollectionProxyInfo::fDeleteTwoIterators) (void *begin, void *end)

Definition at line 532 of file TCollectionProxyInfo.h.

◆ fDestructFunc

void(* ROOT::Detail::TCollectionProxyInfo::fDestructFunc) (void *, size_t)

Definition at line 509 of file TCollectionProxyInfo.h.

◆ fFeedFunc

void *(* ROOT::Detail::TCollectionProxyInfo::fFeedFunc) (void *, void *, size_t)

Definition at line 510 of file TCollectionProxyInfo.h.

◆ fFirstFunc

void *(* ROOT::Detail::TCollectionProxyInfo::fFirstFunc) (void *)

Definition at line 506 of file TCollectionProxyInfo.h.

◆ fgIteratorArenaSize

const UInt_t ROOT::Detail::TCollectionProxyInfo::fgIteratorArenaSize = 16
static

Definition at line 65 of file TCollectionProxyInfo.h.

◆ fInfo

const std::type_info& ROOT::Detail::TCollectionProxyInfo::fInfo

Definition at line 499 of file TCollectionProxyInfo.h.

◆ fIterSize

size_t ROOT::Detail::TCollectionProxyInfo::fIterSize

Definition at line 500 of file TCollectionProxyInfo.h.

◆ fNext

void *(* ROOT::Detail::TCollectionProxyInfo::fNext) (void *iter, const void *end)

Definition at line 525 of file TCollectionProxyInfo.h.

◆ fNextFunc

void *(* ROOT::Detail::TCollectionProxyInfo::fNextFunc) (void *)

Definition at line 507 of file TCollectionProxyInfo.h.

◆ fResizeFunc

void(* ROOT::Detail::TCollectionProxyInfo::fResizeFunc) (void *, size_t)

Definition at line 504 of file TCollectionProxyInfo.h.

◆ fSizeFunc

void *(* ROOT::Detail::TCollectionProxyInfo::fSizeFunc) (void *)

Definition at line 503 of file TCollectionProxyInfo.h.

◆ fValueDiff

size_t ROOT::Detail::TCollectionProxyInfo::fValueDiff

Definition at line 501 of file TCollectionProxyInfo.h.

◆ fValueOffset

int ROOT::Detail::TCollectionProxyInfo::fValueOffset

Definition at line 502 of file TCollectionProxyInfo.h.

  • core/cont/inc/TCollectionProxyInfo.h