CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Static Public Attributes | Protected Member Functions | Private Attributes | Friends
L1GctJetLeafCard Class Reference

#include <L1GctJetLeafCard.h>

Inheritance diagram for L1GctJetLeafCard:
L1GctProcessor

Public Types

typedef L1GctTwosComplement< L1GctInternEtSum::kMissExOrEyNBitsetComponentType
 
typedef L1GctUnsignedInt< L1GctInternEtSum::kTotEtOrHtNBitsetHadType
 
typedef L1GctUnsignedInt< L1GctInternEtSum::kTotEtOrHtNBitsetTotalType
 
typedef L1GctJetFinderBase::hfTowerSumsType hfTowerSumsType
 
typedef L1GctTwosComplement< L1GctInternHtMiss::kMissHxOrHyNBitshtComponentType
 
enum  jetFinderType { tdrJetFinder, hardwareJetFinder, nullJetFinder }
 
enum  maxValues { etTotalMaxValue = L1GctInternEtSum::kTotEtOrHtMaxValue, htTotalMaxValue = L1GctInternEtSum::kTotEtOrHtMaxValue }
 

Public Member Functions

void fetchInput () override
 set the input buffers More...
 
std::vector< etTotalTypegetAllOutputEt () const
 get the Et output history More...
 
std::vector< etComponentTypegetAllOutputEx () const
 
std::vector< etComponentTypegetAllOutputEy () const
 get the Ey output history More...
 
std::vector< hfTowerSumsTypegetAllOutputHfSums () const
 
std::vector< etHadTypegetAllOutputHt () const
 
std::vector< htComponentTypegetAllOutputHx () const
 get the output Ht components history More...
 
std::vector< htComponentTypegetAllOutputHy () const
 
std::vector< L1GctInternEtSumgetInternalEtSums () const
 get the Et sums in internal component format More...
 
std::vector< L1GctInternHtMissgetInternalHtMiss () const
 
L1GctJetFinderBasegetJetFinderA () const
 get pointers to associated jetfinders More...
 
L1GctJetFinderBasegetJetFinderB () const
 
L1GctJetFinderBasegetJetFinderC () const
 
etTotalType getOutputEt () const
 get the Et output More...
 
etComponentType getOutputEx () const
 get the Ex output More...
 
etComponentType getOutputEy () const
 get the Ey output More...
 
hfTowerSumsType getOutputHfSums () const
 
etHadType getOutputHt () const
 
etComponentType getOutputHx () const
 get the output Ht components More...
 
etComponentType getOutputHy () const
 
std::vector< L1GctJetCandgetOutputJetsA () const
 Output jetfinder A jets (lowest jetFinder in phi) More...
 
std::vector< L1GctJetCandgetOutputJetsB () const
 Output jetfinder B jets (middle jetFinder in phi) More...
 
std::vector< L1GctJetCandgetOutputJetsC () const
 Ouptut jetfinder C jets (highest jetFinder in phi) More...
 
 L1GctJetLeafCard (int id, int iphi, jetFinderType jfType=tdrJetFinder)
 
void process () override
 process the data and set outputs More...
 
void reset ()
 clear internal buffers More...
 
void setBxRange (const int firstBx, const int numberOfBx)
 define the bunch crossing range to process More...
 
void setNeighbourLeafCards (const std::vector< L1GctJetLeafCard * > &neighbours)
 set pointers to neighbours - needed to complete the setup More...
 
void setNextBx (const int bx)
 partially clear buffers More...
 
bool setupOk () const
 Check setup is Ok. More...
 
 ~L1GctJetLeafCard () override
 
- Public Member Functions inherited from L1GctProcessor
 L1GctProcessor ()
 
void reset ()
 complete reset of processor More...
 
void setBxRange (const int firstBx, const int numberOfBx)
 define the bunch crossing range to process More...
 
void setNextBx (const int bxnum)
 clear input data buffers and process a new bunch crossing More...
 
void setTerse ()
 
bool setupOk () const
 Method to check the setup for this processor. Returns true by default. More...
 
void setVerbose ()
 control output messages More...
 
virtual ~L1GctProcessor ()
 

Static Public Attributes

static const int MAX_JET_FINDERS = 3
 Number of jetfinders per jet leaf card. More...
 

Protected Member Functions

void resetPipelines () override
 
void resetProcessor () override
 Separate reset methods for the processor itself and any data stored in pipelines. More...
 
void setupObjects () override
 Initialise inputs with null objects for the correct bunch crossing if required. More...
 
- Protected Member Functions inherited from L1GctProcessor
int bxAbs () const
 
int bxMax () const
 
int bxMin () const
 Support for multiple beam crossing operation. More...
 
int bxRel () const
 
int numOfBx () const
 

Private Attributes

bool m_ctorInputOk
 
etTotalType m_etSum
 
Pipeline< etTotalTypem_etSumPipe
 
etComponentType m_exSum
 
Pipeline< etComponentTypem_exSumPipe
 
etComponentType m_eySum
 
Pipeline< etComponentTypem_eySumPipe
 
hfTowerSumsType m_hfSums
 
Pipeline< hfTowerSumsTypem_hfSumsPipe
 
etHadType m_htSum
 
Pipeline< etHadTypem_htSumPipe
 
htComponentType m_hxSum
 
Pipeline< htComponentTypem_hxSumPipe
 
htComponentType m_hySum
 
