ATLAS Offline Software
Trigger
TrigT1
L1Topo
L1TopoAlgorithms
Root
jJetNoSort.cxx
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3
*/
4
// jJetNoSort.cxx
5
// TopoCore
6
// Algorithm to generate ALL lists of jJet TOBs
7
8
#include "
L1TopoAlgorithms/jJetNoSort.h
"
9
#include "
L1TopoEvent/TOBArray.h
"
10
#include "
L1TopoEvent/jJetTOBArray.h
"
11
#include "
L1TopoEvent/GenericTOB.h
"
12
#include <algorithm>
13
14
REGISTER_ALG_TCS
(jJetNoSort)
15
16
17
// constructor
18
TCS
::
jJetNoSort
::
jJetNoSort
(
const
std::
string
&
name
) :
19
SortingAlg
(
name
)
20
{
21
defineParameter(
"InputWidth"
, 64 );
// for FW
22
defineParameter(
"OutputWidth"
, 64 );
23
defineParameter(
"NumRegisters"
, 2);
// for FW
24
}
25
26
27
TCS::jJetNoSort::~jJetNoSort
()
28
{}
29
30
TCS::StatusCode
31
TCS::jJetNoSort::initialize
() {
32
m_numberOfjJets = parameter(
"OutputWidth"
).value();
33
return
TCS::StatusCode::SUCCESS
;
34
}
35
36
37
38
39
TCS::StatusCode
40
TCS::jJetNoSort::sort
(
const
InputTOBArray
&
input
,
TOBArray
&
output
) {
41
const
jJetTOBArray
&
jets
=
dynamic_cast<
const
jJetTOBArray
&
>
(
input
);
42
43
// fill output array with GenericTOBs builds from jets
44
for
(
jJetTOBArray::const_iterator
jet
=
jets
.begin();
jet
!=
jets
.end(); ++
jet
) {
45
output
.push_back(
GenericTOB
(**
jet
) );
46
}
47
48
49
// keep only max number of jets
50
int
par
= m_numberOfjJets ;
51
unsigned
int
maxNumberOfjJets = std::clamp(
par
, 0, std::abs(
par
));
52
if
(maxNumberOfjJets>0) {
53
while
(
output
.size()> maxNumberOfjJets ) {
54
output
.pop_back();
55
}
56
}
57
return
TCS::StatusCode::SUCCESS
;
58
}
59
TCS::StatusCode::SUCCESS
@ SUCCESS
Definition:
Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/StatusCode.h:17
TCS::jJetNoSort::sort
virtual TCS::StatusCode sort(const InputTOBArray &input, TOBArray &output) override final
Definition:
jJetNoSort.cxx:40
TCS::DataArrayImpl< jJetTOB >::const_iterator
data_t::const_iterator const_iterator
Definition:
DataArrayImpl.h:18
jJetTOBArray.h
TCS::jJetNoSort
Definition:
jJetNoSort.h:19
const
bool const RAWDATA *ch2 const
Definition:
LArRodBlockPhysicsV0.cxx:560
TCS::jJetNoSort::initialize
virtual TCS::StatusCode initialize() override
Definition:
jJetNoSort.cxx:31
TCS::jJetNoSort::~jJetNoSort
virtual ~jJetNoSort()
Definition:
jJetNoSort.cxx:27
jet
Definition:
JetCalibTools_PlotJESFactors.cxx:23
TCS::InputTOBArray
Definition:
InputTOBArray.h:15
PlotPulseshapeFromCool.input
input
Definition:
PlotPulseshapeFromCool.py:106
TOBArray.h
TCS::TOBArray
Definition:
TOBArray.h:24
TCS::jJetTOBArray
Definition:
L1Topo/L1TopoEvent/L1TopoEvent/jJetTOBArray.h:19
merge.output
output
Definition:
merge.py:17
TCS::GenericTOB
Definition:
GenericTOB.h:35
REGISTER_ALG_TCS
#define REGISTER_ALG_TCS(CLASS)
Definition:
AlgFactory.h:62
name
std::string name
Definition:
Control/AthContainers/Root/debug.cxx:228
createCoolChannelIdFile.par
par
Definition:
createCoolChannelIdFile.py:29
TCS::SortingAlg
Definition:
SortingAlg.h:18
GenericTOB.h
jJetNoSort.h
TCS
Definition:
Global/GlobalSimulation/src/IO/Decision.h:18
defineDB.jets
list jets
Definition:
JetTagCalibration/share/defineDB.py:24
TCS::StatusCode
Definition:
Trigger/TrigT1/L1Topo/L1TopoCommon/L1TopoCommon/StatusCode.h:15
Generated on Sun Dec 22 2024 21:12:44 for ATLAS Offline Software by
1.8.18