ATLAS Offline Software
Loading...
Searching...
No Matches
JetCMXTopoData.h
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* Emulation of TOB link from one CP CMX to L1Topo
7* Author: Alan Watson <Alan.Watson@CERN.CH>
8*
9********************************************************** */
10#ifndef TRIGT1CALO_JETCMXTOPODATA_H
11#define TRIGT1CALO_JETCMXTOPODATA_H
12
13// STL include(s):
14#include <vector>
15#include <string>
16
17// Local include(s):
19
20namespace LVL1 {
21
23
24 public:
26 JetCMXTopoData( int crate, bool overflow, const std::vector< uint32_t >& tobWords );
28 JetCMXTopoData( int crate, bool overflow, const std::vector< JetTopoTOB >& tobs );
30 JetCMXTopoData( int crate, const std::vector< uint32_t >& roiWords );
32 JetCMXTopoData( int crate );
36
38 int crate() const;
40 bool overflow() const;
42 void tobs(std::vector< JetTopoTOB >& tobs) const;
44 const std::vector< uint32_t >& tobWords() const;
45
47 void addTOB( const JetTopoTOB tob);
48 void addTOB( uint32_t tobWord);
49
51 void addRoI( uint32_t roiWord );
52
54 void setOverflow( bool overflow );
55
61
62 private:
67 std::vector< uint32_t > m_tobWords;
68
69 static const unsigned int s_maxTOBsPerLink = 32;
70 static const unsigned int s_maxTOBsPerJem = 4;
71
72 }; // class JetCMXTopoData
73
74
75} // namespace bracket
76
77#ifndef JetCMXTopoData_ClassDEF_H
79#endif
80
81#endif // TRIGT1CALO_JETCMXTOPODATA_H
void tobs(std::vector< JetTopoTOB > &tobs) const
Return vector of TOBs.
void addTOB(const JetTopoTOB tob)
Add TOB to record.
int crate() const
Return crate number (0-1)
void setOverflow(bool overflow)
Set overflow flag.
JetCMXTopoData(int crate, bool overflow, const std::vector< uint32_t > &tobWords)
Constructor with Crate number, overflow flag and vector of TOB words.
int m_crate
Data members.
static const unsigned int s_maxTOBsPerLink
Static constants.
bool m_overflow
overflow on CMX -> L1Topo transmission
void addRoI(uint32_t roiWord)
Add TOB from RoI word.
bool overflow() const
Return overflow flag.
static const unsigned int s_maxTOBsPerJem
as specified in BackplaneFormats_v3.xlsx
~JetCMXTopoData()
Destructor.
const std::vector< uint32_t > & tobWords() const
Return vector of TOB words.
bool m_jem_overflow
overflow on JEM -> CMX transmission
JetCMXTopoData()
Default constructor.
JetCMXTopoData & checkJemOverflow()
count whether any transmission JEM -> CMX had too many TOBs
std::vector< uint32_t > m_tobWords
Jet TOB data for L1Topo.
Definition JetTopoTOB.h:19
eFexTowerBuilder creates xAOD::eFexTowerContainer from supercells (LATOME) and triggerTowers (TREX) i...