Pipeline< htComponentTypem_hySumPipe
 
int m_id
 
L1GctJetFinderBasem_jetFinderA
 lowest jetFinder in phi More...
 
L1GctJetFinderBasem_jetFinderB
 middle jetFinder in phi More...
 
L1GctJetFinderBasem_jetFinderC
 highest jetFinder in phi More...
 
jetFinderType m_whichJetFinder
 
int phiPosition
 

Friends

std::ostream & operator<< (std::ostream &os, const L1GctJetLeafCard &card)
 Overload << operator. More...
 

Additional Inherited Members

- Protected Attributes inherited from L1GctProcessor
bool m_verbose
 Flag to control output messages. More...
 

Detailed Description

Definition at line 28 of file L1GctJetLeafCard.h.

Member Typedef Documentation

◆ etComponentType

Definition at line 40 of file L1GctJetLeafCard.h.

◆ etHadType

Definition at line 38 of file L1GctJetLeafCard.h.

◆ etTotalType

Definition at line 37 of file L1GctJetLeafCard.h.

◆ hfTowerSumsType

Definition at line 43 of file L1GctJetLeafCard.h.

◆ htComponentType

Definition at line 41 of file L1GctJetLeafCard.h.

Member Enumeration Documentation

◆ jetFinderType

Enumerator
tdrJetFinder 
hardwareJetFinder 
nullJetFinder 

Definition at line 31 of file L1GctJetLeafCard.h.

◆ maxValues

Enumerator
etTotalMaxValue 
htTotalMaxValue 

Definition at line 45 of file L1GctJetLeafCard.h.

Constructor & Destructor Documentation

◆ L1GctJetLeafCard()

L1GctJetLeafCard::L1GctJetLeafCard ( int  id,
int  iphi,
jetFinderType  jfType = tdrJetFinder 
)

Definition at line 15 of file L1GctJetLeafCard.cc.

16  : L1GctProcessor(),
17  m_id(id),
18  m_whichJetFinder(jfType),
20  m_exSum(0),
21  m_eySum(0),
22  m_hxSum(0),
23  m_hySum(0),
24  m_etSum(0),
25  m_htSum(0),
26  m_hfSums(),
27  m_exSumPipe(),
28  m_eySumPipe(),
29  m_hxSumPipe(),
30  m_hySumPipe(),
31  m_etSumPipe(),
32  m_htSumPipe(),
33  m_hfSumsPipe(),
34  m_ctorInputOk(true) {
35  //Check jetLeafCard setup
36  if (m_id < 0 || m_id > 5) {
37  m_ctorInputOk = false;
38  if (m_verbose) {
39  edm::LogWarning("L1GctSetupError") << "L1GctJetLeafCard::L1GctJetLeafCard() : Jet Leaf Card ID " << m_id
40  << " has been incorrectly constructed!\n"
41  << "ID number should be between the range of 0 to 5\n";
42  }
43  }
44 
45  //iphi is redundant
46  if (phiPosition != m_id % 3) {
47  m_ctorInputOk = false;
48  if (m_verbose) {
49  edm::LogWarning("L1GctSetupError") << "L1GctJetLeafCard::L1GctJetLeafCard() : Jet Leaf Card ID " << m_id
50  << " has been incorrectly constructed!\n"
51  << "Argument iphi is " << phiPosition << ", should be " << (m_id % 3)
52  << " for this ID value \n";
53  }
54  }
55 
56  switch (m_whichJetFinder) {
57  case tdrJetFinder:
58  m_jetFinderA = new L1GctTdrJetFinder(3 * id);
59  m_jetFinderB = new L1GctTdrJetFinder(3 * id + 1);
60  m_jetFinderC = new L1GctTdrJetFinder(3 * id + 2);
61  break;
62 
63  case hardwareJetFinder:
65  m_jetFinderB = new L1GctHardwareJetFinder(3 * id + 1);
66  m_jetFinderC = new L1GctHardwareJetFinder(3 * id + 2);
67  break;
68 
69  case nullJetFinder:
70  m_jetFinderA = new L1GctNullJetFinder(3 * id);
71  m_jetFinderB = new L1GctNullJetFinder(3 * id + 1);
72  m_jetFinderC = new L1GctNullJetFinder(3 * id + 2);
73  break;
74 
75  default:
76 
77  m_ctorInputOk = false;
78  if (m_verbose) {
79  edm::LogWarning("L1GctSetupError")
80  << "L1GctJetLeafCard::L1GctJetLeafCard() : Jet Leaf Card ID " << m_id
81  << " has been incorrectly constructed!\n"
82  << "Unrecognised jetFinder type " << m_whichJetFinder << ", cannot setup jetFinders\n";
83  }
84  }
85 
86  if (!m_ctorInputOk && m_verbose) {
87  edm::LogError("L1GctSetupError") << "Jet Leaf Card ID " << m_id << " has been incorrectly constructed";
88  }
89 }

References hardwareJetFinder, m_ctorInputOk, m_id, m_jetFinderA, m_jetFinderB, m_jetFinderC, L1GctProcessor::m_verbose, m_whichJetFinder, nullJetFinder, phiPosition, and tdrJetFinder.

◆ ~L1GctJetLeafCard()

L1GctJetLeafCard::~L1GctJetLeafCard ( )
override

Definition at line 91 of file L1GctJetLeafCard.cc.

