ATLAS Offline Software
bitPATTERN.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef BITPATTERN_H
6 #define BITPATTERN_H
7 
11 
13 {
14  private:
16  int m_size;
17  const RPCdigit **m_digits;
18 
19  void shift_left(void);
20  void shift_right(void);
21 
22  public:
23  bitPATTERN(const std::string&,const PATTERNidentity&,int);
24  bitPATTERN(const bitPATTERN&);
25  ~bitPATTERN();
26 
28 
29  void set(const RPCdigit*,int);
30  void unset(int);
31  void reset(void);
32 
33  bool any(void) const;
34  bool test(int) const;
35 
36  bool operator<(const bitPATTERN&);
37 
38  const RPCdigit* operator[](int) const;
39  const PATTERNidentity& id(void) const {return m_id;}
40 
41  int size(void) const {return m_size;}
42 
43  bitPATTERN operator& (const bitPATTERN&) const;
45  bitPATTERN operator| (const bitPATTERN&) const;
47  bitPATTERN operator^ (const bitPATTERN&) const;
49  bitPATTERN& operator<<(int);
50  bitPATTERN& operator>>(int);
51 
52  void dump(uint32_t&, uint32_t&) const;
53 
54  void Print(std::ostream&,bool detail) const;
55 };
56 
57 template <class X> X& operator<<(X& stream,const bitPATTERN& data)
58 {
59  std::ostringstream display;
60  data.Print(display,false);
61  stream << display.str();
62  return stream;
63 }
64 
65 #endif
data
char data[hepevt_bytes_allocation_ATLAS]
Definition: HepEvt.cxx:11
bitPATTERN::operator[]
const RPCdigit * operator[](int) const
Definition: bitPATTERN.cxx:96
bitPATTERN::test
bool test(int) const
Definition: bitPATTERN.cxx:88
bitPATTERN::reset
void reset(void)
Definition: bitPATTERN.cxx:69
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
bitPATTERN
Definition: bitPATTERN.h:13
bitPATTERN::unset
void unset(int)
Definition: bitPATTERN.cxx:61
bitPATTERN::set
void set(const RPCdigit *, int)
Definition: bitPATTERN.cxx:54
bitPATTERN::Print
void Print(std::ostream &, bool detail) const
Definition: bitPATTERN.cxx:243
bitPATTERN::id
const PATTERNidentity & id(void) const
Definition: bitPATTERN.h:39
detail
Definition: extract_histogram_tag.cxx:14
bitPATTERN::operator|=
bitPATTERN & operator|=(const bitPATTERN &)
Definition: bitPATTERN.cxx:146
bitPATTERN::operator<
bool operator<(const bitPATTERN &)
Definition: bitPATTERN.cxx:47
bitPATTERN::bitPATTERN
bitPATTERN(const std::string &, const PATTERNidentity &, int)
Definition: bitPATTERN.cxx:9
bitPATTERN::m_digits
const RPCdigit ** m_digits
Definition: bitPATTERN.h:17
AthenaPoolTestWrite.stream
string stream
Definition: AthenaPoolTestWrite.py:12
bitPATTERN::shift_right
void shift_right(void)
Definition: bitPATTERN.cxx:214
Monitored::X
@ X
Definition: HistogramFillerUtils.h:24
bitPATTERN::shift_left
void shift_left(void)
Definition: bitPATTERN.cxx:207
PATTERNidentity
Definition: PATTERNidentity.h:13
bitPATTERN::operator&
bitPATTERN operator&(const bitPATTERN &) const
Definition: bitPATTERN.cxx:103
bitPATTERN::operator^=
bitPATTERN & operator^=(const bitPATTERN &)
Definition: bitPATTERN.cxx:178
RPCdigit.h
bitPATTERN::m_size
int m_size
Definition: bitPATTERN.h:16
bitPATTERN::dump
void dump(uint32_t &, uint32_t &) const
Definition: bitPATTERN.cxx:220
pyroot.display
display
Definition: pyroot.py:44
bitPATTERN::operator<<
bitPATTERN & operator<<(int)
Definition: bitPATTERN.cxx:191
operator<<
X & operator<<(X &stream, const bitPATTERN &data)
Definition: bitPATTERN.h:57
PATTERNidentity.h
bitPATTERN::operator^
bitPATTERN operator^(const bitPATTERN &) const
Definition: bitPATTERN.cxx:159
bitPATTERN::operator>>
bitPATTERN & operator>>(int)
Definition: bitPATTERN.cxx:199
RPCtrigDataObject
Definition: RPCtrigDataObject.h:15
bitPATTERN::any
bool any(void) const
Definition: bitPATTERN.cxx:78
RPCdigit
Definition: RPCdigit.h:16
RPCtrigDataObject.h
bitPATTERN::operator&=
bitPATTERN & operator&=(const bitPATTERN &)
Definition: bitPATTERN.cxx:117
bitPATTERN::~bitPATTERN
~bitPATTERN()
Definition: bitPATTERN.cxx:28
bitPATTERN::operator|
bitPATTERN operator|(const bitPATTERN &) const
Definition: bitPATTERN.cxx:128
bitPATTERN::m_id
PATTERNidentity m_id
Definition: bitPATTERN.h:15
bitPATTERN::size
int size(void) const
Definition: bitPATTERN.h:41
bitPATTERN::operator=
bitPATTERN & operator=(const bitPATTERN &)
Definition: bitPATTERN.cxx:35