Geant4  10.00.p03
G4OpticalSurface Class Reference

#include <G4OpticalSurface.hh>

+ Inheritance diagram for G4OpticalSurface:
+ Collaboration diagram for G4OpticalSurface:

Public Member Functions

 G4OpticalSurface (const G4OpticalSurface &right)
 
G4OpticalSurfaceoperator= (const G4OpticalSurface &right)
 
G4int operator== (const G4OpticalSurface &right) const
 
G4int operator!= (const G4OpticalSurface &right) const
 
 G4OpticalSurface (const G4String &name, G4OpticalSurfaceModel model=glisur, G4OpticalSurfaceFinish finish=polished, G4SurfaceType type=dielectric_dielectric, G4double value=1.0)
 
virtual ~G4OpticalSurface ()
 
void SetType (const G4SurfaceType &type)
 
G4OpticalSurfaceFinish GetFinish () const
 
void SetFinish (const G4OpticalSurfaceFinish)
 
G4OpticalSurfaceModel GetModel () const
 
void SetModel (const G4OpticalSurfaceModel model)
 
G4double GetSigmaAlpha () const
 
void SetSigmaAlpha (const G4double s_a)
 
G4double GetPolish () const
 
void SetPolish (const G4double plsh)
 
G4MaterialPropertiesTableGetMaterialPropertiesTable () const
 
void SetMaterialPropertiesTable (G4MaterialPropertiesTable *anMPT)
 
void DumpInfo () const
 
void ReadLUTFile (void)
 
G4double GetAngularDistributionValue (G4int, G4int, G4int)
 
G4int GetThetaIndexMax (void) const
 
G4int GetPhiIndexMax (void) const
 
void ReadDichroicFile (void)
 
G4Physics2DVectorGetDichroicVector ()
 
- Public Member Functions inherited from G4SurfaceProperty
 G4SurfaceProperty (const G4String &name, G4SurfaceType type=x_ray)
 
 G4SurfaceProperty ()
 
virtual ~G4SurfaceProperty ()
 
const G4StringGetName () const
 
void SetName (const G4String &name)
 
const G4SurfaceTypeGetType () const
 
void SetType (const G4SurfaceType &type)
 

Private Attributes

G4OpticalSurfaceModel theModel
 
G4OpticalSurfaceFinish theFinish
 
G4double sigma_alpha
 
G4double polish
 
G4MaterialPropertiesTabletheMaterialPropertiesTable
 
G4floatAngularDistribution
 
FILE * readLUTFileHandle
 
G4Physics2DVectorDichroicVector
 

Static Private Attributes

static const G4int incidentIndexMax = 91
 
static const G4int thetaIndexMax = 45
 
static const G4int phiIndexMax = 37
 

Additional Inherited Members

- Static Public Member Functions inherited from G4SurfaceProperty
static void CleanSurfacePropertyTable ()
 
static const
G4SurfacePropertyTable
GetSurfacePropertyTable ()
 
static size_t GetNumberOfSurfaceProperties ()
 
static void DumpTableInfo ()
 
- Protected Attributes inherited from G4SurfaceProperty
G4String theName
 
G4SurfaceType theType
 
- Static Protected Attributes inherited from G4SurfaceProperty
static G4SurfacePropertyTable theSurfacePropertyTable
 

Detailed Description

Definition at line 113 of file G4OpticalSurface.hh.

Constructor & Destructor Documentation

G4OpticalSurface::G4OpticalSurface ( const G4String name,
G4OpticalSurfaceModel  model = glisur,
G4OpticalSurfaceFinish  finish = polished,
G4SurfaceType  type = dielectric_dielectric,
G4double  value = 1.0 
)

Definition at line 78 of file G4OpticalSurface.cc.

References AngularDistribution, dichroic, DichroicVector, dielectric_dichroic, dielectric_LUT, FatalException, G4Exception(), glisur, incidentIndexMax, LUT, phiIndexMax, polish, ReadDichroicFile(), ReadLUTFile(), readLUTFileHandle, sigma_alpha, thetaIndexMax, and unified.

+ Here is the call graph for this function:

G4OpticalSurface::~G4OpticalSurface ( )
virtual

Definition at line 127 of file G4OpticalSurface.cc.

