ATLAS Offline Software
CaloRecoStatus.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef CALOEVENT_CALORECOSTATUS_H
6 #define CALOEVENT_CALORECOSTATUS_H
7 
8 
9 #include <vector>
10 
12 {
13  public:
14 
16  typedef unsigned int store_type;
17 
37  {
38  TAGGEDEM = 0x00000001, /*< tagged as electromagnetic object */
39  TAGGEDHAD = 0x00000002, /*< tagged as hadronic object */
40  TAGGEDMUON = 0x00000004, /*< tagged as muonic cluster */
41  TAGGEDUNKNOWN = 0x00000008, /*< tagged as unknown */
42  CALIBRATED = 0x10000000, /*< cluster calibrated (non-emscale) */
43  CALIBRATEDLHC = 0x10000010, /*< cluster calibrated local had */
44  CALIBRATEDALT = 0x10000020, /*< cluster calibrated alternatively */
45  UNKNOWNSTATUS = 0x00000000 /*< unknown status */
46  };
48  CaloRecoStatus(StatusIndicator statusIndicator = UNKNOWNSTATUS);
51  virtual ~CaloRecoStatus();
52 
53  CaloRecoStatus (const CaloRecoStatus&) = default;
55 
58 
63  virtual void setStatus(const StatusIndicator& statusIndicator);
71  virtual bool checkStatus(const StatusIndicator& statusIndicator) const;
73  // virtual const StatusIndicator & getStatusWord() const;
74  virtual const store_type& getStatusWord() const;
81  virtual bool getStatus(std::vector<CaloRecoStatus::StatusIndicator>&
82  pStatusList) const;
86  virtual void resetStatus();
87  virtual void resetStatus(const StatusIndicator& statusIndicator);
88 
89 
90  private:
91 
93  // StatusIndicator m_status;
95 
96 };
103  : m_status((store_type)aStatus)
104 { }
105 
107  : m_status(aStatus)
108 { }
109 
111 { }
112 
113 inline void CaloRecoStatus::setStatus(const StatusIndicator& aStatus)
114 {
115  m_status = m_status | (store_type)aStatus;
116 }
117 
119 {
120  return m_status;
121 }
122 
123 inline bool CaloRecoStatus::checkStatus(const StatusIndicator& aStatus) const
124 {
125  return ( m_status & (store_type)aStatus ) == (store_type)aStatus;
126 }
127 
129 {
131 }
132 
133 inline void CaloRecoStatus::resetStatus(const StatusIndicator& aStatus)
134 {
135  m_status = m_status & ~((store_type)aStatus);
136 }
137 #endif
SGTest::store
TestStore store
Definition: TestStore.cxx:23
CaloRecoStatus::CALIBRATEDLHC
@ CALIBRATEDLHC
Definition: CaloRecoStatus.h:43
CaloRecoStatus::resetStatus
virtual void resetStatus()
reset reconstruction status
Definition: CaloRecoStatus.h:128
CaloRecoStatus::store_type
unsigned int store_type
Internal store type.
Definition: CaloRecoStatus.h:16
CaloRecoStatus::StatusIndicator
StatusIndicator
reconstruction status word
Definition: CaloRecoStatus.h:37
CaloRecoStatus::TAGGEDUNKNOWN
@ TAGGEDUNKNOWN
Definition: CaloRecoStatus.h:41
CaloRecoStatus::setStatus
virtual void setStatus(const StatusIndicator &statusIndicator)
Set status.
Definition: CaloRecoStatus.h:113
CaloRecoStatus::CALIBRATEDALT
@ CALIBRATEDALT
Definition: CaloRecoStatus.h:44
CaloRecoStatus::~CaloRecoStatus
virtual ~CaloRecoStatus()
Destructor.
Definition: CaloRecoStatus.h:110
CaloRecoStatus::operator=
CaloRecoStatus & operator=(const CaloRecoStatus &)=default
CaloRecoStatus::TAGGEDMUON
@ TAGGEDMUON
Definition: CaloRecoStatus.h:40
CaloRecoStatus::CaloRecoStatus
CaloRecoStatus(StatusIndicator statusIndicator=UNKNOWNSTATUS)
Default constructor.
Definition: CaloRecoStatus.h:102
CaloRecoStatus::m_status
store_type m_status
Status store.
Definition: CaloRecoStatus.h:94
CaloRecoStatus::CaloRecoStatus
CaloRecoStatus(CaloRecoStatus &&)=default
CaloRecoStatus::CaloRecoStatus
CaloRecoStatus(const CaloRecoStatus &)=default
CaloRecoStatus::getStatus
virtual bool getStatus(std::vector< CaloRecoStatus::StatusIndicator > &pStatusList) const
retrieve all status indicators
Definition: CaloRecoStatus.cxx:7
CaloRecoStatus::checkStatus
virtual bool checkStatus(const StatusIndicator &statusIndicator) const
Check status.
Definition: CaloRecoStatus.h:123
CaloRecoStatus::CALIBRATED
@ CALIBRATED
Definition: CaloRecoStatus.h:42
CaloRecoStatus::TAGGEDEM
@ TAGGEDEM
Definition: CaloRecoStatus.h:38
CaloRecoStatus::getStatusWord
virtual const store_type & getStatusWord() const
retrieve the entire status word
Definition: CaloRecoStatus.h:118
CaloRecoStatus::UNKNOWNSTATUS
@ UNKNOWNSTATUS
Definition: CaloRecoStatus.h:45
CaloRecoStatus::TAGGEDHAD
@ TAGGEDHAD
Definition: CaloRecoStatus.h:39
CaloRecoStatus
reconstruction status indicator
Definition: CaloRecoStatus.h:12