ATLAS Offline Software
Loading...
Searching...
No Matches
RelayAccessor.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3 */
4#ifndef EXPRESSIONPARSING_RELAYACCESSOR_H
5#define EXPRESSIONPARSING_RELAYACCESSOR_H
6#include "IProxyLoader"
7
8namespace ExpressionParsing {
10 class RelayAccessor : public IProxyLoader {
11 public:
12 std::pair< IProxyLoader::VariableType, const IAccessor &>
13 getAccessorFromString([[maybe_unused]] const EventContext &ctx, const std::string &varname) const {
14 return std::make_pair(variableTypeFromString(varname), *this);
15 }
16
17 virtual VariableType variableType() const override {
19 }
20
21 virtual IProxyLoader::VariableType TestProxyLoader::variableTypeFromString(const std::string &varname) const = 0;
22 };
23}
24#endif;
IAccessor::VariableType VariableType
convenience base class to turn proxy loaders into cachable accessors
virtual IProxyLoader::VariableType TestProxyLoader::variableTypeFromString(const std::string &varname) const =0
virtual VariableType variableType() const override
std::pair< IProxyLoader::VariableType, const IAccessor & > getAccessorFromString(const EventContext &ctx, const std::string &varname) const
virtual IAccessor::VariableType variableTypeFromString(const std::string &varname) const override
Namespace holding all the expression evaluation code.