ATLAS Offline Software
Loading...
Searching...
No Matches
TrigMuonEFInfoTrack.h
Go to the documentation of this file.
1// -*- c++ -*-
2
3/*
4 Copyright (C) 2002-2021 CERN for the benefit of the ATLAS collaboration
5*/
6
7#ifndef TRIGMUONEVENT_TRIGMUONEFINFOTRACK_H
8#define TRIGMUONEVENT_TRIGMUONEFINFOTRACK_H
9
10// STL include(s):
11#include <map>
12#include <string>
13
15
16// Forward declaration(s):
17class MsgStream;
18class TrigMuonEFTrack;
20
22{
23public:
24 /* muon types */
25 static const int MuonTypeEFMuon=1;
26 static const int MuGirlMuon=2;
27 static const int MuGirlMuonTag=3;
28
37
38 bool hasSpectrometerTrack() const;
39 bool hasExtrapolatedTrack() const;
40 bool hasCombinedTrack() const;
41
45
46 void setSpectrometerTrack( std::unique_ptr<TrigMuonEFTrack> track );
47 void setExtrapolatedTrack( std::unique_ptr<TrigMuonEFTrack> track );
48 void setCombinedTrack( std::unique_ptr<TrigMuonEFCbTrack> track );
49
53
57
58 unsigned short int MuonType() const
59 {
60 return m_muonType;
61 }
62
63 void setMuonType(unsigned short int muonType)
64 {
65 this->m_muonType = muonType;
66 }
67
68private:
69
73 unsigned short int m_muonType;
74
75};
76
77std::string str( const TrigMuonEFInfoTrack& d ); //<! printing helper
78MsgStream& operator<< ( MsgStream& m, const TrigMuonEFInfoTrack& d ); //<! printing helper (wraps above)
79
81
82inline bool operator!= ( const TrigMuonEFInfoTrack& a, const TrigMuonEFInfoTrack& b ) {
83 return !( a == b );
84}
85
93void diff( const TrigMuonEFInfoTrack& a, const TrigMuonEFInfoTrack& b, std::map<std::string, double>& variableChange );
94
95CLASS_DEF( TrigMuonEFInfoTrack , 154078292 , 1 )
96
97#endif // TRIGMUONEVENT_TRIGMUONEFINFOTRACK_H
macros to associate a CLID to a type
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
static Double_t a
MsgStream & operator<<(MsgStream &m, const TrigMuonEFInfoTrack &d)
bool operator==(const TrigMuonEFInfoTrack &a, const TrigMuonEFInfoTrack &b)
bool operator!=(const TrigMuonEFInfoTrack &a, const TrigMuonEFInfoTrack &b)
void diff(const TrigMuonEFInfoTrack &a, const TrigMuonEFInfoTrack &b, std::map< std::string, double > &variableChange)
comparison with feedback Function compares two objects and returns "semi verbose" output in the form ...
TrigMuonEFInfoTrack()
Default constructor.
TrigMuonEFTrack * m_spectrometerTrack
TrigMuonEFCbTrack * CombinedTrack()
unsigned short int MuonType() const
unsigned short int m_muonType
void setExtrapolatedTrack(TrigMuonEFTrack *track)
const TrigMuonEFTrack * ExtrapolatedTrack() const
void setMuonType(unsigned short int muonType)
void setSpectrometerTrack(TrigMuonEFTrack *track)
const TrigMuonEFTrack * SpectrometerTrack() const
static const int MuGirlMuon
TrigMuonEFInfoTrack & operator=(const TrigMuonEFInfoTrack &rhs)
Assignement operator.
static const int MuonTypeEFMuon
void setCombinedTrack(TrigMuonEFCbTrack *track)
static const int MuGirlMuonTag
TrigMuonEFTrack * ExtrapolatedTrack()
TrigMuonEFTrack * SpectrometerTrack()
const TrigMuonEFCbTrack * CombinedTrack() const
TrigMuonEFCbTrack * m_combinedTrack
TrigMuonEFTrack * m_extrapolatedTrack