43 Fatal(
"TGeoOpticalSurface::TGeoOpticalSurface()",
"Constructor called with INVALID model.");
53 if ((stype ==
"dielectric_metal") || (stype ==
"0")) {
55 }
else if ((stype ==
"dielectric_dielectric") || (stype ==
"1")) {
57 }
else if ((stype ==
"dielectric_LUT") || (stype ==
"2")) {
59 }
else if ((stype ==
"dielectric_dichroic") || (stype ==
"3")) {
61 }
else if ((stype ==
"firsov") || (stype ==
"4")) {
83 return "unhandled surface type";
93 if ((smodel ==
"glisur") || (smodel ==
"0")) {
95 }
else if ((smodel ==
"unified") || (smodel ==
"1")) {
97 }
else if ((smodel ==
"LUT") || (smodel ==
"2")) {
112 case kMLUT:
return "LUT";
117 return "unhandled model type";
126 if ((sfinish ==
"polished") || (sfinish ==
"0")) {
128 }
else if ((sfinish ==
"polishedfrontpainted") || (sfinish ==
"1")) {
130 }
else if ((sfinish ==
"polishedbackpainted") || (sfinish ==
"2")) {
132 }
else if ((sfinish ==
"ground") || (sfinish ==
"3")) {
134 }
else if ((sfinish ==
"groundfrontpainted") || (sfinish ==
"4")) {
136 }
else if ((sfinish ==
"groundbackpainted") || (sfinish ==
"5")) {
138 }
else if ((sfinish ==
"polishedlumirrorair") || (sfinish ==
"6")) {
140 }
else if ((sfinish ==
"polishedlumirrorglue") || (sfinish ==
"7")) {
142 }
else if ((sfinish ==
"polishedair") || (sfinish ==
"8")) {
144 }
else if ((sfinish ==
"polishedteflonair") || (sfinish ==
"9")) {
146 }
else if ((sfinish ==
"polishedtioair") || (sfinish ==
"10")) {
148 }
else if ((sfinish ==
"polishedtyvekair") || (sfinish ==
"11")) {
150 }
else if ((sfinish ==
"polishedvm2000air") || (sfinish ==
"12")) {
152 }
else if ((sfinish ==
"polishedvm2000glue") || (sfinish ==
"13")) {
154 }
else if ((sfinish ==
"etchedlumirrorair") || (sfinish ==
"14")) {
156 }
else if ((sfinish ==
"etchedlumirrorglue") || (sfinish ==
"15")) {
158 }
else if ((sfinish ==
"etchedair") || (sfinish ==
"16")) {
160 }
else if ((sfinish ==
"etchedteflonair") || (sfinish ==
"17")) {
162 }
else if ((sfinish ==
"etchedtioair") || (sfinish ==
"18")) {
164 }
else if ((sfinish ==
"etchedtyvekair") || (sfinish ==
"19")) {
166 }
else if ((sfinish ==
"etchedvm2000air") || (sfinish ==
"20")) {
168 }
else if ((sfinish ==
"etchedvm2000glue") || (sfinish ==
"21")) {
170 }
else if ((sfinish ==
"groundlumirrorair") || (sfinish ==
"22")) {
172 }
else if ((sfinish ==
"groundlumirrorglue") || (sfinish ==
"23")) {
174 }
else if ((sfinish ==
"groundair") || (sfinish ==
"24")) {
176 }
else if ((sfinish ==
"groundteflonair") || (sfinish ==
"25")) {
178 }
else if ((sfinish ==
"groundtioair") || (sfinish ==
"26")) {
180 }
else if ((sfinish ==
"groundtyvekair") || (sfinish ==
"27")) {
182 }
else if ((sfinish ==
"groundvm2000air") || (sfinish ==
"28")) {
240 return "unhandled model finish";
248 return (
prop) ?
prop->GetTitle() :
nullptr;
276 return (
prop) ?
prop->GetTitle() :
nullptr;
322 Error(
"AddConstProperty",
"Constant property %s already added to material %s",
property,
GetName());
333 printf(
"*** opticalsurface: %s type: %s model: %s finish: %s value = %g\n",
GetName(),
340 printf(
" property: %s ref: %s\n",
property->GetName(),
property->GetTitle());
348 printf(
" constant: %s ref: %s value: %g\n",
361 Error(
"Print",
"Skin surface %s: volume not set",
GetName());
374 Error(
"Print",
"Border surface %s: nodes not set",
GetName());
377 printf(
"*** bordersurface: %s surfaceproperty: %s physvolref: %s %s \n",
GetName(),
GetTitle(),
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h prop
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void value
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t type
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t WindowAttributes_t Float_t Float_t Float_t Int_t Int_t UInt_t UInt_t Rectangle_t Int_t Int_t Window_t TString Int_t GCValues_t GetPrimarySelectionOwner GetDisplay GetScreen GetColormap GetNativeEvent const char const char dpyName wid window const char font_name cursor keysym reg const char only_if_exist regb h Point_t winding char text const char depth char const char Int_t count const char ColorStruct_t color const char Pixmap_t Pixmap_t PictureAttributes_t attr const char char ret_data h unsigned char height h Atom_t Int_t ULong_t ULong_t unsigned char prop_list Atom_t Atom_t Atom_t Time_t property
R__EXTERN TGeoManager * gGeoManager
virtual void SetOwner(Bool_t enable=kTRUE)
Set whether this collection is the owner (enable==true) of its content.
virtual Int_t GetSize() const
Return the capacity of the collection, i.e.
This class is used in the process of reading and writing the GDML "matrix" tag.
void Print(Option_t *option="") const override
This method must be overridden when a class wants to print itself.
Double_t GetProperty(const char *name, Bool_t *error=nullptr) const
Get a user-defined property.
TGDMLMatrix * GetGDMLMatrix(const char *name) const
Get GDML matrix with a given name;.
This is a wrapper class to G4OpticalSurface.
static ESurfaceType StringToType(const char *type)
bool AddProperty(const char *property, const char *ref)
static const char * ModelToString(ESurfaceModel model)
@ kTdielectric_dielectric
static const char * TypeToString(ESurfaceType type)
const char * GetConstPropertyRef(const char *property) const
static ESurfaceFinish StringToFinish(const char *finish)
TGDMLMatrix * GetProperty(const char *name) const
static const char * FinishToString(ESurfaceFinish finish)
void Print(Option_t *option="") const override
This method must be overridden when a class wants to print itself.
bool AddConstProperty(const char *property, const char *ref)
@ kFPolishedESRGrease_LUT
Double_t GetConstProperty(const char *property, Bool_t *error=nullptr) const
static ESurfaceModel StringToModel(const char *model)
const char * GetPropertyRef(const char *property)
TGeoVolume const * fVolume
void Print(Option_t *option="") const override
This method must be overridden when a class wants to print itself.
TObject * FindObject(const char *name) const override
Find an object in this list using its name.
void Add(TObject *obj) override
TObject * At(Int_t idx) const override
Returns the object at position idx. Returns 0 if idx is out of range.
The TNamed class is the base class for all named ROOT classes.
const char * GetName() const override
Returns name of object.
const char * GetTitle() const override
Returns title of object.
virtual void Error(const char *method, const char *msgfmt,...) const
Issue error message.
virtual void Fatal(const char *method, const char *msgfmt,...) const
Issue fatal error message.