ATLAS Offline Software
Loading...
Searching...
No Matches
IRNNTool.h
Go to the documentation of this file.
1// This is -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef ATH_IRNNTOOL_H
8#define ATH_IRNNTOOL_H
9
10/**********************************************************************************
11 * @Package: PhysicsAnpProd
12 * @Class : IRNNTool
13 * @Author : Rustem Ospanov
14 *
15 * @Brief :
16 *
17 * Interface for tool to compute RNN output
18 *
19 **********************************************************************************/
20
21// Gaudi
22#include "GaudiKernel/IAlgTool.h"
23#include "GaudiKernel/ToolHandle.h"
24
25// C/C++
26#include <set>
27
28namespace Prompt
29{
30 // Forward declarations
31 class VarHolder;
32
33 // Main body
34
35 static const InterfaceID IID_IRNNTool ( "Prompt::IRNNTool", 1, 0 );
36
37 class IRNNTool : public virtual IAlgTool
38 {
39 /*
40 Interface of the RNN tool, which will take the input of VarHolder vector and predict RNN score for different categories.
41 */
42 public:
43
44 static const InterfaceID& interfaceID() { return IID_IRNNTool; }
45
46 virtual StatusCode initialize() override = 0;
47
48 virtual std::map<std::string, double> computeRNNOutput(
49 const std::vector<Prompt::VarHolder> &tracks
50 ) = 0;
51
52 virtual std::set<std::string> getOutputLabels() const = 0;
53 };
54}
55
56#endif
virtual std::set< std::string > getOutputLabels() const =0
virtual std::map< std::string, double > computeRNNOutput(const std::vector< Prompt::VarHolder > &tracks)=0
static const InterfaceID & interfaceID()
Definition IRNNTool.h:44
virtual StatusCode initialize() override=0
static const InterfaceID IID_IRNNTool("Prompt::IRNNTool", 1, 0)