ATLAS Offline Software
InDetRawData.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // InDetRawData.h
7 // Header file for class InDetRawData
9 // (c) ATLAS Detector software
11 // Class to handle raw data objects for Pixel and SCT and TRT
13 // Version 1.0 13/08/2002 Veronique Boisvert
15 
16 #ifndef INDETRAWDATA_INDETRAWDATA_H
17 #define INDETRAWDATA_INDETRAWDATA_H
18 
19 // Base class
21 #include "Identifier/Identifier.h"
22 class MsgStream;
23 
24 
25 class InDetRawData : public Identifiable {
26 
28  // Public methods:
30 public:
31 
32  // Constructor with parameters:
33  // offline compact identifier of the readout channel
34  InDetRawData(const Identifier rdoId, const unsigned int word);
35  virtual ~InDetRawData() = default;
36 
38  // Virtual methods:
40 
41  virtual Identifier identify() const override final
42  {
43  return m_rdoId;
44  }
45 
46 
47  unsigned int getWord() const
48  {
49  return m_word;
50  }
51 
53  // Clients should not use default constructor, rather use the one
54  // above. It must be public for pool I/O.
56  InDetRawData() = default;
57 
58  // OR the data word from OTHER into our data word.
59  // Used by InDetOverlay.
60  void merge (const InDetRawData& other)
61  {
62  m_word |= other.m_word;
63  }
64 
66  // Private data:
68 private:
69  Identifier m_rdoId; //Offline ID for readout channel
70 
71 protected:
72  unsigned int m_word = 0; // raw data word
73 };
74 
76 MsgStream& operator << ( MsgStream& sl, const InDetRawData& rdo);
77 
79 std::ostream& operator << ( std::ostream& sl, const InDetRawData& rdo);
80 
81 #endif // INDETRAWDATA_INDETRAWDATA_H
82 
operator<<
MsgStream & operator<<(MsgStream &sl, const InDetRawData &rdo)
Overload of << operator for MsgStream for debug output.
Definition: InDetRawData.cxx:26
Identifiable.h
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:560
InDetRawData::InDetRawData
InDetRawData()=default
InDetRawData::m_word
unsigned int m_word
Definition: InDetRawData.h:72
InDetRawData::m_rdoId
Identifier m_rdoId
Definition: InDetRawData.h:69
InDetRawData::~InDetRawData
virtual ~InDetRawData()=default
InDetRawData::getWord
unsigned int getWord() const
Definition: InDetRawData.h:47
InDetDD::other
@ other
Definition: InDetDD_Defs.h:16
Identifiable
This class provides an abstract interface to an Identifiable object.
Definition: Identifiable.h:27
InDetRawData
Definition: InDetRawData.h:25
InDetRawData::identify
virtual Identifier identify() const override final
Definition: InDetRawData.h:41
InDetRawData::merge
void merge(const InDetRawData &other)
Definition: InDetRawData.h:60
Identifier
Definition: IdentifierFieldParser.cxx:14