ATLAS Offline Software
Loading...
Searching...
No Matches
CMXRoI_v1.h
Go to the documentation of this file.
1// Dear emacs, this is -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
5*/
6
7// $Id: CMXRoI_v1.h 681007 2015-07-07 13:34:12Z morrisj $
8#ifndef XAODTRIGL1CALO_VERSIONS_CMXROI_V1_H
9#define XAODTRIGL1CALO_VERSIONS_CMXROI_V1_H
10
11extern "C" {
12# include <stdint.h>
13}
14
15#include "AthLinks/ElementLink.h"
17
18namespace xAOD {
19
26
27 class CMXRoI_v1 : public SG::AuxElement{
28 public:
29
30 enum SumType { NORMAL = 0, MASKED = 1 };
31
32 // Default constructor
33 CMXRoI_v1();
35 virtual ~CMXRoI_v1(){}
36
38 virtual void initialize(uint32_t roiWord0, uint32_t roiWord1, uint32_t roiWord2,
40
42 virtual void initialize(unsigned int ex, unsigned int ey, unsigned int et,
43 int exError, int eyError, int etError,
44 unsigned int sumEtHits, unsigned int missingEtHits,
45 unsigned int missingEtSigHits,
46 unsigned int exM, unsigned int eyM, unsigned int etM,
47 int exErrorM, int eyErrorM, int etErrorM,
48 unsigned int sumEtHitsM, unsigned int missingEtHitsM);
49
51 const std::vector<uint32_t>& cmxRoIWords() const;
53 void setCmxRoIWords(const std::vector<uint32_t>&);
54
56 unsigned int ex(SumType type = NORMAL) const;
58 unsigned int ey(SumType type = NORMAL) const;
60 unsigned int et(SumType type = NORMAL) const;
62 int exError(SumType type = NORMAL) const;
64 int eyError(SumType type = NORMAL) const;
66 int etError(SumType type = NORMAL) const;
68 unsigned int sumEtHits(SumType type = NORMAL) const;
70 unsigned int missingEtHits(SumType type = NORMAL) const;
72 unsigned int missingEtSigHits() const;
73
75 uint32_t roiWord(int word) const;
77 unsigned int exWord(SumType type = NORMAL) const;
79 unsigned int eyWord(SumType type = NORMAL) const;
81 unsigned int etWord(SumType type = NORMAL) const;
82
83
84 private:
85 // RoI word IDs
86 static const int s_wordIdVal0 = 0x4;
87 static const int s_wordIdVal1 = 0x6;
88 static const int s_wordIdVal2 = 0x5;
89 // Data locations
90 static const int s_wordIdBit = 28;
91 static const int s_sumEtHitsBit = 16;
92 static const int s_missingEtHitsBit = 16;
93 static const int s_missingEtSigHitsBit = 16;
94 static const int s_energyBit = 0;
95 static const int s_overflowBit = 15;
96 static const int s_sumTypeBit = 26;
97 // Data masks
98 static const int s_wordIdMask = 0xf;
99 static const int s_sumEtHitsMask = 0xff;
100 static const int s_missingEtHitsMask = 0xff;
101 static const int s_missingEtSigHitsMask = 0xff;
102 static const int s_energyMask = 0x7fff;
103 static const int s_overflowMask = 0x1;
104 static const int s_sumTypeMask = 0x1;
105 // RoI word array offsets
106 static const int s_exOffset = 0;
107 static const int s_eyOffset = 2;
108 static const int s_etOffset = 4;
109 static const int s_maxRoiWords = 6;
110
111 };
112} // namespace xAOD
113
114#endif // XAODTRIGL1CALO_VERSIONS_CMMROI_V1_H
Base class for elements of a container that can have aux data.
Base class for elements of a container that can have aux data.
Definition AuxElement.h:483
virtual void initialize(uint32_t roiWord0, uint32_t roiWord1, uint32_t roiWord2, uint32_t roiWord3, uint32_t roiWord4, uint32_t roiWord5)
initialize
static const int s_etOffset
Definition CMXRoI_v1.h:108
unsigned int eyWord(SumType type=NORMAL) const
Return Ey RoI word.
static const int s_wordIdBit
Definition CMXRoI_v1.h:90
int etError(SumType type=NORMAL) const
Return Et error flags (bit 0 Overflow)
static const int s_wordIdVal1
Definition CMXRoI_v1.h:87
const std::vector< uint32_t > & cmxRoIWords() const
get cmxRoIWords
unsigned int exWord(SumType type=NORMAL) const
Return Ex RoI word.
static const int s_wordIdVal2
Definition CMXRoI_v1.h:88
int exError(SumType type=NORMAL) const
Return Ex error flags (bit 0 Overflow)
static const int s_energyMask
Definition CMXRoI_v1.h:102
virtual ~CMXRoI_v1()
Default desturctor.
Definition CMXRoI_v1.h:35
static const int s_exOffset
Definition CMXRoI_v1.h:106
static const int s_wordIdMask
Definition CMXRoI_v1.h:98
static const int s_sumTypeBit
Definition CMXRoI_v1.h:96
static const int s_sumTypeMask
Definition CMXRoI_v1.h:104
unsigned int ey(SumType type=NORMAL) const
Return Ey.
unsigned int etWord(SumType type=NORMAL) const
Return ET RoI word.
static const int s_missingEtSigHitsMask
Definition CMXRoI_v1.h:101
unsigned int sumEtHits(SumType type=NORMAL) const
Return Sum-ET hits.
static const int s_sumEtHitsBit
Definition CMXRoI_v1.h:91
int eyError(SumType type=NORMAL) const
Return Ey error flags (bit 0 Overflow)
void setCmxRoIWords(const std::vector< uint32_t > &)
set cmxRoIWords
unsigned int et(SumType type=NORMAL) const
Return Et.
static const int s_maxRoiWords
Definition CMXRoI_v1.h:109
unsigned int missingEtSigHits() const
Return Missing-ET-Sig hits.
static const int s_sumEtHitsMask
Definition CMXRoI_v1.h:99
static const int s_overflowMask
Definition CMXRoI_v1.h:103
static const int s_energyBit
Definition CMXRoI_v1.h:94
static const int s_missingEtHitsMask
Definition CMXRoI_v1.h:100
unsigned int ex(SumType type=NORMAL) const
Return Ex.
Definition CMXRoI_v1.cxx:97
unsigned int missingEtHits(SumType type=NORMAL) const
Return Missing-ET hits.
static const int s_overflowBit
Definition CMXRoI_v1.h:95
static const int s_missingEtHitsBit
Definition CMXRoI_v1.h:92
static const int s_eyOffset
Definition CMXRoI_v1.h:107
static const int s_wordIdVal0
Definition CMXRoI_v1.h:86
static const int s_missingEtSigHitsBit
Definition CMXRoI_v1.h:93
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
setRoIWord1 roiWord3
setRoIWord1 setRoIWord3 roiWord5
setEventNumber uint32_t
void initialize()