Logo ROOT   6.12/07
Reference Guide
List of all members | Public Types | Public Member Functions | Private Attributes | List of all members
ROOT::Experimental::Internal::TDrawingAttrTable< PRIMITIVE > Class Template Reference

template<class PRIMITIVE>
class ROOT::Experimental::Internal::TDrawingAttrTable< PRIMITIVE >

Definition at line 36 of file TDrawingAttrs.hxx.

Public Types

using value_type = Internal::TDrawingAttrAndUseCount< PRIMITIVE >
 

Public Member Functions

void DecrUse (TDrawingAttrRef< PRIMITIVE > idx)
 Remove a use of the attribute at table index idx. More...
 
const PRIMITIVE & Get (TDrawingAttrRef< PRIMITIVE > idx) const
 Get the value at index idx (const version). More...
 
PRIMITIVE & Get (TDrawingAttrRef< PRIMITIVE > idx)
 Get the value at index idx (non-const version). More...
 
std::vector< value_type > & GetTable ()
 Access to the underlying attribute table (non-const version). More...
 
const std::vector< value_type > & GetTable () const
 Access to the underlying attribute table (const version). More...
 
void IncrUse (TDrawingAttrRef< PRIMITIVE > idx)
 Add a use of the attribute at table index idx. More...
 
TDrawingAttrRef< PRIMITIVE > Register (const PRIMITIVE &val)
 Register an attribute with the table. More...
 
TDrawingAttrRef< PRIMITIVE > SameAs (const PRIMITIVE &val)
 Find the index belonging to the attribute at the given address and add a use. More...
 
void Update (TDrawingAttrRef< PRIMITIVE > idx, const PRIMITIVE &val)
 Update an existing attribute entry in the table. More...
 

Private Attributes

std::vector< value_typefTable
 Table of attribute primitives. More...
 

#include <ROOT/TDrawingAttrs.hxx>

Member Typedef Documentation

◆ value_type

template<class PRIMITIVE>
using ROOT::Experimental::Internal::TDrawingAttrTable< PRIMITIVE >::value_type = Internal::TDrawingAttrAndUseCount<PRIMITIVE>

Definition at line 125 of file TDrawingAttrs.hxx.

Member Function Documentation

◆ DecrUse()

template<class PRIMITIVE>
void ROOT::Experimental::Internal::TDrawingAttrTable< PRIMITIVE >::DecrUse ( TDrawingAttrRef< PRIMITIVE >  idx)
inline

Remove a use of the attribute at table index idx.

Definition at line 141 of file TDrawingAttrs.hxx.

◆ Get() [1/2]

template<class PRIMITIVE>
const PRIMITIVE& ROOT::Experimental::Internal::TDrawingAttrTable< PRIMITIVE >::Get ( TDrawingAttrRef< PRIMITIVE >  idx) const
inline

Get the value at index idx (const version).

Definition at line 147 of file TDrawingAttrs.hxx.

◆ Get() [2/2]

template<class PRIMITIVE>
PRIMITIVE& ROOT::Experimental::Internal::TDrawingAttrTable< PRIMITIVE >::Get ( TDrawingAttrRef< PRIMITIVE >  idx)
inline

Get the value at index idx (non-const version).

Definition at line 150 of file TDrawingAttrs.hxx.

◆ GetTable() [1/2]

template<class PRIMITIVE>
std::vector<value_type>& ROOT::Experimental::Internal::TDrawingAttrTable< PRIMITIVE >::GetTable ( )
inline

Access to the underlying attribute table (non-const version).

Definition at line 157 of file TDrawingAttrs.hxx.

◆ GetTable() [2/2]

template<class PRIMITIVE>
const std::vector<value_type>& ROOT::Experimental::Internal::TDrawingAttrTable< PRIMITIVE >::GetTable ( ) const
inline

Access to the underlying attribute table (const version).

Definition at line 160 of file TDrawingAttrs.hxx.

◆ IncrUse()

template<class PRIMITIVE>
void ROOT::Experimental::Internal::TDrawingAttrTable< PRIMITIVE >::IncrUse ( TDrawingAttrRef< PRIMITIVE >  idx)
inline

Add a use of the attribute at table index idx.

Definition at line 138 of file TDrawingAttrs.hxx.

◆ Register()

template<class PRIMITIVE>
TDrawingAttrRef< PRIMITIVE > Internal::TDrawingAttrTable::Register ( const PRIMITIVE &  val)

Register an attribute with the table.

Returns
the index in the table.

Definition at line 152 of file TDrawingAttrs.cxx.

◆ SameAs()

template<class PRIMITIVE>
TDrawingAttrRef< PRIMITIVE > Internal::TDrawingAttrTable::SameAs ( const PRIMITIVE &  val)

Find the index belonging to the attribute at the given address and add a use.

Returns
the reference to val, which might be IsInvalid() if val is not part of this table.

Definition at line 167 of file TDrawingAttrs.cxx.

◆ Update()

template<class PRIMITIVE>
void ROOT::Experimental::Internal::TDrawingAttrTable< PRIMITIVE >::Update ( TDrawingAttrRef< PRIMITIVE >  idx,
const PRIMITIVE &  val 
)
inline

Update an existing attribute entry in the table.

Definition at line 144 of file TDrawingAttrs.hxx.

Member Data Documentation

◆ fTable

template<class PRIMITIVE>
std::vector<value_type> ROOT::Experimental::Internal::TDrawingAttrTable< PRIMITIVE >::fTable
private

Table of attribute primitives.

Slots can be freed and re-used. Drawing options will reference slots in here through their index.

Definition at line 130 of file TDrawingAttrs.hxx.

Libraries for ROOT::Experimental::Internal::TDrawingAttrTable< PRIMITIVE >:
[legend]

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