MacroCell
#include "MacroCell.hh" |
MacroCell
class description - source file - inheritance tree (.pdf)
class MacroCell : public EsafConfigurable, public EsafMsgSource
Inheritance Chart: | |||||||||||||||
|
This is an abstract class, constructors will not be documented.
Look at the header to check for available constructors.
private:
Int_t RowColId(Int_t r, Int_t c) const protected:
Bool_t IsLogicEnabled() const Bool_t IsValid(Int_t r, Int_t c) const void SetECRowCol(ElementaryCell* ec, Int_t r, Int_t c) public:
virtual ~MacroCell() Bool_t Add(ElementaryCell*, Int_t, Int_t) Bool_t CheckPmtState() const size_t Chips() const static TClass* Class() virtual const char* ClassName() const virtual const char* ClassType() const const vector<ElementaryCell*>* ECs() const Double_t FirstHitTime() FrontEndChip* FrontEnd(Int_t, Int_t) MacroCellGeometry* Geometry() Int_t GetColumns() const ElementaryCell* GetEC(Int_t i) ElementaryCell* GetEC(Int_t r, Int_t c) static map<ETriggerTypeIdentifier,TriggerEngine*>& GetEngines() Double_t GetGtuBegin() const Double_t GetGtuLength() const size_t GetNumECs() const Photomultiplier* GetPmt(Int_t i) pair<Int_t,Int_t>& GetRowColUniqueId(Int_t uid) Int_t GetRows() const Int_t GetUniqueIdRowCol(Int_t r, Int_t c) Int_t Id() const virtual TClass* IsA() const Bool_t IsEmpty() const Double_t LastHitTime() const vector<Photomultiplier*>* Pmts() const void Reset() static void ResetClass() void SetGeometry(MacroCellGeometry* g) void SetGtuBegin(Double_t s) void SetLowSignalThreshold(Int_t th) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual MacroCellData* Simulate(Int_t night_glow_code = 0) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b) Int_t TriggerThreshold() const ETriggerTypeIdentifier TriggerType() const
Data Members
private:
Int_t fCellId static Int_t gCellCounter Int_t fNumECs vector<Photomultiplier*> fPmts vector<ElementaryCell*> fECs map<Int_t,ElementaryCell*> fECRowColMap map<pair<Int_t,Int_t>,Int_t> fUidRowCol map<Int_t,pair<Int_t,Int_t> > fRowColUid static map<ETriggerTypeIdentifier,TriggerEngine*>* fEngines Int_t fRows Int_t fCols Double_t fGtuOffset Double_t fGtuLength Bool_t fLogicEnabled Int_t fTriggerThreshold ETriggerTypeIdentifier fTriggerType MacroCellGeometry* pGeometry Int_t fLowSignalThreshold
Class Description
~MacroCell()
Destructor does nothing
Double_t FirstHitTime()
Compute the time of the first hit in the macrocell
Double_t LastHitTime()
Compute the time of the last hit in the macrocell
FrontEndChip* FrontEnd(Int_t r, Int_t c)
Returns a pointer to the front end chip in row r and column c returns NULL if it is not a valid position even if r,c are valid, return value may be NULL with non-squared macrocells
Bool_t Add(ElementaryCell* ec, Int_t row, Int_t col)
Add an elementary cell to this macrocell in position i and j returns true if ok, false on error
Bool_t CheckPmtState() const
Check if all pmts of this macrocell are ready (user must have called Simulate for each of them)
Bool_t IsEmpty() const
returns true if there were not hits in the macrocell or if there is low signal (threshold set by EusoElectronics)
void Reset()
reset data and get ready for next event reset all front end chips and all pmts in this macrocell
Inline Functions
const char* ClassType() const const char* ClassName() const void ResetClass() Int_t GetRows() const Int_t GetColumns() const size_t Chips() const size_t GetNumECs() const Int_t Id() const const vector<Photomultiplier*>* Pmts() const Photomultiplier* GetPmt(Int_t i) const vector<ElementaryCell*>* ECs() const ElementaryCell* GetEC(Int_t i) ElementaryCell* GetEC(Int_t r, Int_t c) void SetGtuBegin(Double_t s) Double_t GetGtuBegin() const Double_t GetGtuLength() const MacroCellData* Simulate(Int_t night_glow_code = 0) Int_t TriggerThreshold() const ETriggerTypeIdentifier TriggerType() const MacroCellGeometry* Geometry() void SetGeometry(MacroCellGeometry* g) Int_t GetUniqueIdRowCol(Int_t r, Int_t c) pair<Int_t,Int_t>& GetRowColUniqueId(Int_t uid) map<ETriggerTypeIdentifier,TriggerEngine*>& GetEngines() void SetLowSignalThreshold(Int_t th) void SetECRowCol(ElementaryCell* ec, Int_t r, Int_t c) Bool_t IsValid(Int_t r, Int_t c) const Bool_t IsLogicEnabled() const Int_t RowColId(Int_t r, Int_t c) const TClass* Class() TClass* IsA() const void ShowMembers(TMemberInspector& insp, char* parent) void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)