Geant4 9.6.0
Toolkit for the simulation of the passage of particles through matter
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
G4tgrPlaceDivRep.hh
Go to the documentation of this file.
1//
2// ********************************************************************
3// * License and Disclaimer *
4// * *
5// * The Geant4 software is copyright of the Copyright Holders of *
6// * the Geant4 Collaboration. It is provided under the terms and *
7// * conditions of the Geant4 Software License, included in the file *
8// * LICENSE and available at http://cern.ch/geant4/license . These *
9// * include a list of copyright holders. *
10// * *
11// * Neither the authors of this software system, nor their employing *
12// * institutes,nor the agencies providing financial support for this *
13// * work make any representation or warranty, express or implied, *
14// * regarding this software system or assume any liability for its *
15// * use. Please see the license in the file LICENSE and URL above *
16// * for the full disclaimer and the limitation of liability. *
17// * *
18// * This code implementation is the result of the scientific and *
19// * technical work of the GEANT4 collaboration. *
20// * By using, copying, modifying or distributing the software (or *
21// * any work based on the software) you agree to acknowledge its *
22// * use in resulting scientific publications, and indicate your *
23// * acceptance of all terms of the Geant4 Software license. *
24// ********************************************************************
25//
26//
27// $Id$
28//
29//
30// class G4tgrPlaceDivRep
31//
32// Class description:
33//
34// Class to descripe the position of a G4tgrVolume inside another
35// G4tgrVolume as a replica, i.e. filling the whole parent volume.
36
37// History:
38// - Created. P.Arce, CIEMAT (November 2007)
39// -------------------------------------------------------------------------
40
41#ifndef G4tgrPlaceDivRep_h
42#define G4tgrPlaceDivRep_h
43
44#include "globals.hh"
45#include "geomdefs.hh"
46
47#include <vector>
48
49#include "G4tgrPlace.hh"
50
52
54{
55
56 public: // with description
57
60
61 G4tgrPlaceDivRep( const std::vector<G4String>& wl );
62 // Creates an object passing the only data that is fixed
63 // (ndiv, width, offset may be have to be recalculated)
64
65 EAxis BuildAxis( const G4String& axisName );
66
67 // Access functions
68
69 EAxis GetAxis() const { return theAxis; }
70 G4int GetNDiv() const { return theNDiv; }
71 G4double GetWidth() const { return theWidth; }
72 G4double GetOffset() const { return theOffset; }
73 G4DivType GetDivType() const { return theDivType; }
74
75 void SetParentName(const G4String& parentName) { theParentName=parentName; }
76 void SetNDiv( G4int ndiv ) { theNDiv = ndiv; }
77 void SetWidth( G4double width ) { theWidth = width; }
78 void SetAxis( EAxis axis ) { theAxis = axis; }
79 void SetOffset( G4double offset ) { theOffset = offset; }
80 void SetDivType( G4DivType typ ) { theDivType = typ; }
81
82 friend std::ostream& operator<<(std::ostream& os,
83 const G4tgrPlaceDivRep& obj);
84 private:
85
86 G4int theNDiv;
87 G4double theWidth;
88 EAxis theAxis;
89 G4double theOffset;
90 G4DivType theDivType;
91};
92
93#endif
double G4double
Definition: G4Types.hh:64
int G4int
Definition: G4Types.hh:66
G4DivType
@ DivByNdiv
@ DivByWidth
@ DivByNdivAndWidth
G4double GetOffset() const
void SetDivType(G4DivType typ)
void SetParentName(const G4String &parentName)
void SetAxis(EAxis axis)
void SetNDiv(G4int ndiv)
void SetWidth(G4double width)
void SetOffset(G4double offset)
friend std::ostream & operator<<(std::ostream &os, const G4tgrPlaceDivRep &obj)
EAxis BuildAxis(const G4String &axisName)
G4double GetWidth() const
EAxis GetAxis() const
G4DivType GetDivType() const
G4int GetNDiv() const
G4String theParentName
Definition: G4tgrPlace.hh:72
EAxis
Definition: geomdefs.hh:54