ATLAS Offline Software
Loading...
Searching...
No Matches
ExpressionParsing::ScalarHelper Class Reference

Auxiliary class to handle scalar like containers (AuxElement). More...

#include <GenAccessor.h>

Collaboration diagram for ExpressionParsing::ScalarHelper:

Static Public Member Functions

template<class T_Dest, class T_Cont, class T_Helper>
static void fillVector (T_Helper &helper, SG::ReadHandle< T_Cont > &handle, std::vector< T_Dest > &result)
template<class T_Dest, class T_Cont, class T_Helper>
static T_Dest getScalar (T_Helper &helper, SG::ReadHandle< T_Cont > &handle, const T_Dest &dummy)

Detailed Description

Auxiliary class to handle scalar like containers (AuxElement).

Definition at line 19 of file GenAccessor.h.

Member Function Documentation

◆ fillVector()

template<class T_Dest, class T_Cont, class T_Helper>
void ExpressionParsing::ScalarHelper::fillVector ( T_Helper & helper,
SG::ReadHandle< T_Cont > & handle,
std::vector< T_Dest > & result )
inlinestatic

Definition at line 22 of file GenAccessor.h.

22 {
23 result.reserve(1);
24 auto val = helper.get( *handle );
25 // @TODO or throw an exception if the type conversion is not loss-less?
26 assert( val == static_cast<decltype(val)>(static_cast<T_Dest>(val)));
27 result.push_back( static_cast<T_Dest>(val));
28 }

◆ getScalar()

template<class T_Dest, class T_Cont, class T_Helper>
T_Dest ExpressionParsing::ScalarHelper::getScalar ( T_Helper & helper,
SG::ReadHandle< T_Cont > & handle,
const T_Dest & dummy )
inlinestatic

Definition at line 31 of file GenAccessor.h.

31 {
32 (void) dummy;
33 auto val = helper.get( *handle );
34 // @TODO or throw an exception if the type conversion is not loss-less?
35 assert( val == static_cast<decltype(val)>(static_cast<T_Dest>(val)));
36 return static_cast<T_Dest>( val );
37 }

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