DD4hep
1.30.0
Detector Description Toolkit for High Energy Physics
|
Class to support the handling of optical surfaces. More...
#include <OpticalSurfaces.h>
Public Types | |
typedef TGeoOpticalSurface | Object |
typedef Object | Finish |
typedef Object | Model |
typedef Object | Type |
typedef Object::ESurfaceModel | EModel |
typedef Object::ESurfaceFinish | EFinish |
typedef Object::ESurfaceType | EType |
typedef const TGDMLMatrix * | Property |
Public Types inherited from dd4hep::Handle< TGeoOpticalSurface > | |
typedef TGeoOpticalSurface | Object |
Extern accessible definition of the contained element type. More... | |
typedef Handle< TGeoOpticalSurface > | Base |
Self type: used by sub-classes. More... | |
Public Member Functions | |
OpticalSurface ()=default | |
Default constructor. More... | |
OpticalSurface (const OpticalSurface &e)=default | |
Copy constructor. More... | |
OpticalSurface (Object *obj) | |
Constructor taking object pointer. More... | |
OpticalSurface (const Handle< Object > &e) | |
Constructor from same-type handle. More... | |
template<typename Q > | |
OpticalSurface (const Handle< Q > &e) | |
Constructor from arbitrary handle. More... | |
OpticalSurface (Detector &detector, const std::string &name, EModel model=Model::kMglisur, EFinish finish=Finish::kFpolished, EType type=Type::kTdielectric_dielectric, double value=1.0) | |
Initializing constructor. More... | |
OpticalSurface & | operator= (const OpticalSurface &m)=default |
Assignment operator. More... | |
Property | property (const char *name) const |
Access to tabular properties of the surface. More... | |
Property | property (const std::string &name) const |
Access to tabular properties of the surface. More... | |
Public Member Functions inherited from dd4hep::Handle< TGeoOpticalSurface > | |
Handle ()=default | |
Default constructor. More... | |
Handle (Handle< TGeoOpticalSurface > &&element)=default | |
Copy constructor. More... | |
Handle (const Handle< TGeoOpticalSurface > &element)=default | |
Copy constructor. More... | |
Handle (TGeoOpticalSurface *element) | |
Initializing constructor from pointer. More... | |
Handle (Q *element) | |
Initializing constructor from unrelated pointer with type checking. More... | |
Handle (const Handle< Q > &element) | |
Initializing constructor from unrelated handle with type checking. More... | |
Handle< TGeoOpticalSurface > & | operator= (Handle< TGeoOpticalSurface > &&element)=default |
Assignment move operator. More... | |
Handle< TGeoOpticalSurface > & | operator= (const Handle< TGeoOpticalSurface > &element)=default |
Assignment copy operator. More... | |
bool | operator== (const Handle< TGeoOpticalSurface > &element) const |
Boolean operator == used for RB tree insertions. More... | |
bool | operator< (const Handle< TGeoOpticalSurface > &element) const |
Boolean operator < used for RB tree insertions. More... | |
bool | operator> (const Handle< TGeoOpticalSurface > &element) const |
Boolean operator > used for RB tree insertions. More... | |
bool | isValid () const |
Check the validity of the object held by the handle. More... | |
bool | operator! () const |
Check the validity of the object held by the handle. More... | |
Handle< TGeoOpticalSurface > & | clear () |
Release the object held by the handle. More... | |
TGeoOpticalSurface * | operator-> () const |
Access the held object using the -> operator. More... | |
operator TGeoOpticalSurface & () const | |
Automatic type conversion to an object references. More... | |
TGeoOpticalSurface & | operator* () const |
Access the held object using the * operator. More... | |
TGeoOpticalSurface * | ptr () const |
Access to the held object. More... | |
Q * | _ptr () const |
Access to an unrelated object type. More... | |
Q * | data () const |
Access to an unrelated object type. More... | |
Q & | object () const |
Access to an unrelated object type. More... | |
TGeoOpticalSurface * | access () const |
Checked object access. Throws invalid handle runtime exception if invalid handle. More... | |
const char * | name () const |
Access the object name (or "" if not supported by the object) More... | |
const char * | name () const |
const char * | name () const |
void | assign (Object *n, const std::string &nam, const std::string &title) |
Assign a new named object. Note: object references must be managed by the user. More... | |
void | assign (_Segmentation *s, const std::string &n, const std::string &) |
void | assign (NamedObject *p, const std::string &n, const std::string &t) |
void | destroy () |
Destroy the underlying object (be careful here: things are not reference counted)! More... | |
Static Public Member Functions | |
static EType | stringToType (const std::string &type) |
Convenience function forwarding to TGeoOpticalSurface. More... | |
static std::string | typeToString (EType type) |
Convenience function forwarding to TGeoOpticalSurface. More... | |
static EModel | stringToModel (const std::string &model) |
static std::string | modelToString (EModel model) |
static EFinish | stringToFinish (const std::string &finish) |
static std::string | finishToString (EFinish finish) |
Static Public Member Functions inherited from dd4hep::Handle< TGeoOpticalSurface > | |
static void | bad_assignment (const std::type_info &from, const std::type_info &to) |
Helper routine called when unrelated types are assigned. More... | |
Additional Inherited Members | |
Public Attributes inherited from dd4hep::Handle< TGeoOpticalSurface > | |
TGeoOpticalSurface * | m_element |
Single and only data member: Reference to the actual element. More... | |
Class to support the handling of optical surfaces.
Optical surfaces are "global" objects ie. they are attached to the TGeoManager of the Detector object.
IF the optical surface is created locally in a detector constructor, and registered to the OpticalSurfaceManager, the surfaces are ALSO attached to the currently built detector. Alternatively the call OpticalSurfaceManager::registerSurfaces(DetElement subdetector) may be issued to attach then to the subdetector DetElement.
Definition at line 42 of file OpticalSurfaces.h.
typedef Object::ESurfaceFinish dd4hep::OpticalSurface::EFinish |
Definition at line 49 of file OpticalSurfaces.h.
typedef Object::ESurfaceModel dd4hep::OpticalSurface::EModel |
Definition at line 48 of file OpticalSurfaces.h.
typedef Object::ESurfaceType dd4hep::OpticalSurface::EType |
Definition at line 50 of file OpticalSurfaces.h.
typedef Object dd4hep::OpticalSurface::Finish |
Definition at line 45 of file OpticalSurfaces.h.
typedef Object dd4hep::OpticalSurface::Model |
Definition at line 46 of file OpticalSurfaces.h.
typedef TGeoOpticalSurface dd4hep::OpticalSurface::Object |
Definition at line 44 of file OpticalSurfaces.h.
typedef const TGDMLMatrix* dd4hep::OpticalSurface::Property |
Definition at line 51 of file OpticalSurfaces.h.
typedef Object dd4hep::OpticalSurface::Type |
Definition at line 47 of file OpticalSurfaces.h.
|
default |
Default constructor.
|
default |
Copy constructor.
|
inline |
Constructor taking object pointer.
Definition at line 59 of file OpticalSurfaces.h.
Constructor from same-type handle.
Definition at line 61 of file OpticalSurfaces.h.
|
inline |
Constructor from arbitrary handle.
Definition at line 64 of file OpticalSurfaces.h.
OpticalSurface::OpticalSurface | ( | Detector & | detector, |
const std::string & | name, | ||
EModel | model = Model::kMglisur , |
||
EFinish | finish = Finish::kFpolished , |
||
EType | type = Type::kTdielectric_dielectric , |
||
double | value = 1.0 |
||
) |
Initializing constructor.
Definition at line 34 of file OpticalSurfaces.cpp.
|
inlinestatic |
Definition at line 99 of file OpticalSurfaces.h.
|
inlinestatic |
Definition at line 93 of file OpticalSurfaces.h.
|
default |
Assignment operator.
OpticalSurface::Property OpticalSurface::property | ( | const char * | name | ) | const |
Access to tabular properties of the surface.
Definition at line 46 of file OpticalSurfaces.cpp.
OpticalSurface::Property OpticalSurface::property | ( | const std::string & | name | ) | const |
Access to tabular properties of the surface.
Definition at line 51 of file OpticalSurfaces.cpp.
|
inlinestatic |
Definition at line 96 of file OpticalSurfaces.h.
|
inlinestatic |
Definition at line 90 of file OpticalSurfaces.h.
|
inlinestatic |
Convenience function forwarding to TGeoOpticalSurface.
Definition at line 83 of file OpticalSurfaces.h.
|
inlinestatic |
Convenience function forwarding to TGeoOpticalSurface.
Definition at line 87 of file OpticalSurfaces.h.