91  {
92  delete m_jetFinderA;
93  delete m_jetFinderB;
94  delete m_jetFinderC;
95 }

References m_jetFinderA, m_jetFinderB, and m_jetFinderC.

Member Function Documentation

◆ fetchInput()

void L1GctJetLeafCard::fetchInput ( )
overridevirtual

set the input buffers

Implements L1GctProcessor.

Definition at line 188 of file L1GctJetLeafCard.cc.

188  {
192 }

References L1GctJetFinderBase::fetchInput(), m_jetFinderA, m_jetFinderB, and m_jetFinderC.

◆ getAllOutputEt()

std::vector<etTotalType> L1GctJetLeafCard::getAllOutputEt ( ) const
inline

get the Et output history

Definition at line 117 of file L1GctJetLeafCard.h.

117 { return m_etSumPipe.contents; }

References m_etSumPipe.

◆ getAllOutputEx()

std::vector<etComponentType> L1GctJetLeafCard::getAllOutputEx ( ) const
inline

Bunch crossing history acces methods get the Ex output history

Definition at line 107 of file L1GctJetLeafCard.h.

107 { return m_exSumPipe.contents; }

References m_exSumPipe.

◆ getAllOutputEy()

std::vector<etComponentType> L1GctJetLeafCard::getAllOutputEy ( ) const
inline

get the Ey output history

Definition at line 110 of file L1GctJetLeafCard.h.

110 { return m_eySumPipe.contents; }

References m_eySumPipe.

◆ getAllOutputHfSums()

std::vector<hfTowerSumsType> L1GctJetLeafCard::getAllOutputHfSums ( ) const
inline

Definition at line 120 of file L1GctJetLeafCard.h.

120 { return m_hfSumsPipe.contents; }

References m_hfSumsPipe.

◆ getAllOutputHt()

std::vector<etHadType> L1GctJetLeafCard::getAllOutputHt ( ) const
inline

Definition at line 118 of file L1GctJetLeafCard.h.

118 { return m_htSumPipe.contents; }

References m_htSumPipe.

◆ getAllOutputHx()

std::vector<htComponentType> L1GctJetLeafCard::getAllOutputHx ( ) const
inline

get the output Ht components history

Definition at line 113 of file L1GctJetLeafCard.h.

113 { return m_hxSumPipe.contents; }

References m_hxSumPipe.

◆ getAllOutputHy()

std::vector<htComponentType> L1GctJetLeafCard::getAllOutputHy ( ) const
inline

Definition at line 114 of file L1GctJetLeafCard.h.

114 { return m_hySumPipe.contents; }

References m_hySumPipe.

◆ getInternalEtSums()

std::vector< L1GctInternEtSum > L1GctJetLeafCard::getInternalEtSums ( ) const

get the Et sums in internal component format

Definition at line 251 of file L1GctJetLeafCard.cc.

251  {
252  std::vector<L1GctInternEtSum> result;
253  for (int bx = 0; bx < numOfBx(); bx++) {
254  result.push_back(L1GctInternEtSum::fromEmulatorJetTotEt(m_etSumPipe.contents.at(bx).value(),
255  m_etSumPipe.contents.at(bx).overFlow(),
256  static_cast<int16_t>(bx - bxMin())));
257  result.push_back(L1GctInternEtSum::fromEmulatorJetMissEt(m_exSumPipe.contents.at(bx).value(),
258  m_exSumPipe.contents.at(bx).overFlow(),
259  static_cast<int16_t>(bx - bxMin())));
260  result.push_back(L1GctInternEtSum::fromEmulatorJetMissEt(m_eySumPipe.contents.at(bx).value(),
261  m_eySumPipe.contents.at(bx).overFlow(),
262  static_cast<int16_t>(bx - bxMin())));
263  result.push_back(L1GctInternEtSum::fromEmulatorJetTotHt(m_htSumPipe.contents.at(bx).value(),
264  m_htSumPipe.contents.at(bx).overFlow(),
265  static_cast<int16_t>(bx - bxMin())));
266  }
267  return result;
268 }

References l1GtPatternGenerator_cfi::bx, L1GctProcessor::bxMin(), L1GctInternEtSum::fromEmulatorJetMissEt(), L1GctInternEtSum::fromEmulatorJetTotEt(), L1GctInternEtSum::fromEmulatorJetTotHt(), m_etSumPipe, m_exSumPipe, m_eySumPipe, m_htSumPipe, L1GctProcessor::numOfBx(), and mps_fire::result.

◆ getInternalHtMiss()

std::vector< L1GctInternHtMiss > L1GctJetLeafCard::getInternalHtMiss ( ) const

Definition at line 270 of file L1GctJetLeafCard.cc.

270  {
271  std::vector<L1GctInternHtMiss> result;
272  result.reserve(numOfBx());
273  for (int bx = 0; bx < numOfBx(); bx++) {
274  result.push_back(L1GctInternHtMiss::emulatorMissHtxHty(m_hxSumPipe.contents.at(bx).value(),
275  m_hySumPipe.contents.at(bx).value(),
276  m_hxSumPipe.contents.at(bx).overFlow(),
277  static_cast<int16_t>(bx - bxMin())));
278  }
279  return result;
280 }

References l1GtPatternGenerator_cfi::bx, L1GctProcessor::bxMin(), L1GctInternHtMiss::emulatorMissHtxHty(), m_hxSumPipe, m_hySumPipe, L1GctProcessor::numOfBx(), and mps_fire::result.

