ATLAS Offline Software
Loading...
Searching...
No Matches
MuonQualityWord.h
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3*/
4
5/***************************************************************************
6 Reconstruction/MuonIdentification/muonEvent/MuonQualityWord.h
7 Author: Ketevi A. Assamagan, July 2009
8 Transienti class to hold muon quality bits and the methods to manipulate it
9 so as to return the the isLoose, isMedium and isTight to the use.
10 This object is not persistified.
11 ---------------------------------------------------------------------------
12 ***************************************************************************/
13
14#ifndef MUONEVENT_MUONQUALITYWORD_H
15#define MUONEVENT_MUONQUALITYWORD_H
16
17#include <inttypes.h>
18#include <iostream>
19class MsgStream;
20
40
42
43public:
44
46 MuonQualityWord ( uint16_t qualityWord );
47
50
52 ~MuonQualityWord() = default;
53
56
59
61 void set ( uint16_t qualityWord ) { m_qualityWord = qualityWord; }
62
64 bool isLoose() const;
65 bool isMedium () const;
66 bool isTight () const;
67
69 uint16_t type () const { return m_qualityWord & 0xF; }
70
72 uint16_t qualityWord() const { return m_qualityWord; }
73
74private:
75
76 uint16_t m_qualityWord;
77};
78
80MsgStream& operator << ( MsgStream& sl, const MuonQualityWord& qword);
81
83std::ostream& operator << ( std::ostream& sl, const MuonQualityWord& qword);
84
85
86inline bool MuonQualityWord::isLoose() const { return ( m_qualityWord >> 4) & 0xF; }
87
88inline bool MuonQualityWord::isMedium() const { return ( m_qualityWord >> 8) & 0xF; }
89
90inline bool MuonQualityWord::isTight() const { return ( m_qualityWord >> 12) & 0xF; }
91
92#endif // MUONEVENT_MUONQUALITYWORD_H
93
94
MsgStream & operator<<(MsgStream &sl, const MuonQualityWord &qword)
Overload of << operator for MsgStream for debug output.
A bitted word defining different levels of muon identification qualities (in terms of purity and effi...
~MuonQualityWord()=default
destructor
void set(uint16_t qualityWord)
set the quality word - needed if default constructor is used
MuonQualityWord(uint16_t qualityWord)
full constructor with a quality word
MuonQualityWord()
default constructor
bool isTight() const
bool isMedium() const
bool isLoose() const
Accessor methods.
uint16_t type() const
container specifi bits - may vary according to muon container
MuonQualityWord & operator=(const MuonQualityWord &)
assignment operator
MuonQualityWord(const MuonQualityWord &)
copy constructor
uint16_t qualityWord() const
get back the quality word