ATLAS Offline Software
ShowData.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #include <iostream>
6 #include <sstream>
7 
8 template <class Type> class ShowData
9 {
10  public:
11  const Type* m_object;
12  const std::string m_element;
13  const bool m_detail;
14 
15  public:
16  ShowData(const Type*,const std::string&,bool);
17  ShowData(const Type&,const std::string&,bool);
18  ~ShowData() {}
19 };
20 
21 template <class Type>
22 ShowData<Type>::ShowData(const Type& obj,const std::string& element,bool detail) :
23  m_object(&obj),m_element(element),m_detail(detail) {}
24 
25 
26 template <class Type>
27 ShowData<Type>::ShowData(const Type* obj,const std::string& element,bool detail) :
28  m_object(obj),m_element(element),m_detail(detail) {}
29 
30 
31 template <class Type> std::ostream& operator<<
32  (std::ostream& stream,const ShowData<Type>& data)
33 {
34  std::ostringstream display;
35  data.m_object->PrintElement(display,data.m_element,data.m_detail);
36  stream << display.str();
37  return stream;
38 }
39 
data
char data[hepevt_bytes_allocation_ATLAS]
Definition: HepEvt.cxx:11
ShowData
Definition: ShowData.h:9
detail
Definition: extract_histogram_tag.cxx:14
AthenaPoolTestWrite.stream
string stream
Definition: AthenaPoolTestWrite.py:12
ShowData::m_element
const std::string m_element
Definition: ShowData.h:12
ShowData::m_detail
const bool m_detail
Definition: ShowData.h:13
xAODType
Definition: ObjectType.h:13
pyroot.display
display
Definition: pyroot.py:44
ShowData::~ShowData
~ShowData()
Definition: ShowData.h:18
ShowData::ShowData
ShowData(const Type *, const std::string &, bool)
Definition: ShowData.h:27
python.PyAthena.obj
obj
Definition: PyAthena.py:132
ShowData::m_object
const Type * m_object
Definition: ShowData.h:11