Loading [MathJax]/extensions/tex2jax.js
The Gaudi Framework  v38r0 (2143aa4c)
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
ITupleTool.h
Go to the documentation of this file.
1 /***********************************************************************************\
2 * (c) Copyright 1998-2019 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 #ifndef GAUDIALG_ITUPLETOOL_H
12 #define GAUDIALG_ITUPLETOOL_H 1
13 // ============================================================================
14 // Include files
15 // ============================================================================
16 // STD & STL
17 // ============================================================================
18 #include <string>
19 // ============================================================================
20 // Gaudi
21 // ============================================================================
22 #include "GaudiKernel/ClassID.h"
23 #include "GaudiKernel/IAlgTool.h"
24 // ============================================================================
25 // GaudiAlg
26 // ============================================================================
27 #include "GaudiAlg/Tuple.h"
28 #include "GaudiAlg/TupleID.h"
29 // ============================================================================
30 
31 // ============================================================================
38 // ============================================================================
39 
40 class GAUDI_API ITupleTool : virtual public IAlgTool {
41 public:
44 
47 
67  virtual Tuple nTuple( const std::string& title, const CLID& clid = CLID_ColumnWiseTuple ) const = 0;
68 
69  virtual Tuple nTuple( const TupleID& ID, const std::string& title = "",
70  const CLID& clid = CLID_ColumnWiseTuple ) const = 0;
71 
72  virtual Tuple evtCol( const std::string& title, const CLID& clid = CLID_RowWiseTuple ) const = 0;
73 
74  virtual Tuple evtCol( const TupleID& ID, const std::string& title = "",
75  const CLID& clid = CLID_RowWiseTuple ) const = 0;
76 };
77 
78 // ============================================================================
79 #endif // GAUDIALG_ITUPLETOOL_H
ITupleTool::Tuple
Tuples::Tuple Tuple
Definition: ITupleTool.h:46
TupleID.h
Tuple.h
std::string
STL class.
IAlgTool
Definition: IAlgTool.h:33
GaudiAlg::ID
Definition: GaudiHistoID.h:53
ITupleTool::DeclareInterfaceID
DeclareInterfaceID(ITupleTool, 2, 0)
InterfaceID.
ClassID.h
ITupleTool::TupleID
Tuples::TupleID TupleID
Definition: ITupleTool.h:45
ITupleTool::evtCol
virtual Tuple evtCol(const std::string &title, const CLID &clid=CLID_RowWiseTuple) const =0
ITupleTool::nTuple
virtual Tuple nTuple(const TupleID &ID, const std::string &title="", const CLID &clid=CLID_ColumnWiseTuple) const =0
ITupleTool::evtCol
virtual Tuple evtCol(const TupleID &ID, const std::string &title="", const CLID &clid=CLID_RowWiseTuple) const =0
IAlgTool.h
Tuples::Tuple
A simple wrapper class over standard Gaudi NTuple::Tuple facility.
Definition: Tuple.h:126
CLID
unsigned int CLID
Class ID definition.
Definition: ClassID.h:18
ITupleTool::nTuple
virtual Tuple nTuple(const std::string &title, const CLID &clid=CLID_ColumnWiseTuple) const =0
get N-tuple object ( book on-demand ) with unique identifier
ITupleTool
Definition: ITupleTool.h:40
GAUDI_API
#define GAUDI_API
Definition: Kernel.h:81