ATLAS Offline Software
Loading...
Searching...
No Matches
JetEnergyResult.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2018 CERN for the benefit of the ATLAS collaboration
3*/
4
5
6// Local include(s):
8
9// Local include(s):
12
13// STL includes
14#include <sstream>
15#include <iomanip>
16
17namespace ROIB {
18
19 JetEnergyResult::JetEnergyResult( Header&& head, Trailer&& trail, std::vector< JetEnergyRoI >&& roIVector )
20 : m_JetEnergyResultHeader( std::move(head) ), m_JetEnergyResultTrailer( std::move(trail) ),
21 m_JetEnergyResultRoIVec( std::move(roIVector) ) {
22
23 }
24
30
33 }
34
38
39 const std::vector< JetEnergyRoI >& JetEnergyResult::roIVec() const {
41 }
42
43 const std::string JetEnergyResult::dump() const
44 {
45 std::ostringstream s;
46
47 s << " [" << this->header().dump() << "] ";
48 s << " [";
49 for (std::vector<JetEnergyRoI>::size_type i(0); i < roIVec().size(); ++i) {
50 s << LVL1CTP::convertToHex(roIVec()[i].roIWord());
51 }
52 s << "] ";
53 s << " [" << this->trailer().dump() << "] ";
54
55 return s.str();
56 }
57
58 const std::string JetEnergyResult::print(const bool longFormat) const
59 {
60 std::ostringstream s;
61
62 s << "\n header [" << this->header().print(longFormat) << "] ";
63 if (longFormat) s << std::endl;
64
65 for (std::vector<JetEnergyRoI>::size_type i(0); i < roIVec().size(); ++i) {
66
67 unsigned int type = roIVec()[i].roIType();
68
69 if (i == 0 || longFormat) s << "data";
70 if (longFormat) s << "[" << std::setw(2) << i << "]";
71
72 s << " [";
73 if (longFormat) s << LVL1CTP::convertToHex(roIVec()[i].roIWord());
74 if (longFormat) s << std::setw(12) << "\n Type: ";
75 s << " " << type;
76 if (longFormat) s << std::setw(12) << "\n ID: ";
77 s << " " << roIVec()[i].electronicsID();
79 if (longFormat) s << std::setw(12) << "\n Threshold: ";
80 using namespace LVL1CTP; // for importing operator<<
81 s << " " << roIVec()[i].thresholds();
83 if (longFormat) s << std::setw(12) << "\n jetEt: ";
84 s << " " << roIVec()[i].jetEt();
86 if (longFormat) s << std::setw(12) << "\n energyX: ";
87 s << " " << roIVec()[i].energyX();
89 if (longFormat) s << std::setw(12) << "\n energyY: ";
90 s << " " << roIVec()[i].energyY();
91 if (longFormat) s << std::setw(12) << "\n etSumThresholds: ";
92 using namespace LVL1CTP; // for importing operator<<
93 s << " " << roIVec()[i].etSumThresholds();
95 if (longFormat) s << std::setw(12) << "\n energySum: ";
96 s << " " << roIVec()[i].energySum();
97 if (longFormat) s << std::setw(12) << "\n etMissThresholds: ";
98 using namespace LVL1CTP; // for importing operator<<
99 s << " " << roIVec()[i].etMissThresholds();
100 }
101 s << "] ";
102 }
103 s << "trailer [" << this->trailer().print(longFormat) << "] ";
104
105 return s.str();
106 }
107
108} // namespace ROIB
Header models the LVL1 ROD Header.
const std::string print(const bool longFormat=false) const
print object content in a human readable format to string
const std::string dump() const
dump raw object content to string
const std::string print(const bool longFormat=false) const
print object content in a human readable format to string
std::vector< JetEnergyRoI > m_JetEnergyResultRoIVec
raw data content (RoIs)
const Header & header() const
const std::vector< JetEnergyRoI > & roIVec() const
Trailer m_JetEnergyResultTrailer
trailer fragment in LVL1 eformat
const std::string dump() const
dump raw object content to string
const Trailer & trailer() const
Header m_JetEnergyResultHeader
header fragment in LVL1 eformat
ROIB::Trailer models the LVL1 ROD Trailer.
Definition Trailer.h:37
const std::string dump() const
dump raw object content to string
Definition Trailer.cxx:45
const std::string print(const bool longFormat=false) const
print object content in a human readable format to string
Definition Trailer.cxx:56
std::string head(std::string s, const std::string &pattern)
head of a string
const std::string convertToHex(const uint32_t word)
helper function to dump a number in hex format
Namespace of the LVL1 RoIB simulation.
STL namespace.