]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - EVE/EveDet/AliEveTRDData.h
Update master to aliroot
[u/mrichter/AliRoot.git] / EVE / EveDet / AliEveTRDData.h
index 5fa36fc8d114d5e1f9f5439ba7098fa51581ab3d..8e58c8461998d9ec9cd7ad1bf63e00bafa1eded5 100644 (file)
 #include <TEveQuadSet.h>
 #include <TEveBoxSet.h>
 #include <TEvePointSet.h>
+#include <TEveLine.h>
 
-#include <TGedFrame.h>
-
-#include "AliTRDdataArrayI.h"
+#ifndef ALITRDARRAYADC_H
+#include "AliTRDarrayADC.h"
+#endif
 
-class AliTRDdigitsManager;
 class AliEveTRDChamber;
-
 class AliEveTRDHits : public TEvePointSet
 {
 public:
-  AliEveTRDHits(AliEveTRDChamber *p);
+  AliEveTRDHits();
+  ~AliEveTRDHits();
 
   void PointSelected(Int_t n);
 
-protected:
-  AliEveTRDChamber *fParent; // Chaber holding the hits.
 
 private:
   AliEveTRDHits(const AliEveTRDHits&);            // Not implemented
@@ -48,84 +46,153 @@ private:
 };
 
 
-class AliEveTRDHitsEditor : public TGedFrame
+class AliTRDdigitsManager;
+class AliEveTRDDigits : public TEveQuadSet
 {
-public:
-  AliEveTRDHitsEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
-                     UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
-  virtual ~AliEveTRDHitsEditor() {}
+  //friend class AliEveTRDDigitsEditor;
 
-  virtual void SetModel(TObject* obj);
+public:
+  AliEveTRDDigits(AliEveTRDChamber *p);
+  ~AliEveTRDDigits();
+  void                 SetData(AliTRDdigitsManager *digits);
 
 protected:
-  AliEveTRDHits* fM; // Model object.
+  AliEveTRDChamber *fParent;
 
 private:
-  AliEveTRDHitsEditor(const AliEveTRDHitsEditor&);            // Not implemented
-  AliEveTRDHitsEditor& operator=(const AliEveTRDHitsEditor&); // Not implemented
+  AliEveTRDDigits(const AliEveTRDDigits&);            // Not implemented
+  AliEveTRDDigits& operator=(const AliEveTRDDigits&); // Not implemented
 
-  ClassDef(AliEveTRDHitsEditor, 0); // Editor for AliEveTRDHits.
+  ClassDef(AliEveTRDDigits, 0); // Digits visualisation for TRD
 };
 
 
