Universita' di GenovaINFN Sezione di Genova  
AIRWATCH / EUSO Genova

MacroCell

#include "MacroCell.hh"

MacroCell


class description - source file - inheritance tree (.pdf)

class MacroCell : public EsafConfigurable, public EsafMsgSource

Inheritance Chart:
EsafConfigurable
EsafMsgSource
<-
MacroCell
<-
StandardMacroCell
 
    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)
About Us | EUSO Official Website | Web pages created by Roberto Pesce and Alessandro Thea - Last Update Wed Nov 16 16:18:27 2005