__________________________________________________[C++ CLASS IMPLEMENTATION] Name: expconf/src/TMrbModule.cxx Purpose: MARaBOU configuration: modules Description: Implements class methods to handle modules Keywords: Author: R. Lutter Mailto: <a href=mailto:rudi.lutter@physik.uni-muenchen.de>R. Lutter</a> Revision: $Id: TMrbModule.cxx,v 1.26 2010/12/16 13:12:43 Marabou Exp $ Date:
| TMrbModule() | |
| TMrbModule(const Char_t* ModuleName, const Char_t* ModuleID, Int_t NofChannels, Int_t Range) | |
| virtual | ~TMrbModule() |
| void | TObject::AbstractMethod(const char* method) const |
| Bool_t | AllocateHistograms(Bool_t Flag = kTRUE) |
| virtual void | TObject::AppendPad(Option_t* option = "") |
| virtual void | TObject::Browse(TBrowser* b) |
| Bool_t | CheckID(TMrbConfig::EMrbModuleID ModuleID) const |
| Bool_t | CheckIfPatternIsContiguous() const |
| virtual Bool_t | CheckSubeventType(TMrbSubevent* Subevent) const |
| static TClass* | Class() |
| virtual const char* | TObject::ClassName() const |
| virtual void | TNamed::Clear(Option_t* option = "") |
| virtual TObject* | TNamed::Clone(const char* newname = "") const |
| virtual Int_t | TNamed::Compare(const TObject* obj) const |
| Bool_t | ConvertToInt() const |
| virtual void | TNamed::Copy(TObject& named) const |
| void | CreateHistoArray(const Char_t* ArrayName = NULL) |
| 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 |
| void | ExcludeFromReadout(Bool_t ExcludeFlag = kTRUE) |
| 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 void | TNamed::FillBuffer(char*& buffer) |
| virtual TObject* | TObject::FindObject(const char* name) const |
| virtual TObject* | TObject::FindObject(const TObject* obj) const |
| TMrbNamedX* | FindRegister(const Char_t* RegName) const |
| TMrbNamedX* | FindRegister(Int_t RegIndex) const |
| Int_t | Get(const Char_t* RegName, Int_t Channel = -1) const |
| Int_t | Get(Int_t RegIndex, Int_t Channel = -1) const |
| Int_t | GetBinning() const |
| Int_t | GetBinRange() const |
| TMrbModuleChannel* | GetChannel(Int_t) const |
| virtual const Char_t* | GetCommonCodeFile() const |
| Int_t | GetCrate() const |
| TMrbNamedX* | GetDataType() const |
| virtual Char_t* | GetDeviceStruct() |
| virtual Option_t* | TObject::GetDrawOption() const |
| static Long_t | TObject::GetDtorOnly() |
| const Char_t* | GetHistoArrayName() |
| virtual const char* | TObject::GetIconName() const |
| TObjArray* | GetLofChannels() |
| const Char_t* | GetLofChannelsAsString(TString& LofChannels) const |
| TMrbLofNamedX* | GetLofRegisters() |
| TMrbNamedX* | GetMbsBranch() |
| Int_t | GetMbsBranchNo() |
| virtual const Char_t* | GetMnemonic() const |
| TMrbNamedX* | GetModuleID() |
| virtual const char* | TNamed::GetName() const |
| Int_t | GetNofChannels() const |
| Int_t | GetNofChannelsUsed() const |
| Int_t | GetNofDataBits() const |
| Int_t | GetNofShortsPerChannel() const |
| Int_t | GetNofShortsPerDatum() const |
| virtual Int_t | GetNofSubDevices() const |
| virtual char* | TObject::GetObjectInfo(Int_t px, Int_t py) const |
| static Bool_t | TObject::GetObjectStat() |
| virtual Option_t* | TObject::GetOption() const |
| UInt_t | GetPatternOfChannelsUsed() const |
| const Char_t* | GetPosition() const |
| virtual const Char_t* | GetPrivateCodeFile() const |
| Int_t | GetRange() |
| Int_t | GetSerial() const |
| Int_t | GetSubDevice() const |
| Int_t | GetTimeOffset() const |
| virtual const char* | TNamed::GetTitle() const |
| TMrbNamedX* | GetType() |
| virtual UInt_t | TObject::GetUniqueID() const |
| Int_t | GetXmax() |
| Int_t | GetXmin() |
| virtual Bool_t | TObject::HandleTimer(TTimer* timer) |
| Bool_t | HasBlockReadout() const |
| virtual ULong_t | TNamed::Hash() const |
| virtual Bool_t | HasPrivateCode() const |
| virtual Bool_t | HasRandomReadout() const |
| Bool_t | HasRegisters() const |
| void | Help() |
| Bool_t | HistoArrayToBeCreated() |
| Bool_t | HistosToBeAllocated() 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 |
| void | TObject::InvertBit(UInt_t f) |
| virtual TClass* | IsA() const |
| Bool_t | IsActive() const |
| Bool_t | IsCamac() const |
| virtual Bool_t | TObject::IsEqual(const TObject* obj) const |
| virtual Bool_t | TObject::IsFolder() const |
| Bool_t | TObject::IsOnHeap() const |
| virtual Bool_t | IsRaw() const |
| virtual Bool_t | TNamed::IsSortable() const |
| Bool_t | IsVME() const |
| Bool_t | TObject::IsZombie() const |
| Bool_t | LoadCodeTemplates(const Char_t* TemplateFile) |
| virtual void | TNamed::ls(Option_t* option = "") const |
| virtual Bool_t | MakeAnalyzeCode(ofstream& AnaStrm, TMrbConfig::EMrbAnalyzeTag TagIndex, const Char_t* Extension) |
| virtual Bool_t | MakeRcFile(ofstream& RcStrm, TMrbConfig::EMrbRcFileTag TagIndex, const Char_t* ResourceName) |
| virtual Bool_t | MakeReadoutCode(ofstream& RdoStrm, TMrbConfig::EMrbModuleTag TagIndex) |
| virtual Bool_t | MakeReadoutCode(ofstream& RdoStrm, TMrbConfig::EMrbReadoutTag TagIndex, TMrbTemplate& Template, const Char_t* Prefix = NULL) |
| virtual Bool_t | MakeReadoutCode(ofstream& RdoStrm, TMrbConfig::EMrbModuleTag TagIndex, TMrbModuleChannel* Channel, Int_t Value = 0) |
| 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) |
| TNamed& | TNamed::operator=(const TNamed& rhs) |
| virtual void | TObject::Paint(Option_t* option = "") |
| virtual void | TObject::Pop() |
| virtual void | Print() const |
| virtual void | Print(Option_t* Option) const |
| void | Print(ostream& OutStrm, const Char_t* Prefix = "") const |
| void | PrintRegister(const Char_t* RegName) const |
| void | PrintRegister(ostream& OutStrm, const Char_t* RegName, const Char_t* Prefix = "") 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(ostream& out, Option_t* option = "") |
| Bool_t | Set(const Char_t* RegName, Int_t Value, Int_t Channel = -1) |
| Bool_t | Set(Int_t RegIndex, Int_t Value, Int_t Channel = -1) |
| Bool_t | Set(const Char_t* RegName, const Char_t* Value, Int_t Channel = -1) |
| Bool_t | Set(Int_t RegIndex, const Char_t* Value, Int_t Channel = -1) |
| void | SetActive(Bool_t ActiveFlag = kTRUE) |
| void | SetBinning(Int_t ChansPerBin = 1) |
| void | SetBinRange(Int_t BinRange) |
| void | TObject::SetBit(UInt_t f) |
| void | TObject::SetBit(UInt_t f, Bool_t set) |
| Bool_t | SetBlockReadout(Bool_t Flag = kTRUE) |
| virtual void | TObject::SetDrawOption(Option_t* option = "")MENU |
| static void | TObject::SetDtorOnly(void* obj) |
| Bool_t | SetMbsBranch(TMrbNamedX* MbsBranch) |
| Bool_t | SetMbsBranch(Int_t MbsBranchNo, const Char_t* MbsBranchName = NULL) |
| virtual void | TNamed::SetName(const char* name)MENU |
| virtual void | TNamed::SetNameTitle(const char* name, const char* title) |
| static void | TObject::SetObjectStat(Bool_t stat) |
| void | SetTimeOffset(Int_t TimeOffset) |
| virtual void | TNamed::SetTitle(const char* title = "")MENU |
| void | SetType(UInt_t ModuleType, Bool_t OrFlag = kTRUE) |
| virtual void | TObject::SetUniqueID(UInt_t uid) |
| Bool_t | SetXmax(Int_t Xmax = 0) |
| Bool_t | SetXmin(Int_t Xmin = 0) |
| virtual void | ShowMembers(TMemberInspector& insp) |
| virtual Int_t | TNamed::Sizeof() const |
| virtual void | Streamer(TBuffer& b) |
| void | StreamerNVirtual(TBuffer& b) |
| virtual void | TObject::SysError(const char* method, const char* msgfmt) const |
| Bool_t | TObject::TestBit(UInt_t f) const |
| Int_t | TObject::TestBits(UInt_t f) const |
| Bool_t | ToBeExcludedFromReadout() 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 |
| virtual void | DefineRegisters() |
| void | DeleteRegisters() |
| virtual void | TObject::DoError(int level, const char* location, const char* fmt, va_list va) const |
| void | TObject::MakeZombie() |
| enum TObject::EStatusBits { | kCanDelete | |
| kMustCleanup | ||
| kObjInCanvas | ||
| kIsReferenced | ||
| kHasUUID | ||
| kCannotPick | ||
| kNoContextMenu | ||
| kInvalidObject | ||
| }; | ||
| enum TObject::[unnamed] { | kIsOnHeap | |
| kNotDeleted | ||
| kZombie | ||
| kBitMask | ||
| kSingleKey | ||
| kOverwrite | ||
| kWriteDelete | ||
| }; |
| Bool_t | UtilitiesLoaded | kTRUE if some utility procedures already loaded |
| Int_t | fBinRange | number of bins |
| Bool_t | fBlockReadout | kTRUE if block readout; |
| TObjArray | fChannelSpec | channel specifications (type TMrbModuleChannel *) |
| Int_t | fChansPerBin | channels per bin |
| TMrbTemplate | fCodeTemplates | store template code |
| Int_t | fCrate | crate number |
| Bool_t | fCreateHistoArray | kTRUE if histo array / .histlist file is to be created |
| TMrbNamedX* | fDataType | data type |
| Bool_t | fExcludeFromReadout | kTRUE if to be EXcluded from readout |
| TString | fHistoArrayName | name of histo array / .histlist file |
| Bool_t | fHistosToBeAllocated | kTRUE if histograms to be allocated for each channel |
| Bool_t | fIsActive | kTRUE if module active |
| TMrbLofNamedX | fLofRegisters | list of registers |
| TMrbNamedX | fMbsBranch | branch within MBS |
| TMrbNamedX | fModuleID | module id |
| TMrbNamedX | fModuleType | module type |
| TString | TNamed::fName | object identifier |
| Int_t | fNofChannels | number of channels available |
| Int_t | fNofDataBits | length of data |
| Int_t | fNofShortsPerChannel | number of 16 bit words per channel |
| Int_t | fNofShortsPerDatum | number of 16 bit words per datum |
| TString | fPosition | crate & addr |
| Int_t | fRange | number of data points |
| Int_t | fSerial | unique serial number |
| Int_t | fSubDevice | subdevice |
| Int_t | fTimeOffset | time offset |
| TString | TNamed::fTitle | object title |
| Int_t | fXmax | |
| Int_t | fXmin | xmin / xmax |

