ROOT logo
AliRoot » MUON » AliMUONLocalTriggerBoard

class AliMUONLocalTriggerBoard: public AliMUONTriggerBoard

 \class AliMUONLocalTriggerBoard
 A local trigger board has as input a bit pattern and returns
 the local trigger response after comparison w/ a LUT
 \todo Change member functions comments in capital letters to normal text

 \author Rachid Guernane (LPCCFd)

Function Members (Methods)

public:
AliMUONLocalTriggerBoard()
AliMUONLocalTriggerBoard(AliMpLocalBoard* mpLocalBoard)
AliMUONLocalTriggerBoard(const AliMUONLocalTriggerBoard& right)
virtual~AliMUONLocalTriggerBoard()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidConf() const
virtual voidTNamed::Copy(TObject& named) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual TStringGetCrate() const
virtual Int_tGetDev() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual Int_tGetI() const
virtual const char*TObject::GetIconName() const
virtual const char*TNamed::GetName() const
virtual Int_tGetNumber() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual UShort_tAliMUONTriggerBoard::GetResponse() const
virtual Int_tGetSdev() const
virtual Int_tGetStripX11() const
virtual Int_tGetStripY11() const
virtual UShort_tGetSwitch(Int_t i) const
virtual Bool_tGetTC() const
virtual const char*TNamed::GetTitle() const
virtual Int_tGetTrigY() const
virtual UInt_tTObject::GetUniqueID() const
virtual voidGetXY(UShort_t** XY) const
virtual UShort_tGetXY(Int_t i, Int_t j) const
virtual voidGetXYD(UShort_t** V) const
virtual voidGetXYU(UShort_t** V) const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTNamed::Hash() const
Bool_tHasLUT() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
virtual Bool_tIsNotified() const
virtual Bool_tIsNull() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTNamed::IsSortable() const
virtual Bool_tIsTrigX() const
virtual Bool_tIsTrigY() const
Bool_tTObject::IsZombie() const
virtual voidLocalTrigger()
virtual voidTNamed::ls(Option_t* option = "") const
virtual voidMask(Int_t index, UShort_t value)
voidTObject::MayNotUse(const char* method) const
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
AliMUONLocalTriggerBoard&operator=(const AliMUONLocalTriggerBoard& right)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidPattern(Option_t* option = "X Y") const
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
virtual voidReset()
voidTObject::ResetBit(UInt_t f)
virtual voidResetResponse()
virtual voidResponse()
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
virtual voidScan(Option_t* option = "") const
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidSetbitM(Int_t strip, Int_t cathode, Int_t chamber)
voidSetCoinc44(Int_t coinc44 = 0)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetLUT(AliMUONTriggerLut* lut)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidSetXY(UShort_t** XY)
virtual voidSetXYD(UShort_t** V)
virtual voidSetXYU(UShort_t** V)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
virtual voidSort2x5(Int_t* dev1, Int_t* dev2, Int_t* minDev, Int_t& dev1GTdev2)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual Int_tTriggered() const
virtual voidTrigX(Int_t* ch1q, Int_t* ch2q, Int_t* ch3q, Int_t* ch4q)
virtual voidTrigY(Int_t* y1, Int_t* y2, Int_t* y3, Int_t* y4, Int_t* y3u, Int_t* y3d, Int_t* y4u, Int_t* y4d)
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidBP(Option_t* option) const
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
virtual voidResp(Option_t* option) const

Data Members

protected:
TStringTNamed::fNameobject identifier
UShort_tAliMUONTriggerBoard::fResponse/< RESPONSE
Int_tAliMUONTriggerBoard::fSlot/< SLOT NUMBER IN CRATE
TStringTNamed::fTitleobject title
static const Int_tfgkCircuitId[234]/< old numbering (to be removed)
private:
Int_tfCoinc44/< Coinc 44 (0/1 = coinc34/coinc44)
Int_tfCoordY[5]/< Y (from algo)
Int_tfDev/< X deviation as in table 3-1 of Local Trigger Board PRR
AliMUONTriggerLut*fLUT!< Pointer to trigger LUT, that we do not own.
Int_tfLutHpt[2]/< High Pt cuts estimated from LUT
Int_tfLutLpt[2]/< Low Pt cuts estimated from LUT
UShort_tfMask[2][4]/< Mask
Int_tfMinDev[5]/< Dev (from algo)
Int_tfMinDevStrip[5]/< X (from algo)
AliMpLocalBoard*fMpLocalBoard/< pointer to the local board mapping
Int_tfOutput/< Board has triggered
Int_tfStripX11/< MT1 X position of the valid road
Int_tfStripY11/< MT1 Y position of the valid road
Int_tfTrigY/< Trigger in Y
UShort_tfXY[2][4]/< Bit pattern
UShort_tfXYD[2][4]/< Bit pattern DOWN
UShort_tfXYU[2][4]/< Bit pattern UP

Class Charts

