G4CurvePoint Class Reference

#include <G4CurvePoint.hh>

Inheritance diagram for G4CurvePoint:

G4CurveRayIntersection

Public Member Functions

 G4CurvePoint (G4Curve &c0)
virtual ~G4CurvePoint ()
 G4CurvePoint (const G4CurvePoint &cp)
G4CurvePointoperator= (const G4CurvePoint &cp)
void Init (G4Curve &c0)
G4CurveGetCurve () const
void Reset ()
void Reset (G4double u0)
void Reset (const G4Point3D &p0)
void Reset (G4double u0, const G4Point3D &p0)
G4double GetPPoint ()
const G4Point3DGetPoint ()

Protected Member Functions

 G4CurvePoint ()

Protected Attributes

G4Curvec
G4Point3D p
G4double u
G4int notComputed

Static Protected Attributes

static const G4int pFlag = 1
static const G4int uFlag = 2
static const G4int allFlags = 0xFF

Detailed Description

Definition at line 47 of file G4CurvePoint.hh.


Constructor & Destructor Documentation

G4CurvePoint::G4CurvePoint ( G4Curve c0  ) 

Definition at line 47 of file G4CurvePoint.cc.

References Init().

00048 {
00049   Init(c0);
00050 }

G4CurvePoint::~G4CurvePoint (  )  [virtual]

Definition at line 52 of file G4CurvePoint.cc.

00053 {
00054 }

G4CurvePoint::G4CurvePoint ( const G4CurvePoint cp  ) 

Definition at line 56 of file G4CurvePoint.cc.

00057   : c(cp.c), p(cp.p), u(cp.u), notComputed(cp.notComputed)
00058 {
00059 }

G4CurvePoint::G4CurvePoint (  )  [protected]

Definition at line 42 of file G4CurvePoint.cc.

00043  : c(0), u(0.), notComputed(allFlags)
00044 {
00045 }


Member Function Documentation

G4Curve & G4CurvePoint::GetCurve (  )  const [inline]

Definition at line 46 of file G4CurvePoint.icc.

References c.

Referenced by G4SurfaceBoundary::Tangent(), and G4CompositeCurve::Tangent().

00047 {
00048   return *c;
00049 }

const G4Point3D & G4CurvePoint::GetPoint (  )  [inline]

Reimplemented in G4CurveRayIntersection.

Definition at line 94 of file G4CurvePoint.icc.

References c, G4Curve::GetPoint(), notComputed, p, pFlag, and u.

Referenced by G4Parabola::Tangent(), G4Hyperbola::Tangent(), G4Ellipse::Tangent(), and G4CircularCurve::Tangent().

00095 {
00096   if (notComputed & pFlag) {
00097     p= c->GetPoint(u);
00098     notComputed &= ~pFlag;
00099   }
00100   return p;
00101 }

G4double G4CurvePoint::GetPPoint (  )  [inline]

Reimplemented in G4CurveRayIntersection.

Definition at line 84 of file G4CurvePoint.icc.

References c, G4Curve::GetPPoint(), notComputed, p, u, and uFlag.

00085 {
00086   if (notComputed & uFlag) {
00087     u= c->GetPPoint(p);
00088     notComputed &= ~uFlag;
00089   }
00090   return u;
00091 }

void G4CurvePoint::Init ( G4Curve c0  )  [inline]

Definition at line 38 of file G4CurvePoint.icc.

References allFlags, c, notComputed, and u.

Referenced by G4CurvePoint().

00039 {
00040   c= &c0;
00041   u= 0.;
00042   notComputed= allFlags;
00043 }

G4CurvePoint & G4CurvePoint::operator= ( const G4CurvePoint cp  ) 

Definition at line 61 of file G4CurvePoint.cc.

References c, notComputed, p, and u.

00062 {
00063   if (&cp == this) return *this;
00064   c = cp.c;
00065   p = cp.p;
00066   u = cp.u;
00067   notComputed = cp.notComputed;
00068   
00069   return *this;
00070 }

void G4CurvePoint::Reset ( G4double  u0,
const G4Point3D p0 
) [inline]

Reimplemented in G4CurveRayIntersection.

Definition at line 74 of file G4CurvePoint.icc.

References notComputed, p, and u.