References AngularDistribution, DichroicVector, and readLUTFileHandle.

Member Function Documentation

void G4OpticalSurface::DumpInfo ( ) const

Definition at line 164 of file G4OpticalSurface.cc.

References G4cout, G4endl, glisur, LUT, polish, sigma_alpha, theFinish, theModel, and G4SurfaceProperty::theType.

Referenced by OpNoviceDetectorConstruction::Construct().

+ Here is the caller graph for this function:

G4double G4OpticalSurface::GetAngularDistributionValue ( G4int  angleIncident,
G4int  thetaIndex,
G4int  phiIndex 
)
inline

Definition at line 233 of file G4OpticalSurface.hh.

References AngularDistribution, incidentIndexMax, and thetaIndexMax.

G4Physics2DVector * G4OpticalSurface::GetDichroicVector ( )
inline

Definition at line 243 of file G4OpticalSurface.hh.

References DichroicVector.

Referenced by G4OpBoundaryProcess::DielectricDichroic().

+ Here is the caller graph for this function:

G4OpticalSurfaceFinish G4OpticalSurface::GetFinish ( ) const
inline

Definition at line 155 of file G4OpticalSurface.hh.

References theFinish.

Referenced by G4GDMLWriteSolids::OpticalSurfaceWrite(), and G4OpBoundaryProcess::PostStepDoIt().

+ Here is the caller graph for this function:

G4MaterialPropertiesTable* G4OpticalSurface::GetMaterialPropertiesTable ( ) const
inline

Definition at line 176 of file G4OpticalSurface.hh.

References theMaterialPropertiesTable.

G4OpticalSurfaceModel G4OpticalSurface::GetModel ( ) const
inline

Definition at line 160 of file G4OpticalSurface.hh.

References theModel.

Referenced by G4GDMLWriteSolids::OpticalSurfaceWrite(), and G4OpBoundaryProcess::PostStepDoIt().

+ Here is the caller graph for this function:

G4int G4OpticalSurface::GetPhiIndexMax ( void  ) const
inline

Definition at line 194 of file G4OpticalSurface.hh.

References phiIndexMax.

Referenced by G4OpBoundaryProcess::DielectricLUT().

+ Here is the caller graph for this function:

G4double G4OpticalSurface::GetPolish ( ) const
inline

Definition at line 171 of file G4OpticalSurface.hh.

References polish.

Referenced by G4OpBoundaryProcess::GetFacetNormal(), and G4GDMLWriteSolids::OpticalSurfaceWrite().

+ Here is the caller graph for this function:

G4double G4OpticalSurface::GetSigmaAlpha ( ) const
inline

Definition at line 166 of file G4OpticalSurface.hh.

References sigma_alpha.

Referenced by G4OpBoundaryProcess::GetFacetNormal(), and G4GDMLWriteSolids::OpticalSurfaceWrite().

+ Here is the caller graph for this function:

G4int G4OpticalSurface::GetThetaIndexMax ( void  ) const
inline

Definition at line 193 of file G4OpticalSurface.hh.

References thetaIndexMax.

Referenced by G4OpBoundaryProcess::DielectricLUT().

+ Here is the caller graph for this function:

G4int G4OpticalSurface::operator!= ( const G4OpticalSurface right) const

Definition at line 156 of file G4OpticalSurface.cc.

G4int G4OpticalSurface::operator== ( const G4OpticalSurface right) const

Definition at line 151 of file G4OpticalSurface.cc.

void G4OpticalSurface::ReadDichroicFile ( void  )

Definition at line 328 of file G4OpticalSurface.cc.

References DichroicVector, FatalException, G4cout, G4endl, G4Exception(), G4Physics2DVector::GetLengthX(), G4Physics2DVector::GetLengthY(), G4Physics2DVector::GetValue(), G4Physics2DVector::GetX(), G4Physics2DVector::GetY(), and G4Physics2DVector::Retrieve().

Referenced by G4OpticalSurface(), SetFinish(), and SetType().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4OpticalSurface::ReadLUTFile ( void  )

Definition at line 218 of file G4OpticalSurface.cc.

