ATLAS Offline Software
IOnnxRuntimeSessionTool.h
Go to the documentation of this file.
1 // Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
2 #ifndef AthOnnx_IOnnxRUNTIMESESSIONTool_H
3 #define AthOnnx_IOnnxRUNTIMESESSIONTool_H
4 
5 #include "AsgTools/IAsgTool.h"
6 
7 #include <onnxruntime_cxx_api.h>
8 
9 
10 namespace AthOnnx {
11  // class IAlgTool
12  //
13  // Interface class for creating Onnx Runtime sessions.
14  //
15  // @author Xiangyang Ju <xju@cern.ch>
16  //
17  class IOnnxRuntimeSessionTool : virtual public asg::IAsgTool
18  {
20 
21  public:
22 
23  // Create Onnx Runtime session
24  virtual Ort::Session& session() const = 0;
25 
26  };
27 
28 } // namespace AthOnnx
29 
30 #endif
asg::IAsgTool
Base class for the dual-use tool interface classes.
Definition: IAsgTool.h:41
python.oracle.Session
Session
Definition: oracle.py:78
ASG_TOOL_INTERFACE
#define ASG_TOOL_INTERFACE(CLASSNAME)
Definition: AsgToolMacros.h:40
IAsgTool.h
AthOnnx::IOnnxRuntimeSessionTool::session
virtual Ort::Session & session() const =0
AthOnnx::IOnnxRuntimeSessionTool
Definition: IOnnxRuntimeSessionTool.h:18
AthOnnx
Namespace holding all of the Onnx Runtime example code.
Definition: EvaluateModel.cxx:13