]> git.uio.no Git - u/mrichter/AliRoot.git/blame - GEODB/AliGPCone.h
Streamlining of CodeAnalysis. .ii files are kept for reverse engineering
[u/mrichter/AliRoot.git] / GEODB / AliGPCone.h
CommitLineData
ab2f6604 1#ifndef AliGPCone_H
2#define AliGPCone_H
3da30618 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
ab2f6604 7
8#include "AliGTube.h"
9const Int_t kDiv = 20; //default number of divisions
10
11class AliGPCone: public AliGShape {
12
13 private:
14
15 Double_t* fSiTab; //Table of sin(fPhi1) .... sin(fPhil+fDphi1)
16 Double_t* fCoTab; //Table of cos(fPhi1) .... cos(fPhil+fDphi1)
17
18 protected:
19
20 Float_t fPhi1; //lower phi limit
21 Float_t fDphi1; //range in phi
22 Int_t fNz; //number of z segments
23 Float_t* fRmin; // pointer to array of inside radiuses
24 Float_t* fRmax; // pointer to array of outside radiuses
25 Float_t* fDz; // pointer to array of half lengths in z
26 Int_t fNdiv; //number of divisions
27
28 public:
29 AliGPCone(); /* Default Constructor */
30 AliGPCone( Text_t *name, Text_t* title, Float_t phi1, Float_t dphi1, Int_t nz);
31 AliGPCone( AliGPCone* pcone );
32 AliGPCone( Text_t *name, Text_t* title, Float_t phi1, Float_t dphi1,
33 Int_t nz, Float_t Z[10], Float_t RMIN[10], Float_t RMAX[10]);
34 AliGPCone( Text_t *name, Text_t* title, Float_t *upar, Int_t np);
35 virtual ~AliGPCone(); /* Destructor */
36
37 //Float_t GetRmin2() {return fRmin2;}
38 //Float_t GetRmax2() {return fRmax2;}
39 void DefineSection(Int_t secNum, Float_t z, Float_t rmin, Float_t rmax);
40 virtual void Draw(Option_t *option);
41 virtual void DrawShape(Option_t *option); // *MENU*
42 virtual Int_t GetNumberOfDivisions () const {if (fNdiv) return fNdiv; else return kDiv;}
43 void MakeTableOfCoSin();
44 void Paint(Option_t *option);
45 void SetNumberOfDivisions (Int_t p);
46 virtual void SetPoints(Float_t *buff);
47
48
49 ClassDef(AliGPCone,1) // Polycone class
50};
51#endif