References AngularDistribution, etchedlumirrorair, etchedlumirrorglue, etchedteflonair, etchedtioair, etchedtyvekair, etchedvm2000air, etchedvm2000glue, FatalException, G4cout, G4endl, G4Exception(), groundlumirrorair, groundlumirrorglue, groundteflonair, groundtioair, groundtyvekair, groundvm2000air, groundvm2000glue, incidentIndexMax, phiIndexMax, polishedlumirrorair, polishedlumirrorglue, polishedteflonair, polishedtioair, polishedtyvekair, polishedvm2000air, polishedvm2000glue, readLUTFileHandle, theFinish, and thetaIndexMax.

Referenced by G4OpticalSurface(), SetFinish(), and SetType().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4OpticalSurface::SetFinish ( const G4OpticalSurfaceFinish  finish)

Definition at line 204 of file G4OpticalSurface.cc.

References AngularDistribution, DichroicVector, dielectric_dichroic, dielectric_LUT, incidentIndexMax, phiIndexMax, ReadDichroicFile(), ReadLUTFile(), theFinish, thetaIndexMax, and G4SurfaceProperty::theType.

Referenced by OpNoviceDetectorConstruction::Construct(), LXeDetectorConstruction::ConstructDetector(), UltraDetectorConstruction::ConstructGround(), UltraDetectorConstruction::ConstructMirror(), and UltraDetectorConstruction::ConstructUVscope().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void G4OpticalSurface::SetMaterialPropertiesTable ( G4MaterialPropertiesTable anMPT)
inline
void G4OpticalSurface::SetModel ( const G4OpticalSurfaceModel  model)
inline

Definition at line 162 of file G4OpticalSurface.hh.

References theModel.

Referenced by OpNoviceDetectorConstruction::Construct(), LXeDetectorConstruction::ConstructDetector(), UltraDetectorConstruction::ConstructGround(), UltraDetectorConstruction::ConstructMirror(), and UltraDetectorConstruction::ConstructUVscope().

+ Here is the caller graph for this function:

void G4OpticalSurface::SetPolish ( const G4double  plsh)
inline

Definition at line 173 of file G4OpticalSurface.hh.

References polish.

void G4OpticalSurface::SetSigmaAlpha ( const G4double  s_a)
inline

Definition at line 168 of file G4OpticalSurface.hh.

References sigma_alpha.

void G4OpticalSurface::SetType ( const G4SurfaceType type)

Definition at line 190 of file G4OpticalSurface.cc.

References AngularDistribution, DichroicVector, dielectric_dichroic, dielectric_LUT, incidentIndexMax, phiIndexMax, ReadDichroicFile(), ReadLUTFile(), thetaIndexMax, and G4SurfaceProperty::theType.

Referenced by OpNoviceDetectorConstruction::Construct(), LXeDetectorConstruction::ConstructDetector(), UltraDetectorConstruction::ConstructGround(), UltraDetectorConstruction::ConstructMirror(), and UltraDetectorConstruction::ConstructUVscope().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

Member Data Documentation

G4float* G4OpticalSurface::AngularDistribution
private
G4Physics2DVector* G4OpticalSurface::DichroicVector
private
const G4int G4OpticalSurface::incidentIndexMax = 91
staticprivate
const G4int G4OpticalSurface::phiIndexMax = 37
staticprivate
G4double G4OpticalSurface::polish
private

Definition at line 211 of file G4OpticalSurface.hh.

Referenced by DumpInfo(), G4OpticalSurface(), GetPolish(), operator=(), and SetPolish().

FILE* G4OpticalSurface::readLUTFileHandle
private

Definition at line 222 of file G4OpticalSurface.hh.

Referenced by G4OpticalSurface(), operator=(), ReadLUTFile(), and ~G4OpticalSurface().

G4double G4OpticalSurface::sigma_alpha
private
G4OpticalSurfaceFinish G4OpticalSurface::theFinish
private
G4MaterialPropertiesTable* G4OpticalSurface::theMaterialPropertiesTable
private
G4OpticalSurfaceModel G4OpticalSurface::theModel
private

Definition at line 207 of file G4OpticalSurface.hh.

Referenced by DumpInfo(), G4OpticalSurface(), GetModel(), operator=(), and SetModel().

const G4int G4OpticalSurface::thetaIndexMax = 45
staticprivate

The documentation for this class was generated from the following files: