DLG4::VolumeBuilders
A fluent interface for Geant4 geometry definition.
Loading...
Searching...
No Matches
Classes | Public Member Functions | Public Attributes | List of all members
UnitBase< T, NativeType >::ScalableProxy< X > Struct Template Reference

#include <DLG4Units.hh>

Collaboration diagram for UnitBase< T, NativeType >::ScalableProxy< X >:
[legend]

Classes

struct  ExpressionToken
 

Public Member Functions

 ScalableProxy (UnitBase &p)
 
 ScalableProxy (const ScalableProxy &)=delete
 
 ScalableProxy (ScalableProxy &&)=delete
 
ScalableProxyoperator= (const ScalableProxy &)=delete
 
Evaluator && operator() (const X &unit, const ExpressionToken &token=ExpressionToken{}) const
 

Public Attributes

UnitBaseparent
 

Detailed Description

template<class T, typename NativeType>
template<typename X>
struct DLG4::Units::UnitBase< T, NativeType >::ScalableProxy< X >

Definition at line 138 of file DLG4Units.hh.

Constructor & Destructor Documentation

◆ ScalableProxy() [1/3]

template<class T , typename NativeType >
template<typename X >
ScalableProxy ( UnitBase p)
inline

Definition at line 142 of file DLG4Units.hh.

◆ ScalableProxy() [2/3]

template<class T , typename NativeType >
template<typename X >
ScalableProxy ( const ScalableProxy< X > &  )
delete

◆ ScalableProxy() [3/3]

template<class T , typename NativeType >
template<typename X >
ScalableProxy ( ScalableProxy< X > &&  )
delete

Member Function Documentation

◆ operator()()

template<class T , typename NativeType >
template<typename X >
Evaluator && operator() ( const X &  unit,
const ExpressionToken token = ExpressionToken{} 
) const
inline

Definition at line 165 of file DLG4Units.hh.

165 {}) const {
166 // Initialize the evaluator directly on this call's private stack space
167 token.storage.emplace(parent, unit.Native);
168 unit.CheckUnit("Evaluator");
169 return std::move(*token.storage);
170 }

◆ operator=()

template<class T , typename NativeType >
template<typename X >
ScalableProxy & operator= ( const ScalableProxy< X > &  )
delete

Member Data Documentation

◆ parent

template<class T , typename NativeType >
template<typename X >
UnitBase& parent

Definition at line 140 of file DLG4Units.hh.


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