The Gaudi Framework  master (82fdf313)
Loading...
Searching...
No Matches
DODBasicMapper.cpp
Go to the documentation of this file.
1/***********************************************************************************\
2* (c) Copyright 1998-2025 CERN for the benefit of the LHCb and ATLAS collaborations *
3* *
4* This software is distributed under the terms of the Apache version 2 licence, *
5* copied verbatim in the file "LICENSE". *
6* *
7* In applying this licence, CERN does not waive the privileges and immunities *
8* granted to it by virtue of its status as an Intergovernmental Organization *
9* or submit itself to any jurisdiction. *
10\***********************************************************************************/
11#include "DODBasicMapper.h"
13#include <GaudiKernel/HashMap.h>
14
15// Local implementation of parsers from HashMap
16namespace Gaudi {
17 namespace Parsers {
20 template <typename K, typename V>
21 StatusCode parse( GaudiUtils::HashMap<K, V>& result, std::string_view input ) {
22 std::map<std::string, std::string> tmp;
23 StatusCode sc = parse( tmp, input );
24 if ( sc.isSuccess() ) {
25 result.clear();
26 result.insert( tmp.begin(), tmp.end() );
27 }
28 return sc;
29 }
30 } // namespace Parsers
31} // namespace Gaudi
32
34
35Gaudi::Utils::TypeNameString DODBasicMapper::algorithmForPath( const std::string& path ) {
36 auto alg = m_algMap.find( path );
37 return ( alg != m_algMap.end() ) ? alg->second : "";
38}
39
40std::string DODBasicMapper::nodeTypeForPath( const std::string& path ) {
41 auto node = m_nodeMap.find( path );
42 return ( node != m_nodeMap.end() ) ? node->second : "";
43}
The declaration of major parsing functions used e.g for (re)implementation of new extended properties...
#define DECLARE_COMPONENT(type)
Default implementation of a DataOnDemand mapper.
MapProp< std::string > m_nodeMap
std::string nodeTypeForPath(const std::string &path) override
Gaudi::Utils::TypeNameString algorithmForPath(const std::string &path) override
MapProp< Gaudi::Utils::TypeNameString > m_algMap
Common class providing an architecture-independent hash map.
Definition HashMap.h:80
This class is used for returning status codes from appropriate routines.
Definition StatusCode.h:64
bool isSuccess() const
Definition StatusCode.h:314
StatusCode parse(GaudiUtils::HashMap< K, V > &result, std::string_view input)
Basic parser for the types of HashMap used in DODBasicMapper.
This file provides a Grammar for the type Gaudi::Accumulators::Axis It allows to use that type from p...
Definition __init__.py:1
STL namespace.