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
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
void ~FrontEndChip() FrontEndChip FrontEndChip(Int_t channels = 64) const char* ClassType() const const char* ClassName() const 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) TClass* Class() TClass* IsA() const void ShowMembers(TMemberInspector& insp, char* parent) void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)