Rivet API documentation

Rivet 4.1.3
Rivet::MultiplexPtr< T > Class Template Reference

#include <RivetYODA.hh>

Public Types

using value_type = T

Public Member Functions

 MultiplexPtr (decltype(nullptr))
 MultiplexPtr (const vector< string > &weightNames, const typename T::Inner &p)
 Convenience constructor, pass through to the Multiplexer constructor.
template<typename U, typename = decltype(shared_ptr<T>(shared_ptr<U>{}))>
 MultiplexPtr (const shared_ptr< U > &p)
template<typename U, typename = decltype(shared_ptr<T>(shared_ptr<U>{}))>
 MultiplexPtr (const MultiplexPtr< U > &p)
T & operator-> ()
 Goes right through to the active Multiplexer<YODA> object's members.
template<typename U = T>
auto binning () const -> std::enable_if_t< hasBinning< typename T::Inner >::value, const typename U::Inner::BinningT & >
const T & operator-> () const
 Goes right through to the active Multiplexer<YODA> object's members.
T::Inner & operator* ()
 The active YODA object.
const T::Inner & operator* () const
 operator bool () const
 Object validity check.
bool operator! () const
 Object invalidity check.
bool operator== (const MultiplexPtr &other) const
 Object validity check.
bool operator!= (const MultiplexPtr &other) const
 Object invalidity check.
bool operator< (const MultiplexPtr &other) const
 Less-than for ptr ordering.
bool operator> (const MultiplexPtr other) const
 Greater-than for ptr ordering.
bool operator<= (const MultiplexPtr &other) const
 Less-equals for ptr ordering.
bool operator>= (const MultiplexPtr &other) const
 Greater-equals for ptr ordering.
shared_ptr< T > get () const
 Get the internal shared ptr.

Detailed Description

template<typename T>
class Rivet::MultiplexPtr< T >

Customised shared pointer of multiplexed AOs, dispatching through two layers of indirection.

The customisation is needed in order to dispatch -> and * operators all the way down to the inner YODA analysis objects.

Todo
Provide remaining functionality that shared_ptr has (not needed right now).

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