THaDetMap The standard detector map for a Hall A detector.
THaDetMap() | |
THaDetMap(const THaDetMap&) | |
virtual | ~THaDetMap() |
virtual Int_t | AddModule(UShort_t crate, UShort_t slot, UShort_t chan_lo, UShort_t chan_hi, UInt_t first = 0, UInt_t model = 0, Int_t refindex = -1, Int_t refchan = -1) |
static TClass* | Class() |
void | Clear() |
virtual Int_t | Fill(const vector<Int_t>& values, UInt_t flags = 0) |
virtual THaDetMap::Module* | Find(UShort_t crate, UShort_t slot, UShort_t chan) |
void | GetMinMaxChan(Int_t& min, Int_t& max, THaDetMap::ECountMode mode = kLogicalChan) const |
UInt_t | GetModel(UShort_t i) const |
static UInt_t | GetModel(THaDetMap::Module* d) |
THaDetMap::Module* | GetModule(UShort_t i) const |
Int_t | GetNchan(UShort_t i) const |
Int_t | GetSize() const |
Int_t | GetTotNumChan() const |
virtual TClass* | IsA() const |
Bool_t | IsADC(UShort_t i) const |
static Bool_t | IsADC(THaDetMap::Module* d) |
Bool_t | IsTDC(UShort_t i) const |
static Bool_t | IsTDC(THaDetMap::Module* d) |
THaDetMap& | operator=(const THaDetMap&) |
virtual void | Print(Option_t* opt = "") const |
virtual void | Reset() |
virtual void | ShowMembers(TMemberInspector& insp, char* parent) |
virtual void | Sort() |
virtual void | Streamer(TBuffer& b) |
void | StreamerNVirtual(TBuffer& b) |
THaDetMap::Module* | uGetModule(UShort_t i) const |
Inheritance Chart: | |||||
|
Add a module to the map.
Fill the map with 'values'. Depending on 'flags', the values vector is interpreted as a 4-, 5-, 6- or 7-tuple: The first 4 values are interpreted as (crate,slot,start_chan,end_chan) Each of the following flags causes one more value to be used as part of the tuple for each module: kFillLogicalChannel - Logical channel number for 'start_chan'. kFillModel - The module's hardware model number (see AddModule()) kFillRefChan - Reference channel (for pipeline TDCs etc.) kFillRefIndex - Reference index (for pipeline TDCs etc.) If more than one flag is present, the numbers will be interpreted in the order the flags are listed above. Example: flags = kFillModel | kFillRefChan ==> the vector is interpreted as a series of 6-tuples in the order (crate,slot,start_chan,end_chan,model,refchan). If kFillLogicalChannel is not set then the first logical channel numbers are automatically calculated for each module, assuming the numbers are sequential. By default, an existing map is overwritten. If the flag kDoNotClear is present, then the data are appended. The return value is the number of modules successfully added, or negative if an error occurred.
Get sum of the number of channels of all modules in the map. This is typically the total number of hardware channels used by the detector.
Put the minimum and maximum logical or reference channel numbers into min and max. If refidx is true, check refindex, else check logical channel numbers.