ROOT logo
AliRoot » STEER » STEER » AliCentralTrigger

class AliCentralTrigger: public TObject


This class for running the Central Trigger Processor


Load Configuration
Make a list the trigger detectors involved (from the classes)
For the each event
Run the Trigger for the each detector
Get the inputs
Check the trigger classes
Create the class mask
Save result



Function Members (Methods)

public:
AliCentralTrigger()
AliCentralTrigger(TString& config)
virtual~AliCentralTrigger()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
Bool_tCheckTriggeredDetectors() const
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
voidDeleteConfiguration()
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 TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
ULong64_tGetClassMask() const
ULong64_tGetClassMaskNext50() const
UInt_tGetClusterMask() const
AliTriggerConfiguration*GetConfiguration()
TStringGetDetectors()
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
TObjArray*GetFiredClasses() const
virtual const char*TObject::GetIconName() const
UInt_tGetL0TriggerInputs() const
UInt_tGetL1TriggerInputs() const
UShort_tGetL2TriggerInputs() const
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() 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
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
Bool_tLoadConfiguration(TString& config)
virtual voidTObject::ls(Option_t* option = "") const
voidMakeBranch(TString name, TTree* tree)
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)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidPrint(Option_t* opt = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidReset()
voidTObject::ResetBit(UInt_t f)
Bool_tRunTrigger(AliRunLoader* runloader, const char* detectors)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidSetClassMask(ULong64_t mask)
voidSetClassMaskNext50(ULong64_t mask)
voidSetClusterMask(UInt_t mask)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetL0TriggerInputs(UInt_t mask)
voidSetL1TriggerInputs(UInt_t mask)
voidSetL2TriggerInputs(UShort_t mask)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
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
ULong64_tTriggerClasses()
voidTriggerInputs()
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 voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
private:
AliCentralTrigger(const AliCentralTrigger& ctp)
Bool_tIsOwner() const
Bool_tIsSelected(TString detName, TString& detectors) const
AliCentralTrigger&operator=(const AliCentralTrigger& ctp)
voidSetOwner(Bool_t x = kTRUE)

Data Members

protected:
ULong64_tfClassMaskUID ( bitwise OR of conditions mask )
ULong64_tfClassMaskNext50UID ( bitwise OR of conditions mask ) high 50 bits for run2
UInt_tfClusterMaskUID ( bitwise OR of clusters mask - detector pattern)
AliTriggerConfiguration*fConfigurationTrigger Configuration used
UInt_tfL0TriggerInputsL0 trigger inputs (24 bits)
UInt_tfL1TriggerInputsL1 trigger inputs (24 bits)
UShort_tfL2TriggerInputsL2 trigger inputs (12 bits)

Class Charts

Inheritance Chart:
TObject
AliCentralTrigger

Function documentation

AliCentralTrigger()
 Default constructor
AliCentralTrigger(TString& config)
 Default constructor
~AliCentralTrigger()
 Destructor
void DeleteConfiguration()
 Delete the active configuration
void Reset()
 Reset Class Mask and classes
void MakeBranch(TString name, TTree* tree)
 Make a branch to store only trigger class mask event by event
 Run2 payload
Bool_t LoadConfiguration(TString& config)
 Load one and only one pre-created COnfiguration from database/file that match
 with the input string 'config'
 Ej: "p-p", "Pb-Pb" or "p-p-DIMUON CALIBRATION-CENTRAL-BARREL"
TString GetDetectors()
 return TString with the detectors (modules) to be used for triggering
Bool_t RunTrigger(AliRunLoader* runloader, const char* detectors)
 run the trigger
void TriggerInputs()
 Find which inputs are in configuration
 and calculate input pattern
ULong64_t TriggerClasses()
 Check trigger conditions and create the trigger class
 and trigger cluster masks
 Updated to 100 classes
 It seems nobody uses return value
TObjArray* GetFiredClasses() const
 return only the true conditions
void Print(Option_t* opt = "") const
Bool_t IsSelected(TString detName, TString& detectors) const
 check whether detName is contained in detectors
 if yes, it is removed from detectors
Bool_t CheckTriggeredDetectors() const
 Check the trigger mask, finds which trigger classes
 have been fired, load the corresponding trigger clusters and
 finally makes a list of the detectors that have been readout
 for each particular event. This list is then compared to the
 one stored in fClusterMask. Return value:
 true = two lists are equal
 false = two lists are not equal meaning wrong trigger config
 is loaded.
AliCentralTrigger()
ULong64_t GetClassMask() const
{ return fClassMask; }
ULong64_t GetClassMaskNext50() const
{ return fClassMaskNext50; }
UInt_t GetClusterMask() const
{ return fClusterMask; }
UInt_t GetL0TriggerInputs() const
{ return fL0TriggerInputs; }
UInt_t GetL1TriggerInputs() const
{ return fL1TriggerInputs; }
UShort_t GetL2TriggerInputs() const
{ return fL2TriggerInputs; }
AliTriggerConfiguration* GetConfiguration()
{ return fConfiguration; }
void SetClassMask(ULong64_t mask)
 Setters to be used in case raw data when the trigger information
 is read from the event header
{ fClassMask = mask; }
void SetClassMaskNext50(ULong64_t mask)
{ fClassMaskNext50 = mask; }
void SetClusterMask(UInt_t mask)
{ fClusterMask = mask; }
void SetL0TriggerInputs(UInt_t mask)
{ fL0TriggerInputs = mask; }
void SetL1TriggerInputs(UInt_t mask)
{ fL1TriggerInputs = mask; }
void SetL2TriggerInputs(UShort_t mask)
{ fL2TriggerInputs = mask; }
void SetOwner(Bool_t x = kTRUE)
{SetBit(22,x);}
Bool_t IsOwner() const
{return TestBit(22);}
AliCentralTrigger& operator=(const AliCentralTrigger& ctp)