#include "AliLog.h"
#include "AliMUONLocalStruct.h"
+//-----------------------------------------------------------------------------
/// \class AliMUONGlobalTrigger
/// Global Trigger algorithm data output.
/// Built from Local and Regional algorithms. \n
/// add SetGlobalPattern and GetGlobalPattern method for rawdata
/// (Ch. Finck)
/// \author Ph. Crochet
+//-----------------------------------------------------------------------------
/// \cond CLASSIMP
ClassImp(AliMUONGlobalTrigger)
fPairLikeHpt(0)
{
/// Default constructor
+ AliDebug(1,Form("this=%p",this));
+ for (Int_t i = 0; i < 4; i++) fInput[i] = 0;
}
//----------------------------------------------------------------------
fPairLikeHpt(theMUONGlobalTrig.fPairLikeHpt)
{
/// Copy constructor
+ AliDebug(1,Form("this=%p copy ctor",this));
+ for (Int_t i = 0; i < 4; i++) fInput[i] = theMUONGlobalTrig.fInput[i];
+
}
//----------------------------------------------------------------------
AliMUONGlobalTrigger::~AliMUONGlobalTrigger()
{
/// Destructor
+ AliDebug(1,Form("this=%p",this));
}
//----------------------------------------------------------------------
fPairLikeLpt = theMUONGlobalTrig.fPairLikeLpt;
fPairLikeHpt = theMUONGlobalTrig.fPairLikeHpt;
+ for (Int_t i = 0; i < 4; i++) fInput[i] = theMUONGlobalTrig.fInput[i];
+
return *this;
}
/// [US:2, LS:2, Single:2] with [Hpt, Lpt]
/// remove Apt
- // don't have the information anymore of the sign
- fSingleLpt = globalResponse & 0x1;
- fSingleHpt = (globalResponse >> 1) & 0x1;
+ fSingleLpt = (globalResponse >> 1) & 0x1;
+ fSingleHpt = (globalResponse >> 2) & 0x1;
- fPairUnlikeLpt = (globalResponse >> 4) & 0x1;
- fPairUnlikeHpt = (globalResponse >> 5) & 0x1;
+ fPairLikeLpt = (globalResponse >> 3) & 0x1;
+ fPairLikeHpt = (globalResponse >> 4) & 0x1;
- fPairLikeLpt = (globalResponse >> 2) & 0x1;
- fPairLikeHpt = (globalResponse >> 3) & 0x1;
+ fPairUnlikeLpt = (globalResponse >> 5) & 0x1;
+ fPairUnlikeHpt = (globalResponse >> 6) & 0x1;
}
/// from class member values
/// [US:2, LS:2, Single:2] with [Hpt, Lpt]
- Int_t response = 0;
+ UChar_t response = 0;
- if (SingleLpt()) response|= 0x1;
- if (SingleHpt()) response|= 0x2;
+ if (SingleLpt()) response|= 0x2;
+ if (SingleHpt()) response|= 0x4;
- if (PairLikeLpt()) response|= 0x4;
- if (PairLikeHpt()) response|= 0x8;
+ if (PairLikeLpt()) response|= 0x8;
+ if (PairLikeHpt()) response|= 0x10;
- if (PairUnlikeLpt()) response|= 0x10;
- if (PairUnlikeHpt()) response|= 0x20;
+ if (PairUnlikeLpt()) response|= 0x20;
+ if (PairUnlikeHpt()) response|= 0x40;
return response;
}
+
+//-----------------------------------------------------------
+void AliMUONGlobalTrigger::SetFromGlobalInput(const UInt_t *globalInput)
+{
+ /// Global trigger board input
+ /// 4 words each of 32 bits
+
+ for (Int_t i = 0; i < 4; i++) fInput[i] = globalInput[i];
+
+}
+
//----------------------------------------------------------------------
-void AliMUONGlobalTrigger::Print(Option_t* opt) const
+void AliMUONGlobalTrigger::Print(Option_t*) const
{
///
/// Printing Global Trigger information
///
- TString sopt(opt);
- sopt.ToUpper();
- if ( sopt.Contains("FULL") ) {
-
printf("=============================================\n");
printf(" Global Trigger output Low pt High pt\n");
printf(" Single :\t");
printf("\n");
printf("=============================================\n");
- }
+
}