Added the possibility to do diagnostics histograms.
[u/mrichter/AliRoot.git] / FMD / AliFMDPoints.h
1 #ifndef ALIFMDPOINTS_H
2 #define ALIFMDPOINTS_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights
4  * reserved. 
5  *
6  * Latest changes by Christian Holm Christensen <cholm@nbi.dk>
7  *
8  * See cxx source for full Copyright notice                               
9  */
10 /** @file    AliFMDPoints.h
11     @author  Christian Holm Christensen <cholm@nbi.dk>
12     @date    Tue Apr 11 12:35:31 2006
13     @brief   Specialised class for drawing hits in the FMD. 
14     @ingroup FMD_sim
15 */
16 //____________________________________________________________________
17 //
18 // AliFMDPoints.  
19 // Class to draw FMD Hits. 
20 // Normally, hits are drawn using TPolyMarker3D.  However, that's not
21 // really appropriate for the FMD.  Instead, we use TMarker3DBox. 
22 //
23 #ifndef ALIPOINTS_H
24 # include <AliPoints.h>
25 #endif
26 class AliFMHit;
27 class TMarker3DBox;
28
29 /** @class AliFMDPoints 
30     @brief Class to draw hits for the FMD 
31     @ingroup FMD_sim
32  */
33 class AliFMDPoints : public AliPoints 
34 {
35 public:
36   /** Constructor 
37       @param hit   Hit to draw
38       @param color Color of hit */
39   AliFMDPoints(AliFMDHit* hit, UInt_t color);
40   /** Copy constructor 
41       @param other Objct to copy from  */
42   AliFMDPoints(const AliFMDPoints& other);
43   /** Assignment operator
44       @param other Objct to copy from  
45       @return reference to this */
46   AliFMDPoints& operator=(const AliFMDPoints& other);
47   /** Destructor  */
48   virtual ~AliFMDPoints();
49   /** Set position 
50       @param x @f$ x@f$ coordinate 
51       @param y @f$ y@f$ coordinate
52       @param z @f$ z@f$ coordinate */
53   void SetXYZ(Double_t x, Double_t y, Double_t z);
54   /** Calculate the distance to this object from cursor
55       @param px Curser X-position
56       @param py Cursor Y-position
57       @return Distance to @f$(p_x,p_y)@f$ */
58   Int_t DistancetoPrimitive(Int_t px, Int_t py);
59   /** Attach to canvas 
60       @param option See TMarker3DBox::Draw */
61   void Draw(Option_t* option);
62   /** Paint in canvas 
63       @param option See TMarker3DBox::Paint */
64   void Paint(Option_t* option);
65   /** @param colour Colour of marker */
66   void SetMarkerColor(Color_t colour);
67 private:
68   /** Marker */
69   TMarker3DBox* fMarker; // Marker 
70 };
71
72 #endif
73 // Local Variables:
74 //   mode: C++ 
75 // End:
76 //
77 // EOF
78 //