ATLAS Offline Software
SaltModelGraphConfig.h
Go to the documentation of this file.
1 /*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 # pragma once
5 
6 #include <iostream>
7 #include <fstream>
8 #include <sstream>
9 #include <string>
10 #include <nlohmann/json.hpp>
11 
12 namespace FlavorTagInference {
13  namespace SaltModelGraphConfig {
14  struct Input
15  {
16  std::string name;
17  double offset;
18  double scale;
19  };
20 
22  {
23  std::string name;
24  std::vector<Input> variables;
25  std::map<std::string, std::string> miscellaneous;
26  std::map<std::string, double> defaults;
27  };
28 
30  {
31  std::vector<std::string> labels;
32  std::size_t node_index;
33  };
34 
35  struct GraphConfig
36  {
37  std::vector<InputNodeConfig> inputs;
38  std::vector<InputNodeConfig> input_sequences;
39  std::map<std::string, OutputNodeConfig> outputs;
40  };
41 
46  }
47 }
FlavorTagInference::SaltModelGraphConfig::OutputNodeConfig
Definition: SaltModelGraphConfig.h:30
FlavorTagInference::SaltModelGraphConfig::get_input
Input get_input(const nlohmann::json &v)
Definition: SaltModelGraphConfig.cxx:9
FlavorTagInference::SaltModelGraphConfig::Input
Definition: SaltModelGraphConfig.h:15
FlavorTagInference
This file contains "getter" functions used for accessing tagger inputs from the EDM.
Definition: AssociationEnums.h:11
json
nlohmann::json json
Definition: HistogramDef.cxx:9
FlavorTagInference::SaltModelGraphConfig::parse_json_graph
GraphConfig parse_json_graph(const nlohmann::json &metadata)
Definition: SaltModelGraphConfig.cxx:40
FlavorTagInference::SaltModelGraphConfig::Input::scale
double scale
Definition: SaltModelGraphConfig.h:18
FlavorTagInference::SaltModelGraphConfig::InputNodeConfig::miscellaneous
std::map< std::string, std::string > miscellaneous
Definition: SaltModelGraphConfig.h:25
FlavorTagInference::SaltModelGraphConfig::InputNodeConfig::name
std::string name
Definition: SaltModelGraphConfig.h:23
FlavorTagInference::SaltModelGraphConfig::OutputNodeConfig::node_index
std::size_t node_index
Definition: SaltModelGraphConfig.h:32
FlavorTagInference::SaltModelGraphConfig::get_input_node
InputNodeConfig get_input_node(const nlohmann::json &v)
Definition: SaltModelGraphConfig.cxx:16
FlavorTagInference::SaltModelGraphConfig::GraphConfig::input_sequences
std::vector< InputNodeConfig > input_sequences
Definition: SaltModelGraphConfig.h:38
python.checkMetadata.metadata
metadata
Definition: checkMetadata.py:175
FlavorTagInference::SaltModelGraphConfig::Input::name
std::string name
Definition: SaltModelGraphConfig.h:16
FlavorTagInference::SaltModelGraphConfig::OutputNodeConfig::labels
std::vector< std::string > labels
Definition: SaltModelGraphConfig.h:31
FlavorTagInference::SaltModelGraphConfig::InputNodeConfig
Definition: SaltModelGraphConfig.h:22
FlavorTagInference::SaltModelGraphConfig::GraphConfig::outputs
std::map< std::string, OutputNodeConfig > outputs
Definition: SaltModelGraphConfig.h:39
FlavorTagInference::SaltModelGraphConfig::GraphConfig::inputs
std::vector< InputNodeConfig > inputs
Definition: SaltModelGraphConfig.h:37
FlavorTagInference::SaltModelGraphConfig::get_output_node
OutputNodeConfig get_output_node(const nlohmann::json &v)
Definition: SaltModelGraphConfig.cxx:29
FlavorTagInference::SaltModelGraphConfig::InputNodeConfig::variables
std::vector< Input > variables
Definition: SaltModelGraphConfig.h:24
python.PyAthena.v
v
Definition: PyAthena.py:154
FlavorTagInference::SaltModelGraphConfig::GraphConfig
Definition: SaltModelGraphConfig.h:36
FlavorTagInference::SaltModelGraphConfig::InputNodeConfig::defaults
std::map< std::string, double > defaults
Definition: SaltModelGraphConfig.h:26
FlavorTagInference::SaltModelGraphConfig::Input::offset
double offset
Definition: SaltModelGraphConfig.h:17