Universita' di GenovaINFN Sezione di Genova  
AIRWATCH / EUSO Genova

EFocalSurfacePainter

#include "EFocalSurfacePainter.hh"

EFocalSurfacePainter


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

class EFocalSurfacePainter : public EAnimator

Inheritance Chart:
TObject
<-
EAnimator
<-
EFocalSurfacePainter
    private:
void BuildPolyLines() void CacheTimeInt() const void ClearPolyLines() EPolygon* FindPmtLine(Int_t) const void FindPmtsToPaint(Float_t, Float_t, Float_t, Float_t) Bool_t FindView(EMapId) map GetMapToPaint() const EPolygon* GetPixelLine(Int_t) EPolygon* GetPmtLine(Int_t) const GtuCounts_t* GtuCountsToPaint() const Bool_t Load() void PaintHits() void PaintNightGlowRate() public:
EFocalSurfacePainter(EDetector*, ERunParameters*) EFocalSurfacePainter(const EFocalSurfacePainter&) virtual ~EFocalSurfacePainter() virtual void Animate() virtual void CellHits() virtual void CenterViewOnPmt(Int_t) static TClass* Class() virtual void Clear(Option_t*) virtual Int_t DistancetoPrimitive(Int_t px, Int_t py) virtual void Draw(Option_t*) virtual void ExecuteEvent(Int_t event, Int_t px, Int_t py) virtual void FeeHits() virtual void FeeSignals() EMapId GetCurrentMapID() const Int_t GetFirstGtu() const Int_t GetGtu() const Bool_t GetGtuCounter() const Int_t GetLastGtu() const UInt_t GetMaxCounts() const UInt_t GetNumColors() const virtual char* GetObjectInfo(Int_t px, Int_t py) const Color_t GetPixelColorEmpty() const Color_t GetPixelColorOff() const Bool_t GetPixelEmpty() const Bool_t GetPixelOff() const Color_t GetPmtColorEmpty() const Color_t GetPmtColorHit() const ERunParameters* GetRunPars() const const TVector3& GetSpread() const Bool_t GetTimeIntegral() const Float_t GetViewBorder() const const TVector3& GetViewCenter() const Float_t GetViewRange() const Int_t GetViewThreshold() const virtual TClass* IsA() const virtual Bool_t IsEnded() void MakeGifSequence(const char* option, const char* path = "Anim") virtual void Modified(Bool_t flag = 1) virtual void Move() virtual void NextFrame() EFocalSurfacePainter& operator=(const EFocalSurfacePainter&) virtual void Paint(Option_t*) virtual void Play(Option_t*) virtual void Rewind() void SetCurrentMapID(EMapId id) void SetFirstGtu(Int_t gtu) void SetGtu(Int_t gtu) void SetGtuCounter(Bool_t b = kTRUE) void SetLastGtu(Int_t gtu) void SetMaxCounts(UInt_t n) void SetNumColors(UInt_t n) void SetPixelColorEmpty(Color_t c) void SetPixelColorOff(Color_t c) void SetPixelEmpty(Bool_t b = kTRUE) void SetPixelOff(Bool_t b = kTRUE) void SetPmtColorEmpty(Color_t c) void SetPmtColorHit(Color_t c) void SetTimeIntegral(Bool_t b = kTRUE) void SetViewBorder(Float_t b) virtual void SetViewCenter(Float_t x, Float_t y) void SetViewRange(Float_t s) void SetViewThreshold(Int_t t) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members

    private:
Int_t fGtu current gtu EMapId fCurrentMapID identifier of the data to paint Bool_t fModified Int_t fViewThreshold min counts of hits used to def the VP Float_t fViewRange size of viewport in signal Nspread Float_t fViewBorder border size, from 0 to 0.5 Int_t fGifCanvasW width of the gif sequence canvas Int_t fGifCanvasH hieght of the gif sequence canvas Bool_t fPixelEmpty true to draw pixels with 0 hits Bool_t fPixelOff true to draw pixels even not in the maps Bool_t fGtuCounter true to draw the gtu counter Bool_t fTimeIntegral true to draw time integral of the track Bool_t fAutoRadius true to set the view according the signal Bool_t fMoveView if true the next leftmouse click moves the view center Float_t fX1 X coord of the lower left corner Float_t fX2 X coord of the lower right corner Float_t fY1 Y coord of the lower left corner Float_t fY2 Y coord of the lower right corner Float_t fXmin X coord of the frame lower left corner Float_t fXmax X coord of the frame lower right corner Float_t fYmin Y coord of the frame lower left corner Float_t fYmax Y coord of the frame lower right corner Int_t fColorOffset first color in the palette Int_t fNumColors maximum number of colors UInt_t fMaxCounts Color_t fPixelColorOff color code of absent pixels Color_t fPixelColorEmpty color code of empty pixels Color_t fPmtColorEmpty color code of empty pmts Color_t fPmtColorHit color code of hit pmts EDetector* fDetector ERunParameters* fRunPars GtuCounts_t fFrontEndHits GtuCounts_t fFrontEndSignals GtuCounts_t fMacroCellHits Int_t fFirstGtu first gtu in data Int_t fLastGtu last gtu in data TVector3 fViewCenter signal center in Detector coordinates TVector3 fSpread signal spread TSeqCollection* fLines list of lines used by the destructor vector<Int_t> fPmtsToPaint list of the pmt ids in the viewport map<Int_t,EPolygon*> fPmtLines map<Int_t,EPolygon*> fPixelLines GtuCounts_t fInteglFrontEndHits GtuCounts_t fInteglFrontEndSignals GtuCounts_t fInteglCellHits GtuCounts_t fCache Int_t fCacheContents TText fTxtCounter TText fTxtSum

