]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/AliMUONGlobalTrigger.cxx
Adding missing include
[u/mrichter/AliRoot.git] / MUON / AliMUONGlobalTrigger.cxx
CommitLineData
a9e2aefa 1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
8c343c7c 14 **************************************************************************/
15
e516b01d 16
30178c30 17/* $Id$ */
a9e2aefa 18
d1525c79 19
a9e2aefa 20#include "AliMUONGlobalTrigger.h"
eba3379e 21#include "AliLog.h"
22#include "AliMUONLocalStruct.h"
a9e2aefa 23
5398f946 24/// \class AliMUONGlobalTrigger
25/// Global Trigger algorithm data output.
26/// Built from Local and Regional algorithms. \n
27/// Update for copy & assigment operator,
28/// add SetGlobalPattern and GetGlobalPattern method for rawdata
29/// (Ch. Finck)
30/// \author Ph. Crochet
31
32/// \cond CLASSIMP
925e6570 33ClassImp(AliMUONGlobalTrigger)
5398f946 34/// \endcond
8d7dfec2 35
a9e2aefa 36//----------------------------------------------------------------------
37AliMUONGlobalTrigger::AliMUONGlobalTrigger()
8d7dfec2 38 : TObject(),
8d4fefab 39 fSingleLpt(0),
40 fSingleHpt(0),
41
8d7dfec2 42 fPairUnlikeLpt(0),
43 fPairUnlikeHpt(0),
8d7dfec2 44
45 fPairLikeLpt(0),
ad705f30 46 fPairLikeHpt(0)
8d7dfec2 47{
5398f946 48 /// Default constructor
fcf99e71 49 AliDebug(1,Form("this=%p",this));
a9e2aefa 50}
5398f946 51
e9b63742 52//----------------------------------------------------------------------
30178c30 53AliMUONGlobalTrigger::AliMUONGlobalTrigger(const AliMUONGlobalTrigger& theMUONGlobalTrig)
5398f946 54 : TObject(theMUONGlobalTrig),
e9b63742 55
8d4fefab 56 fSingleLpt(theMUONGlobalTrig.fSingleLpt),
57 fSingleHpt(theMUONGlobalTrig.fSingleHpt),
5398f946 58
59 fPairUnlikeLpt(theMUONGlobalTrig.fPairUnlikeLpt),
60 fPairUnlikeHpt(theMUONGlobalTrig.fPairUnlikeHpt),
5398f946 61
62 fPairLikeLpt(theMUONGlobalTrig.fPairLikeLpt),
ad705f30 63 fPairLikeHpt(theMUONGlobalTrig.fPairLikeHpt)
5398f946 64{
65 /// Copy constructor
fcf99e71 66 AliDebug(1,Form("this=%p copy ctor",this));
67
5398f946 68}
69
70//----------------------------------------------------------------------
71AliMUONGlobalTrigger::~AliMUONGlobalTrigger()
72{
73 /// Destructor
fcf99e71 74 AliDebug(1,Form("this=%p",this));
e9b63742 75}
76
77//----------------------------------------------------------------------
30178c30 78AliMUONGlobalTrigger& AliMUONGlobalTrigger::operator=(const AliMUONGlobalTrigger& theMUONGlobalTrig)
e9b63742 79{
5398f946 80 /// Assignement operator;
81 /// equal operator (useful for non-pointer member in TClonesArray)
8d7dfec2 82
30178c30 83 if (this == &theMUONGlobalTrig)
e9b63742 84 return *this;
30178c30 85
86 // base class assignement
87 TObject::operator=(theMUONGlobalTrig);
e9b63742 88
8d4fefab 89 fSingleLpt = theMUONGlobalTrig.fSingleLpt;
90 fSingleHpt = theMUONGlobalTrig.fSingleHpt;
e9b63742 91
30178c30 92 fPairUnlikeLpt = theMUONGlobalTrig.fPairUnlikeLpt;
93 fPairUnlikeHpt = theMUONGlobalTrig.fPairUnlikeHpt;
e9b63742 94
30178c30 95 fPairLikeLpt = theMUONGlobalTrig.fPairLikeLpt;
96 fPairLikeHpt = theMUONGlobalTrig.fPairLikeHpt;
e9b63742 97
98 return *this;
99}
100
1908473e 101//-----------------------------------------------------------
8d4fefab 102void AliMUONGlobalTrigger::SetFromGlobalResponse(UShort_t globalResponse)
1908473e 103{
104 /// Set class members from global response
8d4fefab 105 /// coming from rawdata & global trigger board
1908473e 106 /// [US:2, LS:2, Single:2] with [Hpt, Lpt]
107 /// remove Apt
108
109 // don't have the information anymore of the sign
8d4fefab 110 fSingleLpt = globalResponse & 0x1;
111 fSingleHpt = (globalResponse >> 1) & 0x1;
1908473e 112
113 fPairUnlikeLpt = (globalResponse >> 4) & 0x1;
114 fPairUnlikeHpt = (globalResponse >> 5) & 0x1;
115
116 fPairLikeLpt = (globalResponse >> 2) & 0x1;
117 fPairLikeHpt = (globalResponse >> 3) & 0x1;
118
119}
402fb06e 120
1908473e 121//-----------------------------------------------------------
122UChar_t AliMUONGlobalTrigger::GetGlobalResponse() const
123{
124 /// Global trigger response
125 /// from class member values
126 /// [US:2, LS:2, Single:2] with [Hpt, Lpt]
1908473e 127
79e561d6 128 Int_t response = 0;
1908473e 129
79e561d6 130 if (SingleLpt()) response|= 0x1;
131 if (SingleHpt()) response|= 0x2;
1908473e 132
79e561d6 133 if (PairLikeLpt()) response|= 0x4;
134 if (PairLikeHpt()) response|= 0x8;
135
136 if (PairUnlikeLpt()) response|= 0x10;
137 if (PairUnlikeHpt()) response|= 0x20;
1908473e 138
139 return response;
1908473e 140}
eba3379e 141//----------------------------------------------------------------------
fcf99e71 142void AliMUONGlobalTrigger::Print(Option_t*) const
eba3379e 143{
71a2d3aa 144 ///
145 /// Printing Global Trigger information
146 ///
ad705f30 147 printf("=============================================\n");
148 printf(" Global Trigger output Low pt High pt\n");
86a4c9ca 149 printf(" Single :\t");
8d4fefab 150 printf("%i\t%i\t",SingleLpt(),SingleHpt());
eba3379e 151 printf("\n");
152
86a4c9ca 153 printf(" UnlikeSign pair :\t");
ad705f30 154 printf("%i\t%i\t",PairUnlikeLpt(),PairUnlikeHpt());
eba3379e 155 printf("\n");
156
86a4c9ca 157 printf(" LikeSign pair :\t");
ad705f30 158 printf("%i\t%i\t",PairLikeLpt(),PairLikeHpt());
eba3379e 159 printf("\n");
160
ad705f30 161 printf("=============================================\n");
fcf99e71 162
eba3379e 163}
402fb06e 164
165