]> git.uio.no Git - u/mrichter/AliRoot.git/blame - TRD/AliTRDpoints.cxx
QinvResVsQinv, Phi and Theta pair open angle resolutions functions added
[u/mrichter/AliRoot.git] / TRD / AliTRDpoints.cxx
CommitLineData
46d29e70 1/**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
3 * *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
6 * *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
15
16/*
17$Log$
0a29d0f1 18Revision 1.3 2000/10/15 23:40:01 cblume
19Remove AliTRDconst
20
0e9c2ad5 21Revision 1.2 2000/10/06 16:49:46 cblume
22Made Getters const
23
46d29e70 24Revision 1.1.2.1 2000/09/18 13:44:21 cblume
25New class AliTRDpoints to display the TR photon hits
26
27*/
28
29///////////////////////////////////////////////////////////////////////////////
30// //
0a29d0f1 31// This class contains the TRD points for the ALICE event display. //
32// Used to seperately display dEdx and TR photon hits. //
46d29e70 33// //
34///////////////////////////////////////////////////////////////////////////////
35
0e9c2ad5 36#include <TPad.h>
37#include <TView.h>
38
46d29e70 39#include "AliRun.h"
40#include "AliDetector.h"
0e9c2ad5 41
42#include "AliTRDpoints.h"
46d29e70 43
44ClassImp(AliTRDpoints)
45
46//_____________________________________________________________________________
47AliTRDpoints::AliTRDpoints():AliPoints()
48{
49 //
50 // Default constructor
51 //
52
53 fNTRpoints = 0;
54 fTRpolyMarker = 0;
55
56}
57
58//_____________________________________________________________________________
59AliTRDpoints::AliTRDpoints(Int_t nhitsE, Int_t nhitsT):AliPoints(nhitsE)
60{
61 //
62 // Standard constructor
63 //
64
65 fNTRpoints = nhitsT;
66 fTRpolyMarker = 0;
67
68}
69
70//_____________________________________________________________________________
71AliTRDpoints::AliTRDpoints(const AliTRDpoints &p)
72{
73 //
74 // Copy contructor
75 //
76
77 ((AliTRDpoints &) p).Copy(*this);
78
79}
80
81//_____________________________________________________________________________
82AliTRDpoints::~AliTRDpoints()
83{
84 //
85 // Default destructor
86 //
87
88 if (fTRpolyMarker) delete fTRpolyMarker;
89
90}
91
92//_____________________________________________________________________________
93AliTRDpoints &AliTRDpoints::operator=(const AliTRDpoints &p)
94{
95 //
96 // Assignment operator
97 //
98
99 if (this != &p) ((AliTRDpoints &) p).Copy(*this);
100 return *this;
101
102}
103
104//_____________________________________________________________________________
105void AliTRDpoints::Copy(TObject &p)
106{
107 //
108 // Copy function
109 //
110
111 ((AliTRDpoints &) p).fNTRpoints = fNTRpoints;
112 for (Int_t i = 0; i < 3*fNTRpoints; i++) {
113 ((AliTRDpoints &) p).fTRpoints[i] = fTRpoints[i];
114 }
115
116}
117
118//_____________________________________________________________________________
119void AliTRDpoints::Draw(Option_t *option)
120{
121 //
122 // Draws a TRD point
123 //
124
125 AliPoints::Draw(option);
126
127 //if (fTRpolyMarker) delete fTRpolyMarker;
128 if (fNTRpoints) {
129 fTRpolyMarker = new TPolyMarker3D(fNTRpoints,fTRpoints,29);
130 fTRpolyMarker->SetMarkerColor(2);
131 fTRpolyMarker->SetMarkerSize(0.8);
132 fTRpolyMarker->Draw(option);
133 }
134
135}
136
137//_____________________________________________________________________________
138void AliTRDpoints::SetTRpoints(Int_t n, Float_t *coor)
139{
140 //
141 // Sets the number and the coordinates of the photon hits
142 //
143
144 if (kNTRpoints >= 3 * n) {
145 fNTRpoints = n;
146 for (Int_t i = 0; i < 3*n; i++) {
147 fTRpoints[i] = coor[i];
148 }
149 }
150 else {
151 printf("AliTRDpoints::SetTRpoints -- ");
152 printf("Boundary error: %d/%d\n",3*n,kNTRpoints);
153 }
154
155}