◆ getJetFinderA()

L1GctJetFinderBase* L1GctJetLeafCard::getJetFinderA ( ) const
inline

get pointers to associated jetfinders

Definition at line 80 of file L1GctJetLeafCard.h.

80 { return m_jetFinderA; }

References m_jetFinderA.

◆ getJetFinderB()

L1GctJetFinderBase* L1GctJetLeafCard::getJetFinderB ( ) const
inline

Definition at line 81 of file L1GctJetLeafCard.h.

81 { return m_jetFinderB; }

References m_jetFinderB.

◆ getJetFinderC()

L1GctJetFinderBase* L1GctJetLeafCard::getJetFinderC ( ) const
inline

Definition at line 82 of file L1GctJetLeafCard.h.

82 { return m_jetFinderC; }

References m_jetFinderC.

◆ getOutputEt()

etTotalType L1GctJetLeafCard::getOutputEt ( ) const
inline

get the Et output

Definition at line 100 of file L1GctJetLeafCard.h.

100 { return m_etSum; }

References m_etSum.

◆ getOutputEx()

etComponentType L1GctJetLeafCard::getOutputEx ( ) const
inline

get the Ex output

Definition at line 90 of file L1GctJetLeafCard.h.

90 { return m_exSum; }

References m_exSum.

◆ getOutputEy()

etComponentType L1GctJetLeafCard::getOutputEy ( ) const
inline

get the Ey output

Definition at line 93 of file L1GctJetLeafCard.h.

93 { return m_eySum; }

References m_eySum.

◆ getOutputHfSums()

hfTowerSumsType L1GctJetLeafCard::getOutputHfSums ( ) const
inline

Definition at line 103 of file L1GctJetLeafCard.h.

103 { return m_hfSums; }

References m_hfSums.

◆ getOutputHt()

etHadType L1GctJetLeafCard::getOutputHt ( ) const
inline

Definition at line 101 of file L1GctJetLeafCard.h.

101 { return m_htSum; }

References m_htSum.

◆ getOutputHx()

etComponentType L1GctJetLeafCard::getOutputHx ( ) const
inline

get the output Ht components

Definition at line 96 of file L1GctJetLeafCard.h.

96 { return m_hxSum; }

References m_hxSum.

◆ getOutputHy()

etComponentType L1GctJetLeafCard::getOutputHy ( ) const
inline

Definition at line 97 of file L1GctJetLeafCard.h.

97 { return m_hySum; }

References m_hySum.

◆ getOutputJetsA()

L1GctJetFinderBase::JetVector L1GctJetLeafCard::getOutputJetsA ( ) const

Output jetfinder A jets (lowest jetFinder in phi)

Definition at line 240 of file L1GctJetLeafCard.cc.

References L1GctJetFinderBase::getJets(), and m_jetFinderA.

◆ getOutputJetsB()

L1GctJetFinderBase::JetVector L1GctJetLeafCard::getOutputJetsB ( ) const

Output jetfinder B jets (middle jetFinder in phi)

Definition at line 243 of file L1GctJetLeafCard.cc.

References L1GctJetFinderBase::getJets(), and m_jetFinderB.

◆ getOutputJetsC()

L1GctJetFinderBase::JetVector L1GctJetLeafCard::getOutputJetsC ( ) const

Ouptut jetfinder C jets (highest jetFinder in phi)

Definition at line 246 of file L1GctJetLeafCard.cc.

References L1GctJetFinderBase::getJets(), and m_jetFinderC.

◆ process()

void L1GctJetLeafCard::process ( )
overridevirtual

process the data and set outputs

Implements L1GctProcessor.

Definition at line 194 of file L1GctJetLeafCard.cc.

194  {
195  // Check the setup
196  if (setupOk()) {
197  // Perform the jet finding
201 
202  // Finish Et and Ht sums for the Leaf Card
203  // First Et and missing Et
205  if (m_etSum.overFlow())
211 
212  // Exactly the same procedure for Ht and missing Ht
214  if (m_htSum.overFlow())
220 
221  // And the same again for Hf Sums
223 
224  // Store the outputs in pipelines
225  m_exSumPipe.store(m_exSum, bxRel());
226  m_eySumPipe.store(m_eySum, bxRel());
227  m_hxSumPipe.store(m_hxSum, bxRel());
228  m_hySumPipe.store(m_hySum, bxRel());
229  m_etSumPipe.store(m_etSum, bxRel());
230  m_htSumPipe.store(m_htSum, bxRel());
231  m_hfSumsPipe.store(m_hfSums, bxRel());
232  }
233 }

References L1GctProcessor::bxRel(), etTotalMaxValue, L1GctJetFinderBase::getEtSum(), L1GctJetFinderBase::getExSum(), L1GctJetFinderBase::getEySum(), L1GctJetFinderBase::getHfSums(), L1GctJetFinderBase::getHtSum(), L1GctJetFinderBase::getHxSum(), L1GctJetFinderBase::getHySum(), htTotalMaxValue, m_etSum, m_etSumPipe, m_exSum, m_exSumPipe, m_eySum, m_eySumPipe, m_hfSums, m_hfSumsPipe, m_htSum, m_htSumPipe, m_hxSum, m_hxSumPipe, m_hySum, m_hySumPipe, m_jetFinderA, m_jetFinderB, m_jetFinderC, L1GctUnsignedInt< nBits >::overFlow(), L1GctJetFinderBase::process(), setupOk(), and L1GctUnsignedInt< nBits >::setValue().

