FrontEndChip
| #include "FrontEndChip.hh" |
FrontEndChip
class description - source file - inheritance tree (.pdf)
class FrontEndChip : public EsafConfigurable, public EsafMsgSource
| Inheritance Chart: | |||||||||||
|
private:
Bool_t IsSorted() const
void SetSorted(Bool_t val = kTRUE)
void TimeSort()
public:
FrontEndChip(Int_t channels = 64)
virtual ~FrontEndChip()
void Add(vector<PmtSignal*>*, Int_t ch)
AnalogFrontEnd* Afee()
void AssociatePmts(Photomultiplier* p1, Photomultiplier* p2 = 0, Photomultiplier* p3 = 0, Photomultiplier* p4 = 0)
Int_t Channels() const
Int_t ChanRowCol(Int_t r, Int_t c) const
static TClass* Class()
virtual const char* ClassName() const
virtual const char* ClassType() const
Int_t Column(Int_t ch) const
void DumpSignals(Int_t ch = -1, ostream& os = cout)
Double_t FirstHitTime() const
Int_t GetCellColOffset() const
Int_t GetCellRowOffset() const
Double_t GetNightGlowRate() const
Int_t GetNumPmts() const
void GetPixelCellRowCol(Int_t ch, Int_t& r, Int_t& c) const
ChipTriggerType GetTriggerType() const
ChipGtuData* Gtu(Int_t GtuId, Double_t start, Double_t end, Bool_t doNG)
Int_t Id() const
virtual TClass* IsA() const
Bool_t IsEmpty() const
Double_t LastHitTime() const
Int_t NumActivePixels() const
Int_t NumSide() const
Photomultiplier* Pmt(Int_t ch = 0) const
Int_t PmtChannel(Int_t ch) const
void Reset()
static void ResetClass()
Int_t Row(Int_t ch) const
void SetAfee(AnalogFrontEnd* af)
void SetCellRowColOffset(Int_t r, Int_t c)
void SetEmpty(Bool_t val = kTRUE)
void SetNightGlowRate(Double_t r)
virtual void ShowMembers(TMemberInspector& insp, char* parent)
virtual void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
Int_t UniqueChanId(Int_t ch)
Data Members
private:
vector<PmtSignal*>* fSignals[256]
map<Int_t,Photomultiplier*> pPmts
Int_t fNumPmts
Int_t fNumPmtChannels
AnalogFrontEnd* fAfee
Int_t fNumSide number of this front end channels
Int_t fId number of this chip
static Int_t fgChipCounter chip counter
Double_t fFirstTime
Double_t fLastTime
Bool_t fEmpty
Int_t fCellRowOffset
Int_t fCellColOffset
Bool_t fSorted
static Double_t fgResolvTime
static Double_t fgCurrentGain
static Double_t fgCurrentThreshold
static Int_t fgCounterThreshold
static ChipTriggerType fgTriggerType
Double_t fEffectiveGain[256]
Double_t fEffectiveThreshold[256]
static Int_t fgTotalHits number of DETECTED PMT signals
static Int_t fgTotalSignals number of PMT signals
Double_t fNightGlowRate rate per channel
Class Description
FrontEndChip(Int_t channels ) : EsafConfigurable()
ctor
~FrontEndChip()
destructor; destroys lists only; PmtSignals are destroyed by Pmt
void AssociatePmts(Photomultiplier *p1, Photomultiplier *p2, Photomultiplier *p3, Photomultiplier *p4)
attach a pmt to this chip the pmts must be of the same model
void ResetClass()
reset class variables it is called by ElectronicsFactory when a new configuration is loaded and detector is re-built
void Add(vector<PmtSignal*>* signals, Int_t ch )
add a list of hit compute the time of the first and last hit in time order
void Reset()
reset chip to get ready for next event PmtSignals list are cleared and ChipGtuData cleared
ChipGtuData* Gtu(Int_t GtuId, Double_t start, Double_t end, Bool_t doNG)
Simulate response for a GTU between start and end
Data stored:
counter values at the end
digital signal on global OR output (taking into account counter thresh)
void GetPixelCellRowCol(Int_t ch, Int_t& r, Int_t& c) const
return the macrocell row and column of a given channel
void TimeSort()
sort all signal vectors each channel is independent from the others
void DumpSignals(Int_t chan, ostream& os)
dump signals on stream if ch negative, do all channels
Int_t UniqueChanId(Int_t nch)
channel id unique for the whole detector
Int_t NumActivePixels() const
Returns the number of pixel with some hits
Photomultiplier* Pmt(Int_t ch) const
Pmt associated with channel ch
Int_t PmtChannel(Int_t ch) const
Inline Functions
Int_t Channels() const
Int_t NumSide() const
Int_t Row(Int_t ch) const
Int_t Column(Int_t ch) const
Int_t ChanRowCol(Int_t r, Int_t c) const
Int_t Id() const
void SetAfee(AnalogFrontEnd* af)
AnalogFrontEnd* Afee()
Double_t LastHitTime() const
Double_t FirstHitTime() const
Bool_t IsEmpty() const
void SetEmpty(Bool_t val = kTRUE)
ChipTriggerType GetTriggerType() const
void SetCellRowColOffset(Int_t r, Int_t c)
Int_t GetCellRowOffset() const
Int_t GetCellColOffset() const
Int_t GetNumPmts() const
void SetNightGlowRate(Double_t r)
Double_t GetNightGlowRate() const
Bool_t IsSorted() const
void SetSorted(Bool_t val = kTRUE)
const char* ClassType() const
const char* ClassName() const
TClass* Class()
TClass* IsA() const
void ShowMembers(TMemberInspector& insp, char* parent)
void Streamer(TBuffer& b)
void StreamerNVirtual(TBuffer& b)