Inheritance Chart:
TNamed
AliMUONTriggerBoard
AliMUONLocalTriggerBoard

Function documentation

AliMUONLocalTriggerBoard()
 default constructor

AliMUONLocalTriggerBoard(AliMpLocalBoard* mpLocalBoard)
 Standard constructor

AliMUONLocalTriggerBoard(const AliMUONLocalTriggerBoard& right)
 Copy constructor

AliMUONLocalTriggerBoard& operator=(const AliMUONLocalTriggerBoard& right)
 Assigment operator;
 equal operator
~AliMUONLocalTriggerBoard()
 Destructor
void Reset()
 reset board

void ResetResponse()
 reset board response

void SetbitM(Int_t strip, Int_t cathode, Int_t chamber)
 0 .. LBS   :   N-1 .. MSB
void Pattern(Option_t* option = "X Y") const
 print bit pattern

void BP(Option_t* option) const
 Respect the old printout format
void TrigX(Int_t* ch1q, Int_t* ch2q, Int_t* ch3q, Int_t* ch4q)
 note : coinc44 = flag 0 or 1 (0 coincidence -> 3/4, 1 coincidence -> 4/4) \n
---------------------------------------------------------                  \n
 step # 1 : declustering, reduction DS, calculate sgle & dble              \n
---------------------------------------------------------
void Sort2x5(Int_t* dev1, Int_t* dev2, Int_t* minDev, Int_t& dev1GTdev2)
 returns minimun between dev1 and dev2
void TrigY(Int_t* y1, Int_t* y2, Int_t* y3, Int_t* y4, Int_t* y3u, Int_t* y3d, Int_t* y4u, Int_t* y4d)
 note : resMid = 1 -> cancel                             \n
---------------------------------------------------------\n
 step # 1 : prehandling Y                                \n
---------------------------------------------------------
void LocalTrigger()
 L0 trigger after LUT

Int_t GetI() const
 old numbering

void Mask(Int_t index, UShort_t value)
 set mask

void Scan(Option_t* option = "") const
 full dump

void Conf() const
 board switches

void Resp(Option_t* option) const
 board I/O

void Response()
 algo

Bool_t IsTrigY() const
 Return the response of non-bending plane
Bool_t IsTrigX() const
 Return the response of bending plane
Bool_t IsNull() const
 Check if board has fired strips in the first station
Bool_t HasLUT() const
 Return true if LUT is set
{ return (fLUT != 0); }
void SetLUT(AliMUONTriggerLut* lut)
 Set LUT
{ fLUT = lut; }
void SetCoinc44(Int_t coinc44 = 0)
 Set Coinc 44 (0/1 = coinc34/coinc44)
{ fCoinc44 = coinc44; }
UShort_t GetSwitch(Int_t i) const
 Return i-th Switch value
Bool_t GetTC() const
 Return Transverse connector
{return fMpLocalBoard->GetTC();}
Int_t GetNumber() const
 Return Board number
{ return fMpLocalBoard->GetId(); }
Bool_t IsNotified() const
 Is notified (copy boards are not)
{ return fMpLocalBoard->IsNotified(); }
TString GetCrate() const
 Return Crate name
{return fMpLocalBoard->GetCrate();}
void GetXY(UShort_t** XY) const
 Return XY
{for (Int_t i=0;i<2;i++) for (Int_t j=0;j<4;j++) XY[i][j] = fXY[i][j];}
UShort_t GetXY(Int_t i, Int_t j) const
 Return XY
{return fXY[i][j];}
void SetXY(UShort_t** XY)
 Set XY
{for (Int_t i=0;i<2;i++) for (Int_t j=0;j<4;j++) fXY[i][j] = XY[i][j];}
void SetXYU(UShort_t** V)
 Set XYU
{for (Int_t i=0;i<2;i++) for (Int_t j=0;j<4;j++) fXYU[i][j] = V[i][j];}
void GetXYU(UShort_t** V) const
 Return XYU
{for (Int_t i=0;i<2;i++) for (Int_t j=0;j<4;j++) V[i][j] = fXYU[i][j];}
void SetXYD(UShort_t** V)
 Set XYD
{for (Int_t i=0;i<2;i++) for (Int_t j=0;j<4;j++) fXYD[i][j] = V[i][j];}
void GetXYD(UShort_t** V) const
 Return XYD
{for (Int_t i=0;i<2;i++) for (Int_t j=0;j<4;j++) V[i][j] = fXYD[i][j];}
Int_t Triggered() const
 Return info if Board has triggered
{return fOutput;}
Int_t GetStripX11() const
 Return MT1 X position of the valid road
{return fStripX11;}
Int_t GetStripY11() const
 Return MT1 Y position of the valid road
{return fStripY11;}
Int_t GetDev() const
 Return Deviation
{return fDev;}
Int_t GetSdev() const
 Return Sign of Deviation
{return fMinDev[4];}
Int_t GetTrigY() const
 Return Trigger in Y
{return fTrigY;}