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

Definition at line 59 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...
 
struct  IsStdVector
 
struct  IsStdVector< std::vector< T > >
 
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 TCollectionProxyInfo * Generate (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 566 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 598 of file TCollectionProxyInfo.h.

◆ Get()

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

Definition at line 627 of file TCollectionProxyInfo.h.

Member Data Documentation

◆ fClearFunc

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

Definition at line 534 of file TCollectionProxyInfo.h.

◆ fCollectFunc

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

Definition at line 540 of file TCollectionProxyInfo.h.

◆ fConstructFunc

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

Definition at line 537 of file TCollectionProxyInfo.h.

◆ fCopyIterator

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

Definition at line 549 of file TCollectionProxyInfo.h.

◆ fCreateEnv

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

Definition at line 541 of file TCollectionProxyInfo.h.

◆ fCreateIterators

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

Definition at line 544 of file TCollectionProxyInfo.h.

◆ fDeleteSingleIterator

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

Definition at line 560 of file TCollectionProxyInfo.h.

◆ fDeleteTwoIterators

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

Definition at line 561 of file TCollectionProxyInfo.h.

◆ fDestructFunc

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

Definition at line 538 of file TCollectionProxyInfo.h.

◆ fFeedFunc

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

Definition at line 539 of file TCollectionProxyInfo.h.

◆ fFirstFunc

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

Definition at line 535 of file TCollectionProxyInfo.h.

◆ fgIteratorArenaSize

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

Definition at line 67 of file TCollectionProxyInfo.h.

◆ fInfo

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

Definition at line 528 of file TCollectionProxyInfo.h.

◆ fIterSize

size_t ROOT::Detail::TCollectionProxyInfo::fIterSize

Definition at line 529 of file TCollectionProxyInfo.h.

◆ fNext

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

Definition at line 554 of file TCollectionProxyInfo.h.

◆ fNextFunc

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

Definition at line 536 of file TCollectionProxyInfo.h.

◆ fResizeFunc

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

Definition at line 533 of file TCollectionProxyInfo.h.

◆ fSizeFunc

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

Definition at line 532 of file TCollectionProxyInfo.h.

◆ fValueDiff

size_t ROOT::Detail::TCollectionProxyInfo::fValueDiff

Definition at line 530 of file TCollectionProxyInfo.h.

◆ fValueOffset

int ROOT::Detail::TCollectionProxyInfo::fValueOffset

Definition at line 531 of file TCollectionProxyInfo.h.

Libraries for ROOT::Detail::TCollectionProxyInfo:

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