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
G4GeomTestPoint.cc
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// GEANT 4 class source file
31//
32// G4GeomTestPoint
33//
34// Author: D.C.Williams, UCSC (davidw@scipp.ucsc.edu)
35// --------------------------------------------------------------------
36
37#include "G4GeomTestPoint.hh"
38
39
40//
41// Default constructor
42//
44 : p(0),
45 s(0),
46 entering(false)
47{;}
48
49
50//
51// Specific constructor
52//
54 G4double theS,
55 G4bool isEntering )
56 : p(thePoint),
57 s(theS),
58 entering(isEntering)
59{;}
60
61
62//
63// Copy constructor
64//
66 : p(other.p),
67 s(other.s),
68 entering(other.entering)
69{;}
70
71
72//
73// Destructor
74//
76
77//
78// Assignment operator
79//
81{
82 // Check assignment to self
83 //
84 if (this == &other) { return *this; }
85
86 // Copy data
87 //
88 p = other.p;
89 s = other.s;
90 entering = other.entering;
91
92 return *this;
93}
94
95
96//
97// Equivalence operator
98//
100{
101 return s == other.s;
102}
103
104
105//
106// Order operators
107//
109{
110 return s < other.s;
111}
112
114{
115 return s <= other.s;
116}
117
118
119//
120// Return position
121//
123{
124 return p;
125}
126
127
128//
129// Return distance
130//
132{
133 return s;
134}
135
136
137//
138// Return true if point was entering
139//
141{
142 return entering;
143}
144
double G4double
Definition: G4Types.hh:64
bool G4bool
Definition: G4Types.hh:67
G4bool operator<(const G4GeomTestPoint &other) const
G4bool operator==(const G4GeomTestPoint &other) const
virtual ~G4GeomTestPoint()
G4ThreeVector p
G4GeomTestPoint & operator=(const G4GeomTestPoint &other)
virtual const G4ThreeVector & GetPosition() const
virtual G4double GetDistance() const
virtual G4bool Entering() const
G4bool operator<=(const G4GeomTestPoint &other) const