VGM
Version 5.5
Toggle main menu visibility
Loading...
Searching...
No Matches
packages
Geant4GM
include
Geant4GM
solids
Polyhedra.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_POLYHEDRA_H
21
#define GEANT4_GM_POLYHEDRA_H
22
23
#include "
BaseVGM/solids/VPolyhedra.h
"
24
25
#include <string>
26
27
class
G4Polyhedra;
28
class
G4ReflectedSolid;
29
30
namespace
Geant4GM
{
31
32
class
Polyhedra
:
public
BaseVGM::VPolyhedra
33
{
34
public
:
35
Polyhedra
(
const
std::string& name,
double
sphi,
double
dphi,
int
nofSides,
36
int
nofZplanes,
double
* z,
double
* rin,
double
* rout);
37
Polyhedra
(G4Polyhedra* polyhedra, G4ReflectedSolid* reflPolyhedra = 0);
38
virtual
~Polyhedra
();
39
40
// methods
41
virtual
std::string
Name
()
const
;
42
virtual
double
StartPhi
()
const
;
43
virtual
double
DeltaPhi
()
const
;
44
virtual
int
NofSides
()
const
;
45
virtual
int
NofZPlanes
()
const
;
46
virtual
double
*
ZValues
()
const
;
47
virtual
double
*
InnerRadiusValues
()
const
;
48
virtual
double
*
OuterRadiusValues
()
const
;
49
50
protected
:
51
Polyhedra
();
52
Polyhedra
(
const
Polyhedra
& rhs);
53
54
private
:
55
void
CreateBuffers();
56
57
static
const
int
fgkMaxNofZPlanes;
58
static
double
* fgZBuffer;
59
static
double
* fgRinBuffer;
60
static
double
* fgRoutBuffer;
61
62
bool
fIsReflected;
63
double
* fZValuesRefl;
64
G4Polyhedra* fPolyhedra;
65
};
66
67
}
// namespace Geant4GM
68
69
#endif
// GEANT4_GM_POLYHEDRA_H
VPolyhedra.h
BaseVGM::VPolyhedra
The ABC for polyhedra solids.
Definition
VPolyhedra.h:30
Geant4GM::Polyhedra::OuterRadiusValues
virtual double * OuterRadiusValues() const
Return the array of outer radius of the planes in mm.
Definition
Polyhedra.cxx:214
Geant4GM::Polyhedra::NofSides
virtual int NofSides() const
Return number of sides of the cross section between the given phi limits.
Definition
Polyhedra.cxx:158
Geant4GM::Polyhedra::ZValues
virtual double * ZValues() const
Return the array of z positions of the planes in mm.
Definition
Polyhedra.cxx:170
Geant4GM::Polyhedra::DeltaPhi
virtual double DeltaPhi() const
Return opening phi angle of the segment in deg.
Definition
Polyhedra.cxx:150
Geant4GM::Polyhedra::Polyhedra
Polyhedra()
Definition
Polyhedra.cxx:112
Geant4GM::Polyhedra::StartPhi
virtual double StartPhi() const
Return starting phi angle of the segment in deg.
Definition
Polyhedra.cxx:144
Geant4GM::Polyhedra::NofZPlanes
virtual int NofZPlanes() const
Return number of planes perpendicular to the z axis.
Definition
Polyhedra.cxx:164
Geant4GM::Polyhedra::Name
virtual std::string Name() const
Return the name of this solid.
Definition
Polyhedra.cxx:141
Geant4GM::Polyhedra::InnerRadiusValues
virtual double * InnerRadiusValues() const
Return the array of innner radius of the planes in mm.
Definition
Polyhedra.cxx:193
Geant4GM::Polyhedra::~Polyhedra
virtual ~Polyhedra()
Definition
Polyhedra.cxx:126
Geant4GM::Polyhedra::Polyhedra
Polyhedra(const std::string &name, double sphi, double dphi, int nofSides, int nofZplanes, double *z, double *rin, double *rout)
Definition
Polyhedra.cxx:39
Geant4GM
VGM implementation for Geant4.
Definition
Element.h:29
Generated on
for VGM by
1.17.0