ROOT logo
(UNKNOWN PRODUCT) » INCLUDE » TMrbModule

class TMrbModule: public TNamed

_________________________________________________[C++ CLASS DEFINITION FILE]

 Name:           expconf/inc/TMrbModule.h
 Purpose:        Define experimental configuration for MARaBOU
 Class:          TMrbModule           -- base class for camac & vme modules
 Description:    Class definitions to implement a configuration front-end for MARaBOU
 Author:         R. Lutter
 Revision:       $Id: TMrbModule.h,v 1.24 2011-05-18 11:04:49 Marabou Exp $
 Date:
 Keywords:

Function Members (Methods)

public:
TMrbModule()
TMrbModule(const Char_t* ModuleName, const Char_t* ModuleID, Int_t NofChannels, Int_t Range)
virtual~TMrbModule()
voidTObject::AbstractMethod(const char* method) const
Bool_tAllocateHistograms(Bool_t Flag = kTRUE)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
Bool_tCheckID(TMrbConfig::EMrbModuleID ModuleID) const
Bool_tCheckIfPatternIsContiguous() const
virtual Bool_tCheckProcType()
virtual Bool_tCheckSubeventType(TMrbSubevent* Subevent) const
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
Bool_tConvertToInt() const
virtual voidTNamed::Copy(TObject& named) const
voidCreateHistoArray(const Char_t* ArrayName = 0)
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
voidExcludeFromReadout(Bool_t ExcludeFlag = kTRUE)
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
TMrbNamedX*FindRegister(const Char_t* RegName) const
TMrbNamedX*FindRegister(Int_t RegIndex) const
Int_tGet(const Char_t* RegName, Int_t Channel = -1) const
Int_tGet(Int_t RegIndex, Int_t Channel = -1) const
Int_tGetBinning() const
Int_tGetBinRange() const
TMrbModuleChannel*GetChannel(Int_t) const
virtual const Char_t*GetCommonCodeFile()
Int_tGetCrate() const
TMrbNamedX*GetDataType() const
virtual Char_t*GetDeviceStruct()
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::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_tGetMbsBranchNo()
const Char_t*GetMbsFctName(TString& FctName, TMrbConfig::EMrbModuleFunction Fct)
virtual const Char_t*GetMnemonic() const
TMrbNamedX*GetModuleID()
virtual const char*TNamed::GetName() const
Int_tGetNofChannels() const
Int_tGetNofChannelsUsed() const
Int_tGetNofDataBits() const
Int_tGetNofShortsPerChannel() const
Int_tGetNofShortsPerDatum() const
virtual Int_tGetNofSubDevices() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
UInt_tGetPatternOfChannelsUsed() const
const Char_t*GetPosition() const
virtual const Char_t*GetPrivateCodeFile() const
Int_tGetRange()
Int_tGetSerial() const
Int_tGetSubDevice() const
Int_tGetTimeOffset() const
virtual const char*TNamed::GetTitle() const
TMrbNamedX*GetType()
virtual UInt_tTObject::GetUniqueID() const
Int_tGetXmax()
Int_tGetXmin()
virtual Bool_tTObject::HandleTimer(TTimer* timer)
Bool_tHasBlockReadout() const
virtual ULong_tTNamed::Hash() const
virtual Bool_tHasPrivateCode() const
virtual Bool_tHasRandomReadout() const
Bool_tHasRegisters() const
voidHelp()
Bool_tHistoArrayToBeCreated()
Bool_tHistosToBeAllocated() 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
Bool_tIsActive() const
Bool_tIsAssignedToBranch()
Bool_tIsCamac() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tIsRaw() const
virtual Bool_tTNamed::IsSortable() const
Bool_tIsVME() const
Bool_tTObject::IsZombie() const
Bool_tLoadCodeTemplates(const Char_t* TemplateFile)
virtual voidTNamed::ls(Option_t* option = "") const
virtual Bool_tMakeAnalyzeCode(ofstream& AnaStrm, TMrbConfig::EMrbAnalyzeTag TagIndex, const Char_t* Extension)
virtual Bool_tMakeRcFile(ofstream& RcStrm, TMrbConfig::EMrbRcFileTag TagIndex, const Char_t* ResourceName)
virtual Bool_tMakeReadoutCode(ofstream& RdoStrm, TMrbConfig::EMrbModuleTag TagIndex)
virtual Bool_tMakeReadoutCode(ofstream& RdoStrm, TMrbConfig::EMrbReadoutTag TagIndex, TMrbTemplate& Template, const Char_t* Prefix = 0)
virtual Bool_tMakeReadoutCode(ofstream& RdoStrm, TMrbConfig::EMrbModuleTag TagIndex, TMrbModuleChannel* Channel, Int_t Value = 0)
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)
TNamed&TNamed::operator=(const TNamed& rhs)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidPrint() const
virtual voidPrint(Option_t* Option) const
voidPrint(ostream& OutStrm, const Char_t* Prefix = "") const
voidPrintRegister(const Char_t* RegName) const
voidPrintRegister(ostream& OutStrm, const Char_t* RegName, const Char_t* Prefix = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
Bool_tSet(const Char_t* RegName, Int_t Value, Int_t Channel = -1)
Bool_tSet(Int_t RegIndex, Int_t Value, Int_t Channel = -1)
Bool_tSet(const Char_t* RegName, const Char_t* Value, Int_t Channel = -1)
Bool_tSet(Int_t RegIndex, const Char_t* Value, Int_t Channel = -1)
voidSetActive(Bool_t ActiveFlag = kTRUE)
voidSetBinning(Int_t ChansPerBin = 1)
voidSetBinRange(Int_t BinRange)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
Bool_tSetBlockReadout(Bool_t Flag = kTRUE)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
Bool_tSetMbsBranch(TMrbNamedX* MbsBranch)
Bool_tSetMbsBranch(Int_t MbsBranchNo, const Char_t* MbsBranchName = 0)
Bool_tSetMbsFctName(const Char_t* FctName, TMrbConfig::EMrbModuleFunction Fct)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetTimeOffset(Int_t TimeOffset)
virtual voidTNamed::SetTitle(const char* title = "")MENU
voidSetType(UInt_t ModuleType, Bool_t OrFlag = kTRUE)
virtual voidTObject::SetUniqueID(UInt_t uid)
Bool_tSetXmax(Int_t Xmax = 0)
Bool_tSetXmin(Int_t Xmin = 0)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
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
Bool_tToBeExcludedFromReadout() const
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 voidDefineRegisters()
voidDeleteRegisters()
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

protected:
Bool_tUtilitiesLoadedkTRUE if some utility procedures already loaded
Int_tfBinRangenumber of bins
Bool_tfBlockReadoutkTRUE if block readout;
TObjArrayfChannelSpecchannel specifications (type TMrbModuleChannel *)
Int_tfChansPerBinchannels per bin
TMrbTemplatefCodeTemplatesstore template code
Int_tfCratecrate number
Bool_tfCreateHistoArraykTRUE if histo array / .histlist file is to be created
TMrbNamedX*fDataTypedata type
Bool_tfExcludeFromReadoutkTRUE if to be EXcluded from readout
TStringfHistoArrayNamename of histo array / .histlist file
Bool_tfHistosToBeAllocatedkTRUE if histograms to be allocated for each channel
Bool_tfIsActivekTRUE if module active
TObjArrayfLofMbsFctNamesdefine indiviual function names to be used with MBS
TMrbLofNamedXfLofRegisterslist of registers
TMrbNamedXfMbsBranchbranch within MBS
TMrbNamedXfModuleIDmodule id
TMrbNamedXfModuleTypemodule type
TStringTNamed::fNameobject identifier
Int_tfNofChannelsnumber of channels available
Int_tfNofDataBitslength of data
Int_tfNofShortsPerChannelnumber of 16 bit words per channel
Int_tfNofShortsPerDatumnumber of 16 bit words per datum
TStringfPositioncrate & addr
Int_tfRangenumber of data points
Int_tfSerialunique serial number
Int_tfSubDevicesubdevice
Int_tfTimeOffsettime offset
TStringTNamed::fTitleobject title
Int_tfXmax
Int_tfXminxmin / xmax

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

TMrbModule()
{}
TMrbModule(const Char_t* ModuleName, const Char_t* ModuleID, Int_t NofChannels, Int_t Range)
 explicit ctor:	name, id, nofchannels, range
~TMrbModule()
DeleteRegisters()
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)
Int_t Get(const Char_t* RegName, Int_t Channel = -1) const
Int_t Get(Int_t RegIndex, Int_t Channel = -1) const
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)
TMrbNamedX * FindRegister(const Char_t* RegName) const
TMrbNamedX * FindRegister(Int_t RegIndex) const
 find register by index
{ return(fLofRegisters.FindByIndex(RegIndex)); }
Bool_t HasRegisters() const
{ return(fLofRegisters.GetEntriesFast() > 0); }
Bool_t AllocateHistograms(Bool_t Flag = kTRUE)
{ fHistosToBeAllocated = Flag; return(kTRUE); }
Bool_t HistosToBeAllocated() const
Bool_t ConvertToInt() const
{ return(kTRUE); }
void SetActive(Bool_t ActiveFlag = kTRUE)
{ fIsActive = ActiveFlag; }
Bool_t IsActive() const
{ return(fIsActive); }
void ExcludeFromReadout(Bool_t ExcludeFlag = kTRUE)
{ fExcludeFromReadout = ExcludeFlag; }
Bool_t ToBeExcludedFromReadout() const
{ return(fExcludeFromReadout); }
Bool_t SetBlockReadout(Bool_t Flag = kTRUE)
Bool_t HasBlockReadout() const
{ return(fBlockReadout); }
TMrbLofNamedX * GetLofRegisters()
{ return(&fLofRegisters); }
Int_t GetRange()
{ return(fRange); }
TMrbNamedX * GetDataType() const
{ return(fDataType); }
void SetBinning(Int_t ChansPerBin = 1)
Int_t GetBinning() const
{ return(fChansPerBin); }
void SetBinRange(Int_t BinRange)
{ fBinRange = BinRange; }
Int_t GetBinRange() const
{ return(fBinRange); }
Bool_t SetXmin(Int_t Xmin = 0)
Bool_t SetXmax(Int_t Xmax = 0)
Int_t GetXmin()
{ return(fXmin); }
Int_t GetXmax()
{ return(fXmax); }
Int_t GetSubDevice() const
{ return(fSubDevice); }
void SetType(UInt_t ModuleType, Bool_t OrFlag = kTRUE)
TMrbNamedX * GetType()
{ return(&fModuleType); }
TMrbNamedX * GetModuleID()
{ return(&fModuleID); }
const Char_t * GetMnemonic() const
{ return("unknown"); }
const Char_t * GetPosition() const
{ return(fPosition.Data()); }
Int_t GetCrate() const
{ return(fCrate); }
Int_t GetSerial() const
{ return(fSerial); }
Bool_t SetMbsBranch(Int_t MbsBranchNo, const Char_t* MbsBranchName = 0)
Bool_t SetMbsBranch(TMrbNamedX* MbsBranch)
{ return(this->SetMbsBranch(MbsBranch->GetIndex(), MbsBranch->GetName())); }
TMrbNamedX * GetMbsBranch()
{ return(&fMbsBranch); }
Int_t GetMbsBranchNo()
{ return(fMbsBranch.GetIndex()); }
Bool_t IsAssignedToBranch()
{ return (fMbsBranch.GetIndex() != -1); }
void SetTimeOffset(Int_t TimeOffset)
{ fTimeOffset = TimeOffset; }
Int_t GetTimeOffset() const
{ return(fTimeOffset); }
Bool_t CheckID(TMrbConfig::EMrbModuleID ModuleID) const
{ return(fModuleID.GetIndex() == ModuleID); }
Int_t GetNofShortsPerChannel() const
Int_t GetNofShortsPerDatum() const
{ return(fNofShortsPerDatum); }
Int_t GetNofDataBits() const
{ return(fNofDataBits); }
Int_t GetNofChannels() const
{ return(fNofChannels); }
Int_t GetNofChannelsUsed() const
UInt_t GetPatternOfChannelsUsed() const
Bool_t CheckIfPatternIsContiguous() const
TObjArray * GetLofChannels()
{ return(&fChannelSpec); }
const Char_t * GetLofChannelsAsString(TString& LofChannels) const
TMrbModuleChannel * GetChannel(Int_t ) const
Bool_t LoadCodeTemplates(const Char_t* TemplateFile)
Bool_t MakeReadoutCode(ofstream& RdoStrm, TMrbConfig::EMrbReadoutTag TagIndex, TMrbTemplate& Template, const Char_t* Prefix = 0)
{ return(kFALSE); }
Bool_t MakeReadoutCode(ofstream& RdoStrm, TMrbConfig::EMrbModuleTag TagIndex)
{ return(kFALSE); }
Bool_t MakeReadoutCode(ofstream& RdoStrm, TMrbConfig::EMrbModuleTag TagIndex, TMrbModuleChannel* Channel, Int_t Value = 0)
{ return(kFALSE); }
Bool_t MakeAnalyzeCode(ofstream& AnaStrm, TMrbConfig::EMrbAnalyzeTag TagIndex, const Char_t* Extension)
Bool_t MakeRcFile(ofstream& RcStrm, TMrbConfig::EMrbRcFileTag TagIndex, const Char_t* ResourceName)
{ return(kFALSE); }
Bool_t IsCamac() const
{ return((fModuleType.GetIndex() & TMrbConfig::kModuleCamac) != 0); }
Bool_t IsVME() const
{ return((fModuleType.GetIndex() & TMrbConfig::kModuleVME) != 0); }
void PrintRegister(ostream& OutStrm, const Char_t* RegName, const Char_t* Prefix = "") const
void PrintRegister(const Char_t* RegName) const
{ PrintRegister(cout, RegName, ""); }
void Print(Option_t* Option) const
{ TObject::Print(Option); }
void Print(ostream& OutStrm, const Char_t* Prefix = "") const
{}
void Print() const
{ Print(cout, ""); }
Int_t GetNofSubDevices() const
{ return(1); }
Bool_t HasRandomReadout() const
{ return(kTRUE); }
Bool_t IsRaw() const
{ return(kFALSE); }
Bool_t CheckSubeventType(TMrbSubevent* Subevent) const
{ return(kTRUE); }
Bool_t CheckProcType()
{ return(kTRUE); }
Bool_t HasPrivateCode() const
{ return(kFALSE); }
const Char_t * GetPrivateCodeFile() const
{ return(NULL); }
const Char_t * GetCommonCodeFile()
{ return(NULL); }
void CreateHistoArray(const Char_t* ArrayName = 0)
Bool_t HistoArrayToBeCreated()
{ return(fCreateHistoArray); }
const Char_t * GetHistoArrayName()
{ return(fHistoArrayName.Data()); }
Char_t * GetDeviceStruct()
{ return(NULL); }
Bool_t SetMbsFctName(const Char_t* FctName, TMrbConfig::EMrbModuleFunction Fct)
const Char_t * GetMbsFctName(TString& FctName, TMrbConfig::EMrbModuleFunction Fct)
void Help()
{ gSystem->Exec(Form("mrbHelp %s", this->ClassName())); }
void DefineRegisters()
{}