-class AliEveTRDDigits : public TEveQuadSet
-{
-  friend class AliEveTRDDigitsEditor;
 
+class AliEveTRDClusters : public AliEveTRDHits
+{
 public:
-  AliEveTRDDigits(AliEveTRDChamber *p);
+  AliEveTRDClusters();
 
-  void                 ComputeRepresentation();
-  void                 Paint(Option_t *opt="");
-  void                 Reset();
-  void                 SetData(AliTRDdigitsManager *digits);
+  void Load(const Char_t *what="all") const; // *MENU*
+  void PointSelected(Int_t n);
+  void Print(Option_t *o = "") const; // *MENU*
 
-protected:
-  AliEveTRDChamber *fParent;
+private:
+  AliEveTRDClusters(const AliEveTRDClusters&);            // Not implemented
+  AliEveTRDClusters& operator=(const AliEveTRDClusters&); // Not implemented
+
+  ClassDef(AliEveTRDClusters, 0); // Base class for TRD clusters visualisation
+};
+
+
+
+class AliTRDseedV1;
+class AliEveTRDTracklet : public TEveLine
+{
+public:
+  AliEveTRDTracklet(AliTRDseedV1 *trklt);
+  ~AliEveTRDTracklet();
+  AliEveTRDClusters* GetClusters() const {return fClusters;}
+  inline void        Load(const Char_t *what="all") const; // *MENU*
+  void               Print(Option_t *o="") const; // *MENU*
 
 private:
-  TEveBoxSet           fBoxes; // Boxset for didigit representation.
-  AliTRDdataArrayI     fData;  // Raw-data array.
+  AliEveTRDClusters *fClusters;  // clusters
 
-  AliEveTRDDigits(const AliEveTRDDigits&);            // Not implemented
-  AliEveTRDDigits& operator=(const AliEveTRDDigits&); // Not implemented
+  AliEveTRDTracklet(const AliEveTRDTracklet&);            // Not implemented
+  AliEveTRDTracklet& operator=(const AliEveTRDTracklet&); // Not implemented
 
-  ClassDef(AliEveTRDDigits, 0); // Digits visualisation for TRD
+  ClassDef(AliEveTRDTracklet, 0); // TRD tracklet visualisation
 };
+void AliEveTRDTracklet::Load(const Char_t *what) const
+{
+  if(fClusters) fClusters->Load(what);
+}
 
 
-class AliEveTRDDigitsEditor : public TGedFrame
+class AliTrackPoint;
+class AliTRDtrackV1;
+class AliRieman;
+class AliEveTRDTrack : public TEveLine
 {
 public:
-  AliEveTRDDigitsEditor(const TGWindow* p=0, Int_t width=170, Int_t height=30,
-                       UInt_t options=kChildFrame, Pixel_t back=GetDefaultFrameBackground());
-  virtual ~AliEveTRDDigitsEditor() {}
+  enum AliEveTRDTrackState{
+    kSource        = 0 
+    ,kPID          = 1 
+    ,kTrackCosmics = 2
+    ,kTrackModel   = 3
+  };
+  enum AliEveTRDTrackModel{
+    kRieman  = 0
+    ,kKalman = 1
+  };
+
+
+  AliEveTRDTrack(AliTRDtrackV1 *trk);
+  virtual ~AliEveTRDTrack();
+  //AliEveTRDTracklet*  GetTracklet(Int_t plane) const {return plane <6 && plane >= 0 ? fTracklet[plane] : NULL;}
+  void    Print(Option_t *opt="a") const; // *MENU*
+  void    Load(const Char_t *what="all") const; // *MENU*
+  void    SetStatus(UChar_t s=0);         // *MENU*
+  void    SetESDstatus(ULong_t stat) {fESDStatus = stat;} 
+private:
+  AliEveTRDTrack(const AliEveTRDTrack&);            // Not implemented
+  AliEveTRDTrack& operator=(const AliEveTRDTrack&); // Not implemented
+
+  UChar_t        fTrackState;   // bit map for the track drawing state
+  ULong_t        fESDStatus;    // ESD status bit for this track
+  Float_t        fAlpha;        // sector angle for this track  
+  AliTrackPoint *fPoints;       // track crossing points
+  AliRieman     *fRim;          // rieman fitter
+  ClassDef(AliEveTRDTrack, 0);  // TRD track visualisation
+};
 
-  virtual void SetModel(TObject* obj);
 
-protected:
-  AliEveTRDDigits* fM; // Model object.
+#include "TEveElement.h"
+
+class AliTRDtrackletMCM;
+class AliTRDtrackletWord;
+class AliEveTRDTrackletOnline : public TEveLine
+{
+public:
+  AliEveTRDTrackletOnline(AliTRDtrackletMCM *tracklet);
+  AliEveTRDTrackletOnline(AliTRDtrackletWord *tracklet);
+  ~AliEveTRDTrackletOnline();
 
+  void               ShowMCM(Option_t *opt = "RHT") const; // *MENU*
 private:
-  AliEveTRDDigitsEditor(const AliEveTRDDigitsEditor&);            // Not implemented
-  AliEveTRDDigitsEditor& operator=(const AliEveTRDDigitsEditor&); // Not implemented
+  Int_t fDetector;
+  Int_t fROB;
+  Int_t fMCM;
 
-  ClassDef(AliEveTRDDigitsEditor, 0); // Editor for AliEveTRDDigits
+  AliEveTRDTrackletOnline(const AliEveTRDTrackletOnline&);            // Not implemented
+  AliEveTRDTrackletOnline& operator=(const AliEveTRDTrackletOnline&); // Not implemented
+
+  ClassDef(AliEveTRDTrackletOnline, 0); // TRD tracklet visualisation
 };
 
 
-class AliEveTRDClusters : public AliEveTRDHits
+class AliTRDmcmSim;
+class AliEveTRDmcm : public TEveElement, public TNamed
 {
-public:
-  AliEveTRDClusters(AliEveTRDChamber *p);
+ public:
+  AliEveTRDmcm();
+  ~AliEveTRDmcm();
 
-  void PointSelected(Int_t n);
+  Bool_t Init(Int_t det, Int_t rob, Int_t mcm); // *MENU*
+  Bool_t LoadDigits(); // *MENU*
+  Bool_t Filter(); // *MENU*
+  Bool_t Tracklet(); // *MENU*
+  void Draw(Option_t* option = "FHT"); // *MENU*
+  Bool_t AssignPointer(const char* ptrname = "mcmtest"); // *MENU*
 
-private:
-  AliEveTRDClusters(const AliEveTRDClusters&);            // Not implemented
-  AliEveTRDClusters& operator=(const AliEveTRDClusters&); // Not implemented
+ protected:
+  AliTRDmcmSim *fMCM;
 
-  ClassDef(AliEveTRDClusters, 0); // Base class for TRD clusters visualisation
+  AliEveTRDmcm(const AliEveTRDmcm&); // not implemented
+  AliEveTRDmcm& operator=(const AliEveTRDmcm&); // not implemented
+
+  ClassDef(AliEveTRDmcm, 0);
 };
 
 #endif