VGM Version 5.3
Loading...
Searching...
No Matches
Polycone.h
Go to the documentation of this file.
1// $Id$
2
3// -----------------------------------------------------------------------
4// The Geant4GM package of the Virtual Geometry Model
5// Copyright (C) 2007, Ivana Hrivnacova
6// All rights reserved.
7//
8// For the licensing terms see vgm/LICENSE.
9// Contact: ivana@ipno.in2p3.fr
10// -----------------------------------------------------------------------
11
13//
19
20#ifndef GEANT4_GM_POLYCONE_H
21#define GEANT4_GM_POLYCONE_H
22
24
25#include <string>
26
27class G4Cons;
28class G4Polycone;
29class G4Tubs;
30class G4ReflectedSolid;
31
32namespace Geant4GM {
33
35{
36 public:
37 Polycone(const std::string& name, double sphi, double dphi, int nofZplanes,
38 double* z, double* rin, double* rout);
39 Polycone(G4Polycone* polycone, G4ReflectedSolid* reflPolycone = 0);
40 Polycone(G4Cons* cons);
41 Polycone(G4Tubs* tubs);
42 virtual ~Polycone();
43
44 // methods
45 virtual std::string Name() const;
46 virtual double StartPhi() const;
47 virtual double DeltaPhi() const;
48 virtual int NofZPlanes() const;
49 virtual double* ZValues() const;
50 virtual double* InnerRadiusValues() const;
51 virtual double* OuterRadiusValues() const;
52
53 protected:
54 Polycone();
55 Polycone(const Polycone& rhs);
56
57 private:
58 void CreateBuffers();
59
60 static const int fgkMaxNofZPlanes;
61 static double* fgZBuffer;
62 static double* fgRinBuffer;
63 static double* fgRoutBuffer;
64
65 bool fIsReflected;
66 double* fZValuesRefl;
67 G4Polycone* fPolycone;
68};
69
70} // namespace Geant4GM
71
72#endif // GEANT4_GM_POLYCONE_H
The ABC for polycone solids.
Definition VPolycone.h:30
VGM implementation for Geant4 polycone solid.
Definition Polycone.h:35
virtual ~Polycone()
Definition Polycone.cxx:180
virtual double DeltaPhi() const
Return opening phi angle of the segment in deg.
Definition Polycone.cxx:204
virtual std::string Name() const
Return the name of this solid.
Definition Polycone.cxx:195
virtual double * InnerRadiusValues() const
Return the array of inner radius of the planes in mm.
Definition Polycone.cxx:241
virtual double * ZValues() const
Return the array of z positions of the planes in mm.
Definition Polycone.cxx:218
virtual double * OuterRadiusValues() const
Return the array of outer radius of the planes in mm.
Definition Polycone.cxx:261
virtual double StartPhi() const
Return starting phi angle of the segment in deg.
Definition Polycone.cxx:198
virtual int NofZPlanes() const
Return number of planes perpendicular to the z axis.
Definition Polycone.cxx:212
VGM implementation for Geant4.
Definition Element.h:29