00075 {
00076   u= u0;
00077   p= p0;
00078   notComputed= 0;
00079 }

void G4CurvePoint::Reset ( const G4Point3D p0  )  [inline]

Reimplemented in G4CurveRayIntersection.

Definition at line 67 of file G4CurvePoint.icc.

References notComputed, p, and uFlag.

00068 {
00069   p= p0;
00070   notComputed= uFlag;
00071 }

void G4CurvePoint::Reset ( G4double  u0  )  [inline]

Definition at line 60 of file G4CurvePoint.icc.

References notComputed, pFlag, and u.

00061 {
00062   u= u0;
00063   notComputed= pFlag;
00064 }

void G4CurvePoint::Reset (  )  [inline]

Reimplemented in G4CurveRayIntersection.

Definition at line 54 of file G4CurvePoint.icc.

References allFlags, and notComputed.

00055 {
00056   notComputed= allFlags;
00057 }


Field Documentation

const G4int G4CurvePoint::allFlags = 0xFF [static, protected]

Definition at line 95 of file G4CurvePoint.hh.

Referenced by G4CurveRayIntersection::Init(), Init(), and Reset().

G4Curve* G4CurvePoint::c [protected]

Definition at line 87 of file G4CurvePoint.hh.

Referenced by G4CurveRayIntersection::G4CurveRayIntersection(), GetCurve(), G4CurveRayIntersection::GetDistance(), G4CurveRayIntersection::GetPoint(), GetPoint(), G4CurveRayIntersection::GetPPoint(), GetPPoint(), G4CurveRayIntersection::Init(), Init(), G4CurveRayIntersection::operator=(), operator=(), and G4CurveRayIntersection::Update().

G4int G4CurvePoint::notComputed [protected]

Definition at line 92 of file G4CurvePoint.hh.

Referenced by G4CurveRayIntersection::G4CurveRayIntersection(), G4CurveRayIntersection::GetDistance(), G4CurveRayIntersection::GetPoint(), GetPoint(), G4CurveRayIntersection::GetPPoint(), GetPPoint(), G4CurveRayIntersection::Init(), Init(), G4CurveRayIntersection::operator=(), operator=(), G4CurveRayIntersection::Reset(), Reset(), G4CurveRayIntersection::ResetDistance(), and G4CurveRayIntersection::ResetPPoint().

G4Point3D G4CurvePoint::p [protected]

Definition at line 89 of file G4CurvePoint.hh.

Referenced by G4CurveRayIntersection::G4CurveRayIntersection(), G4CurveRayIntersection::GetDistance(), G4CurveRayIntersection::GetPoint(), GetPoint(), G4CurveRayIntersection::GetPPoint(), GetPPoint(), G4CurveRayIntersection::operator=(), operator=(), G4CurveRayIntersection::Reset(), and Reset().

const G4int G4CurvePoint::pFlag = 1 [static, protected]

Definition at line 93 of file G4CurvePoint.hh.

Referenced by G4CurveRayIntersection::GetDistance(), G4CurveRayIntersection::GetPoint(), GetPoint(), G4CurveRayIntersection::GetPPoint(), G4CurveRayIntersection::Reset(), Reset(), G4CurveRayIntersection::ResetDistance(), and G4CurveRayIntersection::ResetPPoint().

G4double G4CurvePoint::u [protected]

Definition at line 90 of file G4CurvePoint.hh.

Referenced by G4CurveRayIntersection::G4CurveRayIntersection(), G4CurveRayIntersection::GetDistance(), G4CurveRayIntersection::GetPoint(), GetPoint(), G4CurveRayIntersection::GetPPoint(), GetPPoint(), Init(), G4CurveRayIntersection::operator=(), operator=(), G4CurveRayIntersection::Reset(), Reset(), and G4CurveRayIntersection::ResetPPoint().

const G4int G4CurvePoint::uFlag = 2 [static, protected]

Definition at line 94 of file G4CurvePoint.hh.

Referenced by G4CurveRayIntersection::GetPPoint(), GetPPoint(), G4CurveRayIntersection::Reset(), Reset(), and G4CurveRayIntersection::ResetDistance().


The documentation for this class was generated from the following files:
Generated on Mon May 27 17:51:44 2013 for Geant4 by  doxygen 1.4.7