| TaDevice() | |
| TaDevice(const TaDevice& copy) | |
| virtual | ~TaDevice() |
| static TClass* | Class() |
| void | FindHeaders(const Int_t& roc, const Int_t& ipt, const Int_t& data) |
| Int_t | GetCalIndex(const Int_t& key) const |
| Int_t | GetChanNum(const Int_t& index) const |
| Int_t | GetCorrIndex(const Int_t& key) const |
| Int_t | GetCrate(const Int_t& index) const |
| Double_t | GetDacSlope(const Int_t& index) const |
| Int_t | GetDevNum(const Int_t& index) const |
| Int_t | GetEvPointer(const Int_t& index) const |
| Int_t | GetKey(string keystr) const |
| string | GetKey(Int_t key) const |
| map<string,Int_t> | GetKeyList() const |
| Int_t | GetNumRaw() const |
| Int_t | GetOffset(const Int_t& key) const |
| Double_t | GetPedestal(const Int_t& index) const |
| Int_t | GetRawIndex(const Int_t& key) const |
| Int_t | GetRawKey(const Int_t& index) const |
| void | Init(TaDataBase& db) |
| virtual TClass* | IsA() const |
| Bool_t | IsAdc(const Int_t& key) const |
| Bool_t | IsDaqFlag(const Int_t& key) const |
| Bool_t | IsRotated(const Int_t& key) const |
| Bool_t | IsScaler(const Int_t& key) const |
| Bool_t | IsTimeboard(const Int_t& key) const |
| Bool_t | IsTir(const Int_t& key) const |
| Bool_t | IsUsed(const Int_t& key) const |
| TaDevice& | operator=(const TaDevice& assign) |
| void | PrintHeaders() |
| void | SetUsed(const Int_t& key) const |
| virtual void | ShowMembers(TMemberInspector& insp, char* parent) |
| virtual void | Streamer(TBuffer& b) |
| void | StreamerNVirtual(TBuffer& b) |
| Int_t | AddRawKey(string keyname) |
| void | AddTiedDevices(TaKeyMap& keymap) |
| void | BpmDefRotate() |
| void | InitKeyList() |
| Double_t* | fAdcPed | |
| Int_t* | fAdcptr | |
| Int_t* | fChanNum | |
| Int_t* | fCrate | |
| Double_t* | fDacSlope | |
| Int_t* | fDaqptr | |
| Int_t* | fDevNum | |
| Int_t* | fEvPointer | |
| Int_t* | fIsRotated | |
| Int_t* | fIsUsed | |
| map<string,Int_t> | fKeyToIdx | |
| Int_t | fNtied | |
| Int_t | fNumRaw | |
| Int_t* | fRawKeys | |
| Int_t* | fReadOut | |
| vector<string> | fRotateList | |
| Double_t* | fScalPed | |
| Int_t* | fScalptr | |
| Int_t* | fTbdptr | |
| vector<TaKeyMap> | fTiedKeys | |
| Int_t* | fTirptr | |
| UInt_t | fgAdcHeader | |
| UInt_t | fgAdcMask | |
| UInt_t | fgDaqHeader | |
| UInt_t | fgDaqMask | |
| UInt_t | fgScalHeader | |
| UInt_t | fgScalMask | |
| UInt_t | fgTbdHeader | |
| UInt_t | fgTbdMask | |
| UInt_t | fgTirHeader | |
| UInt_t | fgTirMask |
| Inheritance Chart: | |||||
|
Initialized the key mapping to integers, and the list of raw data defined in the database. The database defines the channel mapping, but the keys in the database must match the fKeyToIdx map. Set up rotated BPMs. Some devices like 'bpm', 'bcm', 'lumi' can be tied to others like 'adc', 'scaler' according to rules.
To potentially add this device to the list of derived types. Note, e.g. "bpm" can be tied to an "adc", but not vice versa.
Find the pointer to the header for the various devices.
The "fundamental" devices are ADC, SCALER, TIMEBOARD, TIR.
roc==0 is an error and probably means CODA is not set up
correctly. Although roc==0 is logically possible in CODA
it is forbidden because of database conventions.
Build default list of rotated BPMs. BPMs listed here are rotated by 45 degrees. The others are not rotated, they are up/down. This can be over-ridden by the database: by convention a device-name (3rd column) can have suffix "_r" or "_ur" to force rotation or unrotation. Leaving out this suffix will result in the default behavior here. The suffix "_r" or "_ur" are otherwise IGNORED. Example of device-name in db file: "bpm8" --> rotated (default here) "bpm8_r" --> still rotated "bpm8_ur" --> unrotated.
Returns the integer key corresponding to the string key name. Users of this class who have a list of string keys should upon initialization of the code call this method to determine the corresponding list of integer keys. Then use those integers. The string keys are still useful, however, to define names of variables in the tree, and to initialize datamap from database, but one should *NOT* use this method inside an event loop !!
Return a pointer to the raw ADC or SCALER data corresponding to key
Return a pointer to the calibrated ADC or SCALER data corresponding to key
Return a pointer to the corrected ADC or SCALER data (before pedestal subtraction) corresponding to key
Initialize the mapping between key names and integers. Users of device data should access the data using the integer keys. Example of how to get data: GetData(IBCM1R); I tried to anticipate all future devices, but if you need to add a new one, put it here (another 'insert' line) and define the key in DevTypes.hh (genDevTypes.pl)