◆ reset()

void L1GctJetLeafCard::reset ( void  )

clear internal buffers

clear buffers

Definition at line 146 of file L1GctJetLeafCard.cc.

146  {
148  m_jetFinderA->reset();
149  m_jetFinderB->reset();
150  m_jetFinderC->reset();
151 }

References m_jetFinderA, m_jetFinderB, m_jetFinderC, and L1GctProcessor::reset().

◆ resetPipelines()

void L1GctJetLeafCard::resetPipelines ( )
overrideprotectedvirtual

Implements L1GctProcessor.

Definition at line 178 of file L1GctJetLeafCard.cc.

178  {
179  m_exSumPipe.reset(numOfBx());
180  m_eySumPipe.reset(numOfBx());
181  m_hxSumPipe.reset(numOfBx());
182  m_hySumPipe.reset(numOfBx());
183  m_etSumPipe.reset(numOfBx());
184  m_htSumPipe.reset(numOfBx());
185  m_hfSumsPipe.reset(numOfBx());
186 }

References m_etSumPipe, m_exSumPipe, m_eySumPipe, m_hfSumsPipe, m_htSumPipe, m_hxSumPipe, m_hySumPipe, and L1GctProcessor::numOfBx().

◆ resetProcessor()

void L1GctJetLeafCard::resetProcessor ( )
overrideprotectedvirtual

Separate reset methods for the processor itself and any data stored in pipelines.

Implements L1GctProcessor.

Definition at line 168 of file L1GctJetLeafCard.cc.

168  {
169  m_exSum.reset();
170  m_eySum.reset();
171  m_hxSum.reset();
172  m_hySum.reset();
173  m_etSum.reset();
174  m_htSum.reset();
175  m_hfSums.reset();
176 }

References m_etSum, m_exSum, m_eySum, m_hfSums, m_htSum, m_hxSum, m_hySum, L1GctUnsignedInt< nBits >::reset(), L1GctTwosComplement< nBits >::reset(), and L1GctJetFinderBase::hfTowerSumsType::reset().

◆ setBxRange()

void L1GctJetLeafCard::setBxRange ( const int  firstBx,
const int  numberOfBx 
)

define the bunch crossing range to process

partially clear buffers

Definition at line 154 of file L1GctJetLeafCard.cc.

154  {
155  L1GctProcessor::setBxRange(firstBx, numberOfBx);
156  m_jetFinderA->setBxRange(firstBx, numberOfBx);
157  m_jetFinderB->setBxRange(firstBx, numberOfBx);
158  m_jetFinderC->setBxRange(firstBx, numberOfBx);
159 }

References m_jetFinderA, m_jetFinderB, m_jetFinderC, and L1GctProcessor::setBxRange().

◆ setNeighbourLeafCards()

void L1GctJetLeafCard::setNeighbourLeafCards ( const std::vector< L1GctJetLeafCard * > &  neighbours)

set pointers to neighbours - needed to complete the setup

set pointers to neighbours

Definition at line 98 of file L1GctJetLeafCard.cc.

98  {
99  std::vector<L1GctJetFinderBase*> jfNeighbours(2);
100 
101  if (neighbours.size() == 2) {
102  jfNeighbours.at(0) = neighbours.at(0)->getJetFinderC();
103  jfNeighbours.at(1) = m_jetFinderB;
104  m_jetFinderA->setNeighbourJetFinders(jfNeighbours);
105 
106  jfNeighbours.at(0) = m_jetFinderA;
107  jfNeighbours.at(1) = m_jetFinderC;
108  m_jetFinderB->setNeighbourJetFinders(jfNeighbours);
109 
110  jfNeighbours.at(0) = m_jetFinderB;
111  jfNeighbours.at(1) = neighbours.at(1)->getJetFinderA();
112  m_jetFinderC->setNeighbourJetFinders(jfNeighbours);
113 
114  } else {
115  m_ctorInputOk = false;
116  if (m_verbose) {
117  edm::LogWarning("L1GctSetupError") << "L1GctJetLeafCard::setNeighbourLeafCards() : In Jet Leaf Card ID " << m_id
118  << " size of input vector should be 2, but is in fact " << neighbours.size()
119  << "\n";
120  }
121  }
122 }

References m_ctorInputOk, m_id, m_jetFinderA, m_jetFinderB, m_jetFinderC, L1GctProcessor::m_verbose, and L1GctJetFinderBase::setNeighbourJetFinders().

◆ setNextBx()

void L1GctJetLeafCard::setNextBx ( const int  bx)

partially clear buffers

Definition at line 161 of file L1GctJetLeafCard.cc.

References l1GtPatternGenerator_cfi::bx, m_jetFinderA, m_jetFinderB, m_jetFinderC, and L1GctProcessor::setNextBx().

◆ setupObjects()

void L1GctJetLeafCard::setupObjects ( )
inlineoverrideprotectedvirtual

Initialise inputs with null objects for the correct bunch crossing if required.

Implements L1GctProcessor.

Definition at line 132 of file L1GctJetLeafCard.h.

132 {}

◆ setupOk()

bool L1GctJetLeafCard::setupOk ( ) const

Check setup is Ok.

