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

#include <ExpressionParserUserWithTrigSupport.h>

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

Public Member Functions

template<typename... Args>
 ExpressionParserUserWithTrigSupport (Args...args)
StatusCode initializeParser (ExpressionParsing::SelectionArg< NUM_PARSER > selection_string)
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

ToolHandle< Trig::TrigDecisionToolm_trigDecisionTool
 The trigger decision tool.
ExpressionParsing::SGxAODProxyLoaderm_xAODProxyLoader
 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 = 1>
class ExpressionParserUserWithTrigSupport< T_Base, NUM_PARSER >

Definition at line 15 of file ExpressionParserUserWithTrigSupport.h.

Constructor & Destructor Documentation

◆ ExpressionParserUserWithTrigSupport()

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

Definition at line 19 of file ExpressionParserUserWithTrigSupport.h.

21 m_trigDecisionTool("Trig::TrigDecisionTool/TrigDecisionTool")
22 {
23 this->declareProperty("TrigDecisionTool", m_trigDecisionTool,"");
24 }
ToolHandle< Trig::TrigDecisionTool > m_trigDecisionTool
The trigger decision tool.

Member Function Documentation

◆ _initializeParser()

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 )
protectedinherited

◆ finalizeParser()

StatusCode ExpressionParserUserBase< T_Base, NUM_PARSER >::finalizeParser ( )
inherited

◆ initializeParser()

template<class T_Base, unsigned short const NUM_PARSER = 1>
StatusCode ExpressionParserUserWithTrigSupport< T_Base, NUM_PARSER >::initializeParser ( ExpressionParsing::SelectionArg< NUM_PARSER > selection_string)
inline

Definition at line 25 of file ExpressionParserUserWithTrigSupport.h.

25 {
28 // initialise TDT explicitly, needed for the tool to properly work with trigger decisions in AthAnalysisBase (until fixed)
29 if( !this->m_trigDecisionTool.empty() ) {
30 StatusCode sc = this->m_trigDecisionTool.retrieve();
31 if (sc.isFailure()) return sc;
33 }
34 else {
35 this->m_trigDecisionTool.disable();
36 }
38 },
42 });
43 }
StatusCode _initializeParser(const ExpressionParsing::SelectionArg< NUM_PARSER > &selection_string, ExpressionParsing::AppendLoaderFunc pre_xaod_loader=ExpressionParsing::NoLoaderFunc, ExpressionParsing::AppendLoaderFunc post_xaod_loader=ExpressionParsing::NoLoaderFunc)

◆ renounceInput()

virtual bool ExpressionParserUserBase< T_Base, NUM_PARSER >::renounceInput ( const DataObjID & output_data_id)
overridevirtualinherited

◆ updateDataNeeds()

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 )
overridevirtualinherited

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

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
protectedinherited

Definition at line 100 of file ExpressionParserUser.h.

◆ m_proxyLoaders

std::unique_ptr<ExpressionParsing::IProxyLoader> ExpressionParserUserBase< T_Base, NUM_PARSER >::m_proxyLoaders
protectedinherited

Definition at line 97 of file ExpressionParserUser.h.

◆ m_renounce

std::vector<std::string> ExpressionParserUserBase< T_Base, NUM_PARSER >::m_renounce
protectedinherited

Definition at line 102 of file ExpressionParserUser.h.

◆ m_trigDecisionTool

template<class T_Base, unsigned short const NUM_PARSER = 1>
ToolHandle<Trig::TrigDecisionTool> ExpressionParserUserWithTrigSupport< T_Base, NUM_PARSER >::m_trigDecisionTool
protected

The trigger decision tool.

Definition at line 46 of file ExpressionParserUserWithTrigSupport.h.

◆ m_xAODProxyLoader

ExpressionParsing::SGxAODProxyLoader* ExpressionParserUserBase< T_Base, NUM_PARSER >::m_xAODProxyLoader
protectedinherited

The expression parser.

Definition at line 96 of file ExpressionParserUser.h.


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