]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - EVE/EveDet/AliEveTRDData.h
3-pion radii macro updates
[u/mrichter/AliRoot.git] / EVE / EveDet / AliEveTRDData.h
index 76a85d76469a5462351cb992468a9379e205b6b7..8e58c8461998d9ec9cd7ad1bf63e00bafa1eded5 100644 (file)
 #include <TEvePointSet.h>
 #include <TEveLine.h>
 
-
-#include "AliTRDdataArrayI.h"
-#include "AliTRDseedV1.h"
-#include "AliTRDtrackV1.h"
+#ifndef ALITRDARRAYADC_H
+#include "AliTRDarrayADC.h"
+#endif
 
 class AliEveTRDChamber;
 class AliEveTRDHits : public TEvePointSet
 {
 public:
-  AliEveTRDHits(AliEveTRDChamber *p);
+  AliEveTRDHits();
   ~AliEveTRDHits();
 
   void PointSelected(Int_t n);
 
-protected:
-  AliEveTRDChamber *fParent; // Chamber holding the hits.
 
 private:
   AliEveTRDHits(const AliEveTRDHits&);            // Not implemented
@@ -52,24 +49,17 @@ private:
 class AliTRDdigitsManager;
 class AliEveTRDDigits : public TEveQuadSet
 {
-  friend class AliEveTRDDigitsEditor;
+  //friend class AliEveTRDDigitsEditor;
 
 public:
   AliEveTRDDigits(AliEveTRDChamber *p);
   ~AliEveTRDDigits();
-
-  void                 ComputeRepresentation();
-  void                 Paint(Option_t *opt="");
-  void                 Reset();
   void                 SetData(AliTRDdigitsManager *digits);
 
 protected:
   AliEveTRDChamber *fParent;
 
 private:
-  TEveBoxSet           fBoxes; // Boxset for didigit representation.
-  AliTRDdataArrayI     fData;  // Raw-data array.
-
   AliEveTRDDigits(const AliEveTRDDigits&);            // Not implemented
   AliEveTRDDigits& operator=(const AliEveTRDDigits&); // Not implemented
 
@@ -81,9 +71,11 @@ private:
 class AliEveTRDClusters : public AliEveTRDHits
 {
 public:
-  AliEveTRDClusters(AliEveTRDChamber *p);
+  AliEveTRDClusters();
 
+  void Load(const Char_t *what="all") const; // *MENU*
   void PointSelected(Int_t n);
+  void Print(Option_t *o = "") const; // *MENU*
 
 private:
   AliEveTRDClusters(const AliEveTRDClusters&);            // Not implemented
@@ -94,36 +86,113 @@ private:
 
 
 
-
-class AliEveTRDTracklet : public TEveLine, public AliTRDseedV1 
+class AliTRDseedV1;
+class AliEveTRDTracklet : public TEveLine
 {
 public:
-  AliEveTRDTracklet();
-//  ~AliEveTRDTracklet();
-  
+  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:
+  AliEveTRDClusters *fClusters;  // clusters
+
   AliEveTRDTracklet(const AliEveTRDTracklet&);            // Not implemented
   AliEveTRDTracklet& operator=(const AliEveTRDTracklet&); // Not implemented
 
   ClassDef(AliEveTRDTracklet, 0); // TRD tracklet visualisation
 };
+void AliEveTRDTracklet::Load(const Char_t *what) const
+{
+  if(fClusters) fClusters->Load(what);
+}
 
 
-
-
-class AliEveTRDTrack : public TEveLine, public AliTRDtrackV1
+class AliTrackPoint;
+class AliTRDtrackV1;
+class AliRieman;
+class AliEveTRDTrack : public TEveLine
 {
 public:
-  AliEveTRDTrack();
-//  ~AliEveTRDTrack();
-  
+  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
 
-  ClassDef(AliEveTRDTrack, 0); // TRD track visualisation
+  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
 };
 
 
+#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:
+  Int_t fDetector;
+  Int_t fROB;
+  Int_t fMCM;
+
+  AliEveTRDTrackletOnline(const AliEveTRDTrackletOnline&);            // Not implemented
+  AliEveTRDTrackletOnline& operator=(const AliEveTRDTrackletOnline&); // Not implemented
+
+  ClassDef(AliEveTRDTrackletOnline, 0); // TRD tracklet visualisation
+};
+
+
+class AliTRDmcmSim;
+class AliEveTRDmcm : public TEveElement, public TNamed
+{
+ public:
+  AliEveTRDmcm();
+  ~AliEveTRDmcm();
+
+  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*
+
+ protected:
+  AliTRDmcmSim *fMCM;
+
+  AliEveTRDmcm(const AliEveTRDmcm&); // not implemented
+  AliEveTRDmcm& operator=(const AliEveTRDmcm&); // not implemented
+
+  ClassDef(AliEveTRDmcm, 0);
+};
+
 #endif