Parameters for Pre-Trigger Simulation Author: F. Reidt (Felix.Reidt@cern.ch) This class controls the parameters used by the pretrigger simulation. A configuration file ca be loaded by calling LoadConfigurationFromFile() The generation of look up tables is also done in this class and has to be done only once after a configuration file was loaded. If no configuration file was loaded, the standard configuration in LoadStandardConfiguration() would be used.
virtual | ~AliTRDptrgParam() |
void | TObject::AbstractMethod(const char* method) const |
virtual void | TObject::AppendPad(Option_t* option = "") |
virtual void | TObject::Browse(TBrowser* b) |
Int_t | CheckVariables() const |
static TClass* | Class() |
virtual const char* | TObject::ClassName() const |
virtual void | TObject::Clear(Option_t* = "") |
virtual TObject* | TObject::Clone(const char* newname = "") const |
virtual Int_t | TObject::Compare(const TObject* obj) const |
virtual void | TObject::Copy(TObject& object) const |
virtual void | TObject::Delete(Option_t* option = "")MENU |
virtual Int_t | TObject::DistancetoPrimitive(Int_t px, Int_t py) |
virtual void | TObject::Draw(Option_t* option = "") |
virtual void | TObject::DrawClass() constMENU |
virtual TObject* | TObject::DrawClone(Option_t* option = "") constMENU |
virtual void | TObject::Dump() constMENU |
virtual void | TObject::Error(const char* method, const char* msgfmt) const |
virtual void | TObject::Execute(const char* method, const char* params, Int_t* error = 0) |
virtual void | TObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0) |
virtual void | TObject::ExecuteEvent(Int_t event, Int_t px, Int_t py) |
virtual void | TObject::Fatal(const char* method, const char* msgfmt) const |
virtual TObject* | TObject::FindObject(const char* name) const |
virtual TObject* | TObject::FindObject(const TObject* obj) const |
Int_t | GenerateLUTs() |
Int_t* | GetCBLUT(UInt_t CB, Int_t LUTid) |
virtual Option_t* | TObject::GetDrawOption() const |
static Long_t | TObject::GetDtorOnly() |
Int_t* | GetFEBT0LUT(AliTRDptrgParam::AliTRDptrgFEBPosition_t FEBposition, Int_t iLUT) |
UInt_t* | GetFEBT0Thresholds(AliTRDptrgParam::AliTRDptrgFEBPosition_t FEBposition) const |
Int_t* | GetFEBV0LUT(AliTRDptrgParam::AliTRDptrgFEBPosition_t FEBposition, Int_t iCard, Int_t iLUT) |
UInt_t* | GetFEBV0Thresholds(AliTRDptrgParam::AliTRDptrgFEBPosition_t FEBposition, Int_t iCard) const |
virtual const char* | TObject::GetIconName() const |
virtual const char* | TObject::GetName() const |
virtual char* | TObject::GetObjectInfo(Int_t px, Int_t py) const |
static Bool_t | TObject::GetObjectStat() |
virtual Option_t* | TObject::GetOption() const |
const AliTRDptrgParam::AliTRDptrgPTmasks* | GetPTmasks() const |
virtual const char* | TObject::GetTitle() const |
UInt_t** | GetTLMUcmatrices() const |
const UInt_t* | GetTLMUInputMask() const |
UInt_t** | GetTLMUmultiplicity() const |
Int_t** | GetTLMUoutput() const |
virtual UInt_t | TObject::GetUniqueID() const |
virtual Bool_t | TObject::HandleTimer(TTimer* timer) |
virtual ULong_t | TObject::Hash() const |
virtual void | TObject::Info(const char* method, const char* msgfmt) const |
virtual Bool_t | TObject::InheritsFrom(const char* classname) const |
virtual Bool_t | TObject::InheritsFrom(const TClass* cl) const |
virtual void | TObject::Inspect() constMENU |
static AliTRDptrgParam* | Instance() |
void | TObject::InvertBit(UInt_t f) |
virtual TClass* | IsA() const |
virtual Bool_t | TObject::IsEqual(const TObject* obj) const |
virtual Bool_t | TObject::IsFolder() const |
Bool_t | TObject::IsOnHeap() const |
virtual Bool_t | TObject::IsSortable() const |
Bool_t | TObject::IsZombie() const |
Bool_t | LoadConfigurationFromFile(TString filename) |
void | LoadStandardConfiguration() |
virtual void | TObject::ls(Option_t* option = "") const |
void | TObject::MayNotUse(const char* method) const |
virtual Bool_t | TObject::Notify() |
void | TObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const |
static void | TObject::operator delete(void* ptr) |
static void | TObject::operator delete(void* ptr, void* vp) |
static void | TObject::operator delete[](void* ptr) |
static void | TObject::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 void | TObject::Paint(Option_t* option = "") |
virtual void | TObject::Pop() |
virtual void | TObject::Print(Option_t* option = "") const |
virtual Int_t | TObject::Read(const char* name) |
virtual void | TObject::RecursiveRemove(TObject* obj) |
void | TObject::ResetBit(UInt_t f) |
virtual void | TObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU |
virtual void | TObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "") |
void | TObject::SetBit(UInt_t f) |
void | TObject::SetBit(UInt_t f, Bool_t set) |
virtual void | TObject::SetDrawOption(Option_t* option = "")MENU |
static void | TObject::SetDtorOnly(void* obj) |
static void | TObject::SetObjectStat(Bool_t stat) |
virtual void | TObject::SetUniqueID(UInt_t uid) |
virtual void | ShowMembers(TMemberInspector&) |
virtual void | Streamer(TBuffer&) |
void | StreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b) |
virtual void | TObject::SysError(const char* method, const char* msgfmt) const |
static void | Terminate() |
Bool_t | TObject::TestBit(UInt_t f) const |
Int_t | TObject::TestBits(UInt_t f) const |
virtual void | TObject::UseCurrentStyle() |
virtual void | TObject::Warning(const char* method, const char* msgfmt) const |
virtual Int_t | TObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) |
virtual Int_t | TObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const |
UInt_t | BinaryTStringToInt(TString number) const |
void | CheckSignalsInvolved(TArrayI*& results, TArrayI*& signalsInvolved, Int_t inputWidth) |
TString | CleanTString(TString string) |
void | ConvertLogicalEqToBitVectors(TString eq, TArrayI*& results, TArrayI*& signalsInvolved) |
virtual void | TObject::DoError(int level, const char* location, const char* fmt, va_list va) const |
Int_t* | GenerateLUTbasedOnEq(TString eq, Int_t inputWidth, Int_t initValue) |
UInt_t | GetMultiplicity(UInt_t BitVector) const |
UInt_t | GetMultiplicity(Int_t BitVector) const |
Int_t | LookUp(TString *const identifier) const |
void | TObject::MakeZombie() |
void | MergeResults(TArrayI*& partResult1, TArrayI*& partResult2, TArrayI*& results, TArrayI*& signalsInvolved1, TArrayI*& signalsInvolved2, TArrayI*& signalsInvolved, Bool_t useOR) |
Bool_t | ParseCBAC(TString identifier, TString value) |
Bool_t | ParseCBB(TString identifier, TString value) |
Bool_t | ParseFEB(TString identifier, TString value) |
Bool_t | ParseMultiplicityCondition(TString condition, UInt_t* threshold, UInt_t* mask) |
Bool_t | ParseTLMU(TString identifier, TString value) |
void | PrepareLine(TString line, TString& identifier, TString& value) |
void | SplitUpValues(TString value, TObjArray& arr) |
AliTRDptrgParam() | |
AliTRDptrgParam(const AliTRDptrgParam& rhs) | |
AliTRDptrgParam& | operator=(const AliTRDptrgParam& rhs) |
enum AliTRDptrgFEBType_t { | kUndefined | |
kTZERO | ||
kVZERO | ||
}; | ||
enum AliTRDptrgOperatingMode_t { | kHits | |
kDigits | ||
}; | ||
enum AliTRDptrgFEBPosition_t { | kB | |
kA | ||
kC | ||
kUnknown | ||
}; | ||
enum TObject::EStatusBits { | kCanDelete | |
kMustCleanup | ||
kObjInCanvas | ||
kIsReferenced | ||
kHasUUID | ||
kCannotPick | ||
kNoContextMenu | ||
kInvalidObject | ||
}; | ||
enum TObject::[unnamed] { | kIsOnHeap | |
kNotDeleted | ||
kZombie | ||
kBitMask | ||
kSingleKey | ||
kOverwrite | ||
kWriteDelete | ||
}; |
TString | fCBALUTequ[2] | logical equations used for LUT generation for CB-A |
TString | fCBBLUTequ[3] | logical equations used for LUT generation for CB-B |
TString | fCBCLUTequ[2] | logical equations used for LUT generation for CB-C |
Int_t*** | fCBLUTs | control box look up tables |
Int_t*** | fFEBT0LUTs | look up tables [position][LUT][entry] |
UInt_t*** | fFEBT0Multiplicities | multiplicity threshold for T0 |
UInt_t** | fFEBT0Thresholds | threshold for analog value discrimination |
Int_t**** | fFEBV0LUTs | look up tables [position][feb][LUT][entry] |
UInt_t**** | fFEBV0Multiplicities | multiplicity threshold for V0 |
UInt_t*** | fFEBV0Thresholds | threshold for analog value discrimation |
AliTRDptrgParam::AliTRDptrgPTmasks | fPTmasks | |
UInt_t | fTLMUInputMask[18] | masks TOF-to-TRD bits |
UInt_t | fTLMUInputStretch | designates how long TLMU input is stretched |
UInt_t** | fTLMUcmatrices | [matrix][section] unsigned int values |
UInt_t** | fTLMUmultiplicity | [slice][0 = lower bound, 1 = upper bound] |
Int_t** | fTLMUoutput | [output][0 = cmatrix, 1 = multslice] |
static AliTRDptrgParam* | fgInstance | instance pointer |
Inheritance Chart: | ||||||||
|
Reads pretrigger configuration file and forwards identifiers and values to the corresponding parser functions This method is only checking for certain keywords at the beginning of a line in the config file
generates all LUTs defined inside this object, this schould called only once, after configuration is loaded in order to save cpu time
Prepares a line for parsing divide identifier and value clear identifier and value
converts a string formed like "M(1111_1111)>4" to a input mask and a multiplicity threshold check whether condition is starting with "M(
Transforms identifier into look up table address bit this function has to be extended/changed when different identifiers for other equations and destination LUTs should be used
converts a logical equation to a LUT
input string must not contain white spaces or tabs
only identifiers, ||, &&, (, ) and ! are allowed
neglected signals are assumed to be zero in this function
this problem is solved by "void CheckSignalsInvolved(...)"
checks whether all input signals are taken into account this function is needed to be able to write equations which contain not all possible signals and which are not mentioned in the equation do not effect the result X=B&&C=(A||!A)&&B&&C this routine is quite inefficient but working O((2^inputWidth)^3) generate mask:
Processes the conversion of a logical equation to a look up table
get T0 FEB LUTs
get V0 FEB LUTs
--- GETTER FUNCTIONS ----------------------------------------------------- -- TLMU --
{ return this->fTLMUInputMask; }
get TLMU coincidence matrices
{ return this->fTLMUmultiplicity; }
returns the corresponding LUT (control boxes only)
{ return &fPTmasks; }