ATLAS Offline Software
Loading...
Searching...
No Matches
ExpressionParserUserBase< T_Base, NUM_PARSER > Class Template Reference

#include <ExpressionParserUser.h>

Inheritance diagram for ExpressionParserUserBase< T_Base, NUM_PARSER >:
Collaboration diagram for ExpressionParserUserBase< T_Base, NUM_PARSER >:

Public Member Functions

template<typename... Args>
 ExpressionParserUserBase (Args...args)
virtual ~ExpressionParserUserBase ()=default
StatusCode finalizeParser ()
virtual bool updateDataNeeds (const std::vector< const DataObjID * > &input_data_in, const std::vector< const DataObjID * > &output_data_in, std::vector< Gaudi::DataHandle * > &new_input_handles, std::vector< Gaudi::DataHandle * > &new_output_handles) override
 Inform a dynamic data consumer about all consumed or produced data.
virtual bool renounceInput (const DataObjID &output_data_id) override

Protected Member Functions

StatusCode _initializeParser (const ExpressionParsing::SelectionArg< NUM_PARSER > &selection_string, ExpressionParsing::AppendLoaderFunc pre_xaod_loader=ExpressionParsing::NoLoaderFunc, ExpressionParsing::AppendLoaderFunc post_xaod_loader=ExpressionParsing::NoLoaderFunc)

Protected Attributes

ExpressionParsing::SGxAODProxyLoaderm_xAODProxyLoader = nullptr
 The expression parser.
std::unique_ptr< ExpressionParsing::IProxyLoaderm_proxyLoaders
std::conditional< NUM_PARSER==1, std::unique_ptr< ExpressionParsing::ExpressionParser >, std::array< std::unique_ptr< ExpressionParsing::ExpressionParser >, NUM_PARSER > >::type m_parser
std::vector< std::string > m_renounce

Detailed Description

template<class T_Base, unsigned short const NUM_PARSER>
class ExpressionParserUserBase< T_Base, NUM_PARSER >

Definition at line 71 of file ExpressionParserUser.h.

Constructor & Destructor Documentation

◆ ExpressionParserUserBase()

template<class T_Base, unsigned short const NUM_PARSER>
template<typename... Args>
ExpressionParserUserBase< T_Base, NUM_PARSER >::ExpressionParserUserBase ( Args... args)
inline

Definition at line 77 of file ExpressionParserUser.h.

◆ ~ExpressionParserUserBase()

template<class T_Base, unsigned short const NUM_PARSER>
virtual ExpressionParserUserBase< T_Base, NUM_PARSER >::~ExpressionParserUserBase ( )
virtualdefault

Member Function Documentation

◆ _initializeParser()

template<class T_Base, unsigned short const NUM_PARSER>
StatusCode ExpressionParserUserBase< T_Base, NUM_PARSER >::_initializeParser ( const ExpressionParsing::SelectionArg< NUM_PARSER > & selection_string,
ExpressionParsing::AppendLoaderFunc pre_xaod_loader = ExpressionParsing::NoLoaderFunc,
ExpressionParsing::AppendLoaderFunc post_xaod_loader = ExpressionParsing::NoLoaderFunc )
protected

◆ finalizeParser()

template<class T_Base, unsigned short const NUM_PARSER>
StatusCode ExpressionParserUserBase< T_Base, NUM_PARSER >::finalizeParser ( )

◆ renounceInput()

template<class T_Base, unsigned short const NUM_PARSER>
virtual bool ExpressionParserUserBase< T_Base, NUM_PARSER >::renounceInput ( const DataObjID & output_data_id)
overridevirtual

◆ updateDataNeeds()

template<class T_Base, unsigned short const NUM_PARSER>
virtual bool ExpressionParserUserBase< T_Base, NUM_PARSER >::updateDataNeeds ( const std::vector< const DataObjID * > & input_data_in,
const std::vector< const DataObjID * > & output_data_in,
std::vector< Gaudi::DataHandle * > & new_input_handles,
std::vector< Gaudi::DataHandle * > & new_output_handles )
overridevirtual

Inform a dynamic data consumer about all consumed or produced data.

Parameters
input_data_inthe input data object IDs of all algorithms and tools
output_data_inthe output data object IDs of all algorithms and tools
new_input_handlesthe new input data handles added by this call
new_output_handlesthe new output data handles added by this call
Returns
true if the consumer did update its handles, false otherwise

Implements IDynamicDataConsumer.

Member Data Documentation

◆ m_parser

template<class T_Base, unsigned short const NUM_PARSER>
std::conditional<NUM_PARSER==1,std::unique_ptr<ExpressionParsing::ExpressionParser>,std::array<std::unique_ptr<ExpressionParsing::ExpressionParser>,NUM_PARSER>>::type ExpressionParserUserBase< T_Base, NUM_PARSER >::m_parser
protected

Definition at line 100 of file ExpressionParserUser.h.

◆ m_proxyLoaders

template<class T_Base, unsigned short const NUM_PARSER>
std::unique_ptr<ExpressionParsing::IProxyLoader> ExpressionParserUserBase< T_Base, NUM_PARSER >::m_proxyLoaders
protected

Definition at line 97 of file ExpressionParserUser.h.

◆ m_renounce

template<class T_Base, unsigned short const NUM_PARSER>
std::vector<std::string> ExpressionParserUserBase< T_Base, NUM_PARSER >::m_renounce
protected

Definition at line 102 of file ExpressionParserUser.h.

◆ m_xAODProxyLoader

template<class T_Base, unsigned short const NUM_PARSER>
ExpressionParsing::SGxAODProxyLoader* ExpressionParserUserBase< T_Base, NUM_PARSER >::m_xAODProxyLoader = nullptr
protected

The expression parser.

Definition at line 96 of file ExpressionParserUser.h.


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