Geant4.10
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Static Public Member Functions | Protected Attributes | Static Protected Attributes
G4SurfaceProperty Class Reference

#include <G4SurfaceProperty.hh>

Inheritance diagram for G4SurfaceProperty:
G4OpticalSurface

Public Member Functions

 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)
 

Static Public Member Functions

static void CleanSurfacePropertyTable ()
 
static const
G4SurfacePropertyTable
GetSurfacePropertyTable ()
 
static size_t GetNumberOfSurfaceProperties ()
 
static void DumpTableInfo ()
 

Protected Attributes

G4String theName
 
G4SurfaceType theType
 

Static Protected Attributes

static G4SurfacePropertyTable theSurfacePropertyTable
 

Detailed Description

Definition at line 79 of file G4SurfaceProperty.hh.

Constructor & Destructor Documentation

G4SurfaceProperty::G4SurfaceProperty ( const G4String name,
G4SurfaceType  type = x_ray 
)

Definition at line 55 of file G4SurfaceProperty.cc.

References theSurfacePropertyTable.

57  : theName(name), theType(type)
58 {
59  theSurfacePropertyTable.push_back(this);
60 }
static G4SurfacePropertyTable theSurfacePropertyTable
G4SurfaceProperty::G4SurfaceProperty ( )

Definition at line 65 of file G4SurfaceProperty.cc.

References theSurfacePropertyTable.

66  : theName("Dielectric"), theType(dielectric_metal)
67 {
68  theSurfacePropertyTable.push_back(this);
69 }
static G4SurfacePropertyTable theSurfacePropertyTable
G4SurfaceProperty::~G4SurfaceProperty ( )
virtual

Definition at line 71 of file G4SurfaceProperty.cc.

72 {
73 }

Member Function Documentation

void G4SurfaceProperty::CleanSurfacePropertyTable ( )
static

Definition at line 107 of file G4SurfaceProperty.cc.

References DumpTableInfo(), and theSurfacePropertyTable.

108 {
109  DumpTableInfo();
110  G4SurfacePropertyTable::iterator pos;
111  for(pos=theSurfacePropertyTable.begin();
112  pos!=theSurfacePropertyTable.end(); pos++)
113  {
114  if (*pos) delete *pos;
115  }
116  theSurfacePropertyTable.clear();
117  DumpTableInfo();
118 }
static void DumpTableInfo()
static G4SurfacePropertyTable theSurfacePropertyTable
void G4SurfaceProperty::DumpTableInfo ( )
static

Definition at line 91 of file G4SurfaceProperty.cc.

References G4cout, G4endl, GetName(), GetNumberOfSurfaceProperties(), GetType(), and theSurfacePropertyTable.

Referenced by CleanSurfacePropertyTable().

92 {
93  G4cout << "***** Surface Property Table : Nb of Surface Properties = "
94  << GetNumberOfSurfaceProperties() << " *****" << G4endl;
95 
96  for (size_t i=0; i<theSurfacePropertyTable.size(); i++)
97  {
98  G4SurfaceProperty* pSurfaceProperty = theSurfacePropertyTable[i];
99  G4cout << pSurfaceProperty->GetName() << " : " << G4endl
100  << " Surface Property type = "
101  << pSurfaceProperty->GetType()
102  << G4endl;
103  }
104  G4cout << G4endl;
105 }
const G4String & GetName() const
const G4SurfaceType & GetType() const
static size_t GetNumberOfSurfaceProperties()
G4GLOB_DLL std::ostream G4cout
#define G4endl
Definition: G4ios.hh:61
static G4SurfacePropertyTable theSurfacePropertyTable
const G4String& G4SurfaceProperty::GetName ( void  ) const
inline
size_t G4SurfaceProperty::GetNumberOfSurfaceProperties ( )
static

Definition at line 84 of file G4SurfaceProperty.cc.

References theSurfacePropertyTable.

Referenced by DumpTableInfo().

85 {
86  return theSurfacePropertyTable.size();
87 }
static G4SurfacePropertyTable theSurfacePropertyTable
const G4SurfacePropertyTable * G4SurfaceProperty::GetSurfacePropertyTable ( )
static

Definition at line 79 of file G4SurfaceProperty.cc.

References theSurfacePropertyTable.

Referenced by G4GDMLReadSolids::GetSurfaceProperty().

80 {
82 }
static G4SurfacePropertyTable theSurfacePropertyTable
const G4SurfaceType& G4SurfaceProperty::GetType ( ) const
inline

Definition at line 118 of file G4SurfaceProperty.hh.

References theType.

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

118 { return theType; }
void G4SurfaceProperty::SetName ( const G4String name)
inline

Definition at line 115 of file G4SurfaceProperty.hh.

References theName.

115 { theName = name; }
const XML_Char * name
void G4SurfaceProperty::SetType ( const G4SurfaceType type)
inline

Definition at line 120 of file G4SurfaceProperty.hh.

References theType.

120 { theType = type; }

Field Documentation

G4String G4SurfaceProperty::theName
protected
G4SurfacePropertyTable G4SurfaceProperty::theSurfacePropertyTable
staticprotected
G4SurfaceType G4SurfaceProperty::theType
protected

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