Definition at line 235 of file L1GctJetLeafCard.cc.

235  {
237 }

References m_ctorInputOk, m_jetFinderA, m_jetFinderB, m_jetFinderC, and L1GctJetFinderBase::setupOk().

Referenced by process().

Friends And Related Function Documentation

◆ operator<<

std::ostream& operator<< ( std::ostream &  os,
const L1GctJetLeafCard card 
)
friend

Overload << operator.

Definition at line 124 of file L1GctJetLeafCard.cc.

124  {
125  using std::endl;
126 
127  s << "===L1GctJetLeafCard===" << endl;
128  s << "ID = " << card.m_id << endl;
129  s << "i_phi = " << card.phiPosition << endl;
130  ;
131  s << "Ex " << card.m_exSum << endl;
132  s << "Ey " << card.m_eySum << endl;
133  s << "Hx " << card.m_hxSum << endl;
134  s << "Hy " << card.m_hySum << endl;
135  s << "Et " << card.m_etSum << endl;
136  s << "Ht " << card.m_htSum << endl;
137  s << "JetFinder A : " << endl << (*card.m_jetFinderA);
138  s << "JetFinder B : " << endl << (*card.m_jetFinderB);
139  s << "JetFinder C : " << endl << (*card.m_jetFinderC);
140  s << endl;
141 
142  return s;
143 }

Member Data Documentation

◆ m_ctorInputOk

bool L1GctJetLeafCard::m_ctorInputOk
private

Definition at line 168 of file L1GctJetLeafCard.h.

Referenced by L1GctJetLeafCard(), setNeighbourLeafCards(), and setupOk().

◆ m_etSum

etTotalType L1GctJetLeafCard::m_etSum
private

Definition at line 154 of file L1GctJetLeafCard.h.

Referenced by getOutputEt(), operator<<(), process(), and resetProcessor().

◆ m_etSumPipe

Pipeline<etTotalType> L1GctJetLeafCard::m_etSumPipe
private

Definition at line 164 of file L1GctJetLeafCard.h.

Referenced by getAllOutputEt(), getInternalEtSums(), process(), and resetPipelines().

◆ m_exSum

etComponentType L1GctJetLeafCard::m_exSum
private

Definition at line 150 of file L1GctJetLeafCard.h.

Referenced by getOutputEx(), operator<<(), process(), and resetProcessor().

◆ m_exSumPipe

Pipeline<etComponentType> L1GctJetLeafCard::m_exSumPipe
private

Definition at line 160 of file L1GctJetLeafCard.h.

Referenced by getAllOutputEx(), getInternalEtSums(), process(), and resetPipelines().

◆ m_eySum

etComponentType L1GctJetLeafCard::m_eySum
private

Definition at line 151 of file L1GctJetLeafCard.h.

Referenced by getOutputEy(), operator<<(), process(), and resetProcessor().

◆ m_eySumPipe

Pipeline<etComponentType> L1GctJetLeafCard::m_eySumPipe
private

Definition at line 161 of file L1GctJetLeafCard.h.

Referenced by getAllOutputEy(), getInternalEtSums(), process(), and resetPipelines().

◆ m_hfSums

hfTowerSumsType L1GctJetLeafCard::m_hfSums
private

Definition at line 157 of file L1GctJetLeafCard.h.

Referenced by getOutputHfSums(), process(), and resetProcessor().

◆ m_hfSumsPipe

Pipeline<hfTowerSumsType> L1GctJetLeafCard::m_hfSumsPipe
private

Definition at line 166 of file L1GctJetLeafCard.h.

Referenced by getAllOutputHfSums(), process(), and resetPipelines().

◆ m_htSum

etHadType L1GctJetLeafCard::m_htSum
private

Definition at line 155 of file L1GctJetLeafCard.h.

Referenced by getOutputHt(), operator<<(), process(), and resetProcessor().

◆ m_htSumPipe

Pipeline<etHadType> L1GctJetLeafCard::m_htSumPipe
private

Definition at line 165 of file L1GctJetLeafCard.h.

Referenced by getAllOutputHt(), getInternalEtSums(), process(), and resetPipelines().

◆ m_hxSum

htComponentType L1GctJetLeafCard::m_hxSum
private

Definition at line 152 of file L1GctJetLeafCard.h.

Referenced by getOutputHx(), operator<<(), process(), and resetProcessor().

◆ m_hxSumPipe

Pipeline<htComponentType> L1GctJetLeafCard::m_hxSumPipe
private

Definition at line 162 of file L1GctJetLeafCard.h.

Referenced by getAllOutputHx(), getInternalHtMiss(), process(), and resetPipelines().

◆ m_hySum

htComponentType L1GctJetLeafCard::m_hySum
private

Definition at line 153 of file L1GctJetLeafCard.h.

Referenced by getOutputHy(), operator<<(), process(), and resetProcessor().

◆ m_hySumPipe

Pipeline<htComponentType> L1GctJetLeafCard::m_hySumPipe
private

Definition at line 163 of file L1GctJetLeafCard.h.

Referenced by getAllOutputHy(), getInternalHtMiss(), process(), and resetPipelines().

◆ m_id

int L1GctJetLeafCard::m_id
private

Definition at line 136 of file L1GctJetLeafCard.h.

Referenced by L1GctJetLeafCard(), operator<<(), and setNeighbourLeafCards().

◆ m_jetFinderA

