ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsAnalysis
JetTagging
FlavorTagInference
FlavorTagInference
PassThroughSaltModel.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2026 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
#ifndef FLAVORTAGINFERENCE_PASSTHROUGHSALTMODEL_H
6
#define FLAVORTAGINFERENCE_PASSTHROUGHSALTMODEL_H
7
8
#include "
FlavorTagInference/ISaltModel.h
"
9
#include "
FlavorTagInference/SaltModelGraphConfig.h
"
10
#include "nlohmann/json.hpp"
11
12
#include <string>
13
#include <vector>
14
#include <map>
15
16
namespace
FlavorTagInference
{
17
25
class
PassThroughSaltModel
:
public
ISaltModel
{
26
public
:
47
PassThroughSaltModel
(
const
nlohmann::json& config);
48
virtual
~PassThroughSaltModel
() =
default
;
49
50
InferenceOutput
runInference
(
InputMap
& gnn_inputs)
const override
;
51
52
const
SaltModelGraphConfig::GraphConfig
getGraphConfig
()
const override
;
53
const
OutputConfig
&
getOutputConfig
()
const override
;
54
SaltModelVersion
getSaltModelVersion
()
const override
;
55
const
std::string&
getModelName
()
const override
;
56
57
private
:
58
std::string
m_model_name
;
59
SaltModelGraphConfig::GraphConfig
m_graph_config
;
60
OutputConfig
m_output_config
;
61
63
std::vector<std::string>
m_jet_input_names
;
65
std::vector<std::string>
m_jet_output_names
;
66
68
struct
ConstituentNode
{
69
std::string
node_name
;
70
std::string
input_key
;
71
size_t
num_vars
= 0;
72
std::vector<std::string>
output_names
;
73
std::vector<std::string>
var_types
;
74
};
75
std::vector<ConstituentNode>
m_constituent_nodes
;
76
};
77
78
}
// namespace FlavorTagInference
79
80
#endif
ISaltModel.h
SaltModelGraphConfig.h
FlavorTagInference::ISaltModel
Definition
ISaltModel.h:47
FlavorTagInference::PassThroughSaltModel::getModelName
const std::string & getModelName() const override
Definition
PassThroughSaltModel.cxx:252
FlavorTagInference::PassThroughSaltModel::m_constituent_nodes
std::vector< ConstituentNode > m_constituent_nodes
Definition
PassThroughSaltModel.h:75
FlavorTagInference::PassThroughSaltModel::m_graph_config
SaltModelGraphConfig::GraphConfig m_graph_config
Definition
PassThroughSaltModel.h:59
FlavorTagInference::PassThroughSaltModel::~PassThroughSaltModel
virtual ~PassThroughSaltModel()=default
FlavorTagInference::PassThroughSaltModel::m_jet_output_names
std::vector< std::string > m_jet_output_names
Scalar jet variables: output names (matching by index).
Definition
PassThroughSaltModel.h:65
FlavorTagInference::PassThroughSaltModel::PassThroughSaltModel
PassThroughSaltModel(const nlohmann::json &config)
Construct from a JSON config with the format: { "model_name": "PassThrough", "jet_variables": [ {"inp...
Definition
PassThroughSaltModel.cxx:10
FlavorTagInference::PassThroughSaltModel::getGraphConfig
const SaltModelGraphConfig::GraphConfig getGraphConfig() const override
Definition
PassThroughSaltModel.cxx:240
FlavorTagInference::PassThroughSaltModel::runInference
InferenceOutput runInference(InputMap &gnn_inputs) const override
Definition
PassThroughSaltModel.cxx:129
FlavorTagInference::PassThroughSaltModel::m_model_name
std::string m_model_name
Definition
PassThroughSaltModel.h:58
FlavorTagInference::PassThroughSaltModel::getOutputConfig
const OutputConfig & getOutputConfig() const override
Definition
PassThroughSaltModel.cxx:244
FlavorTagInference::PassThroughSaltModel::m_output_config
OutputConfig m_output_config
Definition
PassThroughSaltModel.h:60
FlavorTagInference::PassThroughSaltModel::getSaltModelVersion
SaltModelVersion getSaltModelVersion() const override
Definition
PassThroughSaltModel.cxx:248
FlavorTagInference::PassThroughSaltModel::m_jet_input_names
std::vector< std::string > m_jet_input_names
Scalar jet variables: input names (graph config order).
Definition
PassThroughSaltModel.h:63
FlavorTagInference
This file contains "getter" functions used for accessing tagger inputs from the EDM.
Definition
CaloClusterLoader.h:27
FlavorTagInference::OutputConfig
std::vector< SaltModelOutput > OutputConfig
Definition
ISaltModel.h:38
FlavorTagInference::SaltModelVersion
SaltModelVersion
Definition
ISaltModel.h:26
FlavorTagInference::InputMap
std::map< std::string, Inputs, std::less<> > InputMap
Definition
ISaltModel.h:37
FlavorTagInference::InferenceOutput
Definition
ISaltModel.h:40
FlavorTagInference::PassThroughSaltModel::ConstituentNode
Per-constituent node config.
Definition
PassThroughSaltModel.h:68
FlavorTagInference::PassThroughSaltModel::ConstituentNode::num_vars
size_t num_vars
number of variables in this node
Definition
PassThroughSaltModel.h:71
FlavorTagInference::PassThroughSaltModel::ConstituentNode::output_names
std::vector< std::string > output_names
per-variable output names
Definition
PassThroughSaltModel.h:72
FlavorTagInference::PassThroughSaltModel::ConstituentNode::node_name
std::string node_name
e.g. "tracks_r22loose_sd0sort" (drives ConstituentsLoader sort/select regex)
Definition
PassThroughSaltModel.h:69
FlavorTagInference::PassThroughSaltModel::ConstituentNode::var_types
std::vector< std::string > var_types
per-variable: "float", "int", or "char"
Definition
PassThroughSaltModel.h:73
FlavorTagInference::PassThroughSaltModel::ConstituentNode::input_key
std::string input_key
key in gnn_inputs, read from JSON "input_key" (e.g. "tracks", "flows")
Definition
PassThroughSaltModel.h:70
FlavorTagInference::SaltModelGraphConfig::GraphConfig
Definition
SaltModelGraphConfig.h:36
Generated on
for ATLAS Offline Software by
1.17.0