1 /**************************************************************************
2 * Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
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 **************************************************************************/
18 Revision 1.3 2000/10/15 23:40:01 cblume
21 Revision 1.2 2000/10/06 16:49:46 cblume
24 Revision 1.1.2.1 2000/09/18 13:44:21 cblume
25 New class AliTRDpoints to display the TR photon hits
29 ///////////////////////////////////////////////////////////////////////////////
31 // This class contains the TRD points for the ALICE event display. //
32 // Used to seperately display dEdx and TR photon hits. //
34 ///////////////////////////////////////////////////////////////////////////////
40 #include "AliDetector.h"
42 #include "AliTRDpoints.h"
44 ClassImp(AliTRDpoints)
46 //_____________________________________________________________________________
47 AliTRDpoints::AliTRDpoints():AliPoints()
50 // Default constructor
58 //_____________________________________________________________________________
59 AliTRDpoints::AliTRDpoints(Int_t nhitsE, Int_t nhitsT):AliPoints(nhitsE)
62 // Standard constructor
70 //_____________________________________________________________________________
71 AliTRDpoints::AliTRDpoints(const AliTRDpoints &p)
77 ((AliTRDpoints &) p).Copy(*this);
81 //_____________________________________________________________________________
82 AliTRDpoints::~AliTRDpoints()
88 if (fTRpolyMarker) delete fTRpolyMarker;
92 //_____________________________________________________________________________
93 AliTRDpoints &AliTRDpoints::operator=(const AliTRDpoints &p)
96 // Assignment operator
99 if (this != &p) ((AliTRDpoints &) p).Copy(*this);
104 //_____________________________________________________________________________
105 void AliTRDpoints::Copy(TObject &p)
111 ((AliTRDpoints &) p).fNTRpoints = fNTRpoints;
112 for (Int_t i = 0; i < 3*fNTRpoints; i++) {
113 ((AliTRDpoints &) p).fTRpoints[i] = fTRpoints[i];
118 //_____________________________________________________________________________
119 void AliTRDpoints::Draw(Option_t *option)
125 AliPoints::Draw(option);
127 //if (fTRpolyMarker) delete fTRpolyMarker;
129 fTRpolyMarker = new TPolyMarker3D(fNTRpoints,fTRpoints,29);
130 fTRpolyMarker->SetMarkerColor(2);
131 fTRpolyMarker->SetMarkerSize(0.8);
132 fTRpolyMarker->Draw(option);
137 //_____________________________________________________________________________
138 void AliTRDpoints::SetTRpoints(Int_t n, Float_t *coor)
141 // Sets the number and the coordinates of the photon hits
144 if (kNTRpoints >= 3 * n) {
146 for (Int_t i = 0; i < 3*n; i++) {
147 fTRpoints[i] = coor[i];
151 printf("AliTRDpoints::SetTRpoints -- ");
152 printf("Boundary error: %d/%d\n",3*n,kNTRpoints);