L1GctJetFinderBase* L1GctJetLeafCard::m_jetFinderA
private

◆ m_jetFinderB

L1GctJetFinderBase* L1GctJetLeafCard::m_jetFinderB
private

◆ m_jetFinderC

L1GctJetFinderBase* L1GctJetLeafCard::m_jetFinderC
private

◆ m_whichJetFinder

jetFinderType L1GctJetLeafCard::m_whichJetFinder
private

Definition at line 139 of file L1GctJetLeafCard.h.

Referenced by L1GctJetLeafCard().

◆ MAX_JET_FINDERS

const int L1GctJetLeafCard::MAX_JET_FINDERS = 3
static

Number of jetfinders per jet leaf card.

Definition at line 34 of file L1GctJetLeafCard.h.

◆ phiPosition

int L1GctJetLeafCard::phiPosition
private

Definition at line 148 of file L1GctJetLeafCard.h.

Referenced by L1GctJetLeafCard(), and operator<<().

L1GctJetLeafCard::phiPosition
int phiPosition
Definition: L1GctJetLeafCard.h:148
L1GctJetLeafCard::m_exSum
etComponentType m_exSum
Definition: L1GctJetLeafCard.h:150
L1GctJetLeafCard::m_ctorInputOk
bool m_ctorInputOk
Definition: L1GctJetLeafCard.h:168
L1GctUnsignedInt::setValue
void setValue(unsigned value)
Set value from unsigned.
Definition: L1GctUnsignedInt.h:111
L1GctJetLeafCard::m_hxSum
htComponentType m_hxSum
Definition: L1GctJetLeafCard.h:152
L1GctProcessor::L1GctProcessor
L1GctProcessor()
Definition: L1GctProcessor.h:24
L1GctJetLeafCard::m_hfSumsPipe
Pipeline< hfTowerSumsType > m_hfSumsPipe
Definition: L1GctJetLeafCard.h:166
L1GctJetLeafCard::m_hySum
htComponentType m_hySum
Definition: L1GctJetLeafCard.h:153
L1GctJetLeafCard::m_exSumPipe
Pipeline< etComponentType > m_exSumPipe
Definition: L1GctJetLeafCard.h:160
L1GctJetLeafCard::m_whichJetFinder
jetFinderType m_whichJetFinder
Definition: L1GctJetLeafCard.h:139
L1GctProcessor::setNextBx
void setNextBx(const int bxnum)
clear input data buffers and process a new bunch crossing
Definition: L1GctProcessor.h:51
L1GctJetFinderBase::getHySum
htCompInternJfType getHySum() const
Get the y component of vector Ht summed over jets above threshold.
Definition: L1GctJetFinderBase.h:196
L1GctJetLeafCard::m_hxSumPipe
Pipeline< htComponentType > m_hxSumPipe
Definition: L1GctJetLeafCard.h:162
L1GctJetLeafCard::m_id
int m_id
Definition: L1GctJetLeafCard.h:136
L1GctJetFinderBase::getHxSum
htCompInternJfType getHxSum() const
Get the x component of vector Ht summed over jets above threshold.
Definition: L1GctJetFinderBase.h:193
L1GctProcessor::numOfBx
int numOfBx() const
Definition: L1GctProcessor.h:79
l1GtPatternGenerator_cfi.bx
bx
Definition: l1GtPatternGenerator_cfi.py:18
L1GctProcessor::bxRel
int bxRel() const
Definition: L1GctProcessor.h:81
L1GctJetLeafCard::m_htSumPipe
Pipeline< etHadType > m_htSumPipe
Definition: L1GctJetLeafCard.h:165
L1GctProcessor::setBxRange
void setBxRange(const int firstBx, const int numberOfBx)
define the bunch crossing range to process
Definition: L1GctProcessor.h:44
L1GctHardwareJetFinder
Emulation of the hardware jet finder.
Definition: L1GctHardwareJetFinder.h:18
L1GctJetLeafCard::m_hySumPipe
Pipeline< htComponentType > m_hySumPipe
Definition: L1GctJetLeafCard.h:163
edm::LogWarning
Log< level::Warning, false > LogWarning
Definition: MessageLogger.h:122
L1GctJetLeafCard::tdrJetFinder
Definition: L1GctJetLeafCard.h:31
L1GctInternEtSum::kTotEtOrHtMaxValue
Definition: L1GctInternEtSum.h:33
LEDCalibrationChannels.iphi
iphi
Definition: LEDCalibrationChannels.py:64
L1GctJetLeafCard::m_htSum
etHadType m_htSum
Definition: L1GctJetLeafCard.h:155
L1GctNullJetFinder
no-op jet finder for test purposes.
Definition: L1GctNullJetFinder.h:19
L1GctJetLeafCard::m_jetFinderC
L1GctJetFinderBase * m_jetFinderC
highest jetFinder in phi
Definition: L1GctJetLeafCard.h:144
L1GctJetFinderBase::setNeighbourJetFinders
void setNeighbourJetFinders(const std::vector< L1GctJetFinderBase * > &neighbours)
Set pointers to neighbours - needed to complete the setup.
Definition: L1GctJetFinderBase.cc:80
L1GctTdrJetFinder
3*3 sliding window algorithm jet finder.
Definition: L1GctTdrJetFinder.h:51
alignCSCRings.s
s
Definition: alignCSCRings.py:92
L1GctJetLeafCard::m_etSum
etTotalType m_etSum
Definition: L1GctJetLeafCard.h:154
L1GctJetLeafCard::hardwareJetFinder
Definition: L1GctJetLeafCard.h:31
L1GctJetLeafCard::setupOk
bool setupOk() const
Check setup is Ok.
Definition: L1GctJetLeafCard.cc:235
L1GctProcessor::reset
void reset()
complete reset of processor
Definition: L1GctProcessor.h:28
L1GctJetFinderBase::process
void process() override=0
process the data, fill output buffers; to be filled in by derived jetFinders
L1GctJetLeafCard::etTotalMaxValue
Definition: L1GctJetLeafCard.h:46
L1GctJetLeafCard::nullJetFinder
Definition: L1GctJetLeafCard.h:31
L1GctJetFinderBase::getHfSums
hfTowerSumsType getHfSums() const
Get the Hf tower Et sums and tower-over-threshold counts.
Definition: L1GctJetFinderBase.h:200
L1GctProcessor::m_verbose
bool m_verbose
Flag to control output messages.
Definition: L1GctProcessor.h:109
L1GctProcessor::bxMin
int bxMin() const
Support for multiple beam crossing operation.
Definition: L1GctProcessor.h:77
L1GctJetLeafCard::etComponentType
L1GctTwosComplement< L1GctInternEtSum::kMissExOrEyNBits > etComponentType
Definition: L1GctJetLeafCard.h:40
L1GctJetLeafCard::htComponentType
L1GctTwosComplement< L1GctInternHtMiss::kMissHxOrHyNBits > htComponentType
Definition: L1GctJetLeafCard.h:41
L1GctJetLeafCard::m_etSumPipe
Pipeline< etTotalType > m_etSumPipe
Definition: L1GctJetLeafCard.h:164
edm::LogError
Log< level::Error, false > LogError
Definition: MessageLogger.h:123
L1GctJetFinderBase::setupOk
bool setupOk() const
Check setup is Ok.
Definition: L1GctJetFinderBase.h:141
L1GctJetFinderBase::hfTowerSumsType::reset
void reset()
Definition: L1GctJetFinderBase.h:91
L1GctInternEtSum::fromEmulatorJetMissEt
static L1GctInternEtSum fromEmulatorJetMissEt(int missEtxOrEty, bool overFlow, int16_t bx)
Definition: L1GctInternEtSum.cc:109
L1GctJetFinderBase::getHtSum
etHadType getHtSum() const
Get the scalar sum of Ht summed over jets above threshold.
Definition: L1GctJetFinderBase.h:192
L1GctJetLeafCard::m_hfSums
hfTowerSumsType m_hfSums
Definition: L1GctJetLeafCard.h:157
L1GctJetLeafCard::htTotalMaxValue
Definition: L1GctJetLeafCard.h:47
L1GctJetFinderBase::getEtSum
etTotalType getEtSum() const
Get the scalar sum of Et summed over the input regions.
Definition: L1GctJetFinderBase.h:185
L1GctUnsignedInt::reset
void reset()
reset value and overflow to zero
Definition: L1GctUnsignedInt.h:41
L1GctUnsignedInt::overFlow
bool overFlow() const
access overflow
Definition: L1GctUnsignedInt.h:56
L1GctJetFinderBase::fetchInput
void fetchInput() override=0
get input data from sources; to be filled in by derived jetFinders
L1GctInternHtMiss::emulatorMissHtxHty
static L1GctInternHtMiss emulatorMissHtxHty(const int htx, const int hty, const bool overFlow, const int16_t bx)
Named ctor for making missing Ht x & y components object from emulator (wheel input).
Definition: L1GctInternHtMiss.cc:50
L1GctJetFinderBase::getExSum
etCompInternJfType getExSum() const
Get the x component of vector Et summed over the input regions.
Definition: L1GctJetFinderBase.h:186
L1GctJetLeafCard::m_eySumPipe
Pipeline< etComponentType > m_eySumPipe
Definition: L1GctJetLeafCard.h:161
mps_fire.result
result
Definition: mps_fire.py:311
L1GctJetLeafCard::m_eySum
etComponentType m_eySum
Definition: L1GctJetLeafCard.h:151
L1GctInternEtSum::fromEmulatorJetTotHt
static L1GctInternEtSum fromEmulatorJetTotHt(unsigned totHt, bool overFlow, int16_t bx)
Definition: L1GctInternEtSum.cc:99
L1GctJetFinderBase::getEySum
etCompInternJfType getEySum() const
Get the y component of vector Et summed over the input regions.
Definition: L1GctJetFinderBase.h:189
L1GctJetLeafCard::m_jetFinderB
L1GctJetFinderBase * m_jetFinderB
middle jetFinder in phi
Definition: L1GctJetLeafCard.h:143
L1GctJetLeafCard::m_jetFinderA
L1GctJetFinderBase * m_jetFinderA
lowest jetFinder in phi
Definition: L1GctJetLeafCard.h:142
L1GctTwosComplement::reset
void reset()
reset value and overflow to zero
Definition: L1GctTwosComplement.h:132
L1GctInternEtSum::fromEmulatorJetTotEt
static L1GctInternEtSum fromEmulatorJetTotEt(unsigned totEt, bool overFlow, int16_t bx)
Emulator constructors.
Definition: L1GctInternEtSum.cc:89