Class Description

  EFocalSurfacePainter

  A painter to show the development of the signal on the focal surface.

  Setters:

  ViewNspread
  MaxColors


  TO BE DONE

void Clear( Option_t *opt )
 Clear all temporay containers


void Draw( Option_t *opt )
 Build polylines and then append the FSP to pad


void Paint( Option_t *opt )
 Options:

 ng: paints pmts with a different colors according to the simulated bg
     rate

 hits: paints the electronics hits on the focal surface


void PaintHits()
 Paint the


void PaintNightGlowRate()
 Paint the elementary cells with color depending on the ng rate.


Int_t DistancetoPrimitive(Int_t px, Int_t py)



void ExecuteEvent(Int_t event, Int_t px, Int_t py)
 Execute an event when the mouse moves in the display active region


char* GetObjectInfo(Int_t px, Int_t py) const
   Redefines TObject::GetObjectInfo.


Bool_t FindView( EMapId id )
 calculates center, spread and orientation of the viewport


void CenterViewOnPmt( Int_t pmtid)



void BuildPolyLines()
 Creates all the polylines for all the hits in the event


void ClearPolyLines()
 remove all the polylines stored in memory


Bool_t Load()
 Load data and fills GtuCounts from the event and the runparameters


EPolygon* GetPixelLine( Int_t uid )
 Returns a EPolygon corresponding to uid if doesn't exist.
 If doesn't exists yet in fPixelLines creates a new one.


EPolygon* FindPmtLine( Int_t id ) const
 Lookf for EPolygon corresponding to id among the ones already created


EPolygon* GetPmtLine( Int_t id )
 Returns a EPolygon corresponding to id if doesn't exist.
 If doesn't exists yet in fPmtLines creates a new one.


void FindPmtsToPaint( Float_t xmin, Float_t ymin, Float_t xmax, Float_t ymax )
 Looks for Pmts which centers are in the viewport.
 Fills fPmtsToPaint and fPixelsToPaint


void Play( Option_t *opt )
 Start the movie


void Animate()
 Move to next animation step and increase the counter


void NextFrame()
 Move the internal counter to the next frame


void MakeGifSequence(const char *option, const char *path)
 Build a sequence of gifs inside a dedicated canvas.
 Gifs are created with opt options


map GetMapToPaint() const

const GtuCounts_t* GtuCountsToPaint() const

void CacheTimeInt() const
 cache data to speedup animation



Inline Functions


                         void ~EFocalSurfacePainter()
         EFocalSurfacePainter EFocalSurfacePainter(EDetector*, ERunParameters*)
                         void Rewind()
                       Bool_t IsEnded()
              ERunParameters* GetRunPars() const
                         void FeeHits()
                         void FeeSignals()
                         void CellHits()
                         void Move()
                         void SetViewCenter(Float_t x, Float_t y)
                         void Modified(Bool_t flag = 1)
                        Int_t GetGtu() const
                        Int_t GetFirstGtu() const
                        Int_t GetLastGtu() const
                       EMapId GetCurrentMapID() const
              const TVector3& GetViewCenter() const
              const TVector3& GetSpread() const
                        Int_t GetViewThreshold() const
                      Float_t GetViewRange() const
                      Float_t GetViewBorder() const
                       Bool_t GetPixelEmpty() const
                       Bool_t GetPixelOff() const
                       Bool_t GetGtuCounter() const
                       Bool_t GetTimeIntegral() const
                       UInt_t GetNumColors() const
                       UInt_t GetMaxCounts() const
                      Color_t GetPixelColorEmpty() const
                      Color_t GetPixelColorOff() const
                      Color_t GetPmtColorEmpty() const
                      Color_t GetPmtColorHit() const
                         void SetGtu(Int_t gtu)
                         void SetFirstGtu(Int_t gtu)
                         void SetLastGtu(Int_t gtu)
                         void SetCurrentMapID(EMapId id)
                         void SetViewThreshold(Int_t t)
                         void SetViewRange(Float_t s)
                         void SetViewBorder(Float_t b)
                         void SetPixelEmpty(Bool_t b = kTRUE)
                         void SetPixelOff(Bool_t b = kTRUE)
                         void SetGtuCounter(Bool_t b = kTRUE)
                         void SetTimeIntegral(Bool_t b = kTRUE)
                         void SetNumColors(UInt_t n)
                         void SetMaxCounts(UInt_t n)
                         void SetPixelColorEmpty(Color_t c)
                         void SetPixelColorOff(Color_t c)
                         void SetPmtColorEmpty(Color_t c)
                         void SetPmtColorHit(Color_t c)
                      TClass* Class()
                      TClass* IsA() const
                         void ShowMembers(TMemberInspector& insp, char* parent)
                         void Streamer(TBuffer& b)
                         void StreamerNVirtual(TBuffer& b)
         EFocalSurfacePainter EFocalSurfacePainter(const EFocalSurfacePainter&)
        EFocalSurfacePainter& operator=(const EFocalSurfacePainter&)
About Us | EUSO Official Website | Web pages created by Roberto Pesce and Alessandro Thea - Last Update 14-May-2005 21:31