Geant4 11.4.0
Toolkit for the simulation of the passage of particles through matter
Loading...
Searching...
No Matches
G4GeometryCell.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// G4GeometryCell
27//
28// Class description:
29//
30// This class is used by scoring and importance sampling.
31// It serves to address a "cell". A "cell" is somewhat related to a
32// touchable. It is identified by a reference to a G4VPhysicalVolume
33// and a number (replica number). Only simple replicas are supported.
34
35// Author: Michael Dressel (CERN), 2002
36// ----------------------------------------------------------------------
37#ifndef G4GEOMETRYCELL_HH
38#define G4GEOMETRYCELL_HH
39
40#include "globals.hh"
41
43
44/**
45 * @brief G4GeometryCell is used for scoring and importance sampling.
46 * It defines a "cell", which, similar to the concept of "touchable",
47 + is identified by a reference to a G4VPhysicalVolume and a number
48 * (replica number).
49 */
50
52{
53 public:
54
55 /**
56 * Constructor. Initialises volume and replica number.
57 * @param[in] aVolume The name of the physical volume.
58 * @param[in] RepNum The associated replica number.
59 */
60 G4GeometryCell(const G4VPhysicalVolume& aVolume, G4int RepNum);
61
62 /**
63 * Copy constructor and assignment operator.
64 */
65 G4GeometryCell(const G4GeometryCell& rhs) = default;
67
68 /**
69 * Default Destructor.
70 */
71 ~G4GeometryCell() = default;
72
73 /**
74 * Returns the physical volume of the cell.
75 */
77
78 /**
79 * Returns the replica number of the cell.
80 */
81 G4int GetReplicaNumber() const;
82
83 private:
84
85 /** Pointer to the physical volume of the "cell"; treated as identifier. */
86 const G4VPhysicalVolume* fVPhysicalVolume = nullptr;
87
88 /** Replica number of the "cell". */
89 G4int fRepNum = 0;
90};
91
94
95#endif
G4bool operator!=(const G4GeometryCell &k1, const G4GeometryCell &k2)
G4bool operator==(const G4GeometryCell &k1, const G4GeometryCell &k2)
bool G4bool
Definition G4Types.hh:86
int G4int
Definition G4Types.hh:85
G4GeometryCell is used for scoring and importance sampling. It defines a "cell", which,...
G4int GetReplicaNumber() const
G4GeometryCell(const G4GeometryCell &rhs)=default
const G4VPhysicalVolume & GetPhysicalVolume() const
~G4GeometryCell()=default
G4GeometryCell & operator=(const G4GeometryCell &rhs)
G4GeometryCell(const G4VPhysicalVolume &aVolume, G4int RepNum)
G4VPhysicalVolume is an abstract base class for the representation of a positioned volume....