__________________________________________________________________[C++ CTOR] Name: TMrbModule Purpose: Create a camac module Arguments: Char_t * ModuleName -- module name Char_t * ModuleID -- module type Int_t NofChannels -- number of channels Int_t Range -- number of data points Results: -- Exceptions: Description: Defines a new module having specified number of channels Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::GetNofChannelsUsed Purpose: Calculate number of channels in use Arguments: -- Results: Int_t NofUsed -- number of channels used Exceptions: Description: Calculates number of active channels Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::GetLofChannelsAsString Purpose: Return a list of channel names Arguments: TString & LofChannels -- where to store list Results: Char_t * LofChannels -- same as arg above Exceptions: Description: Returns a :-separated list of channel names Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::GetPatternOfChannelsUsed Purpose: Return pattern of channels in use Arguments: -- Results: UInt_t PofChannelsUsed -- pattern of channels used Exceptions: Description: Build bit pattern of active channels Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::CheckIfPatternIsContiguous Purpose: Check if channels have been assigned contiguously Arguments: -- Results: kTRUE/kFALSE Exceptions: Description: Checks if active channels are contiguous starting with ch0. Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::SetBlockReadout Purpose: Enable/disable block readout Arguments: Bool_t Flag -- block mode flag Results: kTRUE/kFALSE Exceptions: Description: Enables block mode if channels are allocated continuously. Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::GetChannel Purpose: Return addr of specified channel Arguments: Int_t Channel -- channel number Results: TMrbModuleChannel * ChAddr -- channel addr or NULL on error Exceptions: Channel out of range Description: Checks if channel number is legal and return addr of class object Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::Set Purpose: Set register values Arguments: Char_t * Regname -- register name Int_t Value -- value to be set Int_t Channel -- channel number Results: kTRUE/kFALSE Exceptions: Description: Sets register values of specified channel. Channel = -1: set values for all channels or set channel of a common register Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::Set Purpose: Set register values Arguments: Int_t RegIndex -- register index Int_t Value -- value to be set Int_t Channel -- channel number Results: kTRUE/kFALSE Exceptions: Description: Sets register values of specified channel. Channel = -1: set values for all channels or set channel of a common register Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::Set Purpose: Set register values Arguments: Char_t * Regname -- register name Char_t * Value -- mnemonic value to be set Int_t Channel -- channel number Results: kTRUE/kFALSE Exceptions: Description: Sets register values of specified channel. Channel = -1: set values for all channels or set channel of a common register Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::Set Purpose: Set register values Arguments: Int_t RegIndex -- register index Char_t * Value -- mnemonic value to be set Int_t Channel -- channel number Results: kTRUE/kFALSE Exceptions: Description: Sets register values of specified channel. Channel = -1: set values for all channels or set channel of a common register Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::Get Purpose: Get register values Arguments: Char_t * RegName -- register name Int_t Channel -- channel number Results: Int_t Value -- register value Exceptions: Description: Gets register values of specified channel Channel = -1: set value of a common register Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::Get Purpose: Get register values Arguments: Int_t RegIndex -- register index Int_t Channel -- channel number Results: Int_t Value -- register value Exceptions: Description: Gets register values of specified channel Channel = -1: set value of a common register Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::MakeAnalyzeCode Purpose: Write a piece of code for data analysis Arguments: ofstream & AnaStrm -- file output stream EMrbAnalyzeTag TagIndex -- index of tag word from template file Char_t * Extension -- file extensions to be appended (.h or .cxx) Results: Exceptions: Description: Writes code needed for data analysis. Searches for following files: (1) if module has private code (1a) Module_<Name>.<Extension>.code (1b) <PrivateCodeFile>.<Extension>.code (1c) Module_<Class>.<Extension>.code (2) standard: Module.<Extension>.code This method is optional and doesn't generate an error if no template file has been found. Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::LoadCodeTemplates Purpose: Load code from template file Arguments: TString & TemplateFile -- file name Results: kTRUE/kFALSE Exceptions: Description: Reads code from template file for further expansion Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::DeleteRegisters() Purpose: Empty list of registers Arguments: -- Results: -- Exceptions: Description: Removes registers. Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::PrintRegister() Purpose: Print register settings Arguments: ostream * OutStrm -- output stream Char_t * RegName -- register name Char_t * Prefix -- prefix Results: -- Exceptions: Description: Output register settings Keywords:
________________________________________________________________[C++ METHOD] Name: TMrbModule::SetMbsBranch Purpose: Assign module to a mbs branch Arguments: Int_t MbsBranchNo -- mbs branch number Char_t * BranchName -- name Results: kTRUE/kFALSE Exceptions: Description: Assigns module to a mbs branch. Keywords:
find register by index
{ return(fLofRegisters.FindByIndex(RegIndex)); }{ return(kFALSE); }{ return(kFALSE); }{ return(kFALSE); }