ROOT logo
Podd » (UNKNOWN) » Decoder::THaCrateMap

class Decoder::THaCrateMap

  Layout, or "map", of DAQ Crates.

  THaCrateMap contains info on how the DAQ crates
  are arranged in Hall A, i.e whether slots are
  fastbus or vme, what the module types are, and
  what header info to expect.  Probably nobody needs
  to know about this except the author, and at present
  an object of this class is a private member of the decoder.

  author  Robert Michaels (

Function Members (Methods)

static TClass*Class()
boolcrateUsed(int crate) const
intgetBank(int crate, int slot) const
intgetHeader(int crate, int slot) const
intgetMask(int crate, int slot) const
intgetMaxSlot(int crate) const
intgetMinSlot(int crate) const
intgetModel(int crate, int slot) const
const char*GetName() const
UShort_tgetNchan(int crate, int slot) const
UShort_tgetNdata(int crate, int slot) const
intgetNslot(int crate) const
intgetScalerCrate(int word) const
const char*getScalerLoc(int crate) const
intinit(TString the_map)
intinit(ULong64_t time = 0)
virtual TClass*IsA() const
boolisBankStructure(int crate) const
boolisCamac(int crate) const
boolisFastBus(int crate) const
boolisScalerCrate(int crate) const
boolisVme(int crate) const
Decoder::THaCrateMap&operator=(const Decoder::THaCrateMap&)
voidprint() const
voidprint(ofstream* file) const
intsetBank(int crate, int slot, int bank)
intsetCrateType(int crate, const char* type)
intsetHeader(int crate, int slot, int head)
intsetMask(int crate, int slot, int mask)
intsetModel(int crate, int slot, UShort_t mod, UShort_t nchan = MAXCHAN, UShort_t ndata = MAXDATA)
intsetScalerLoc(int crate, const char* location)
voidsetSlotDone(int slot)
voidsetUnused(int crate, int slot)
virtual voidShowMembers(TMemberInspector&)
boolslotClear(int crate, int slot) const
boolslotDone(int slot) const
boolslotUsed(int crate, int slot) const
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_b)
Decoder::THaCrateMapTHaCrateMap(const char* db = "cratemap")
Decoder::THaCrateMapTHaCrateMap(const Decoder::THaCrateMap&)
voidincrNslot(int crate)
voidsetClear(int crate, int slot, bool clear)
intSetModelSize(int crate, int slot, UShort_t model)
voidsetUsed(int crate, int slot)

Data Members

enum ECrateCode { kUnknown
static const intCM_ERR
static const intCM_OK
static const UShort_tMAXCHAN
static const UShort_tMAXDATA
TStringfDBfileNameDatabase file name

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

THaCrateMap(const char* db = "cratemap")
int getScalerCrate(int word) const
int setCrateType(int crate, const char* type)
int setModel(int crate, int slot, UShort_t mod, UShort_t nchan = MAXCHAN, UShort_t ndata = MAXDATA)
int SetModelSize(int crate, int slot, UShort_t model)
 Set the max number of channels and data words for some known modules
int setHeader(int crate, int slot, int head)
int setMask(int crate, int slot, int mask)
int setBank(int crate, int slot, int bank)
int setScalerLoc(int crate, const char* location)
void incrNslot(int crate)
int init(ULong64_t time = 0)
 Modify the interface to be able to use a database file.
 The real work is done by the init(TString&) method
void print(ofstream* file) const
void print() const
int init(TString the_map)
 initialize the crate-map according to the lines in the string 'the_map'
 parse each line separately, to ensure that the format is correct
THaCrateMap(const char* db = "cratemap")
virtual ~THaCrateMap()
bool isFastBus(int crate) const
bool isVme(int crate) const
bool isCamac(int crate) const
bool isScalerCrate(int crate) const
bool isBankStructure(int crate) const
int getNslot(int crate) const
int getMinSlot(int crate) const
int getMaxSlot(int crate) const
int getModel(int crate, int slot) const
 This class must inform the crateslot where the modules are.
int getHeader(int crate, int slot) const
int getMask(int crate, int slot) const
int getBank(int crate, int slot) const
const char* getScalerLoc(int crate) const
UShort_t getNchan(int crate, int slot) const
UShort_t getNdata(int crate, int slot) const
bool slotDone(int slot) const
bool crateUsed(int crate) const
bool slotUsed(int crate, int slot) const
bool slotClear(int crate, int slot) const
void setSlotDone(int slot)
void setSlotDone()
void setUnused(int crate, int slot)
const char* GetName() const
{ return fDBfileName.Data(); }
void setUsed(int crate, int slot)
void setClear(int crate, int slot, bool clear)