ATLAS Offline Software
|
#include <DetDescrDBEnvelopeSvc.h>
Public Member Functions | |
DetDescrDBEnvelopeSvc (const std::string &name, ISvcLocator *svc) | |
public AthService constructor More... | |
~DetDescrDBEnvelopeSvc () | |
Destructor. More... | |
StatusCode | initialize () |
AthService initialize method. More... | |
StatusCode | finalize () |
AthService finalize method. More... | |
const RZPairVector & | getRZBoundary (AtlasDetDescr::AtlasRegion region) const |
return a vector of (r,z) pairs, defining the respective envelope More... | |
const RZPairVector & | getRPositiveZBoundary (AtlasDetDescr::AtlasRegion region) const |
return a vector of (r,z) pairs, defining the envelope on the z>0 region More... | |
Private Member Functions | |
StatusCode | retrieveRZBoundaryOptionalFallback (std::string &dbNode, FallbackDoubleVector &r, FallbackDoubleVector &z, RZPairVector &rzVec) |
retrieve and store the (r,z) values locally for the given DB node. More... | |
StatusCode | retrieveRZBoundary (std::string &node, RZPairVector &rzVec) |
retrieve and store the (r,z) values locally for the given DB node More... | |
StatusCode | fallbackRZBoundary (FallbackDoubleVector &r, FallbackDoubleVector &z, RZPairVector &rzVec) |
use the fallback approach (python arguments) to set the (r,z) values More... | |
bool | enableFallback () |
enable fallback solution: More... | |
Private Attributes | |
ServiceHandle< IRDBAccessSvc > | m_dbAccess {this, "RDBAccessSvc", "RDBAccessSvc"} |
the DetectorDescription database access method More... | |
ServiceHandle< IGeoModelSvc > | m_geoModelSvc {this, "GeoModelSvc", "GeoModelSvc"} |
ATLAS GeoModel. More... | |
std::string | m_atlasNode |
main DDDB node for the ATLAS detector More... | |
std::string | m_atlasVersionTag |
std::string | m_node [AtlasDetDescr::fNumAtlasRegions] |
the names of the DB nodes for the respective AtlasRegion More... | |
RZPairVector | m_rz [AtlasDetDescr::fNumAtlasRegions] |
internal (r,z) representation, one RZPairVector for each AtlasRegion More... | |
RZPairVector | m_rposz [AtlasDetDescr::fNumAtlasRegions] |
internal (r,z) representation for the positive z-side only, one RZPairVector for each AtlasRegion More... | |
bool | m_allowFallback |
fallback solution, in case something goes wrong with the DB More... | |
bool | m_doFallback |
FallbackDoubleVector | m_fallbackR [AtlasDetDescr::fNumAtlasRegions] |
FallbackDoubleVector | m_fallbackZ [AtlasDetDescr::fNumAtlasRegions] |
Definition at line 33 of file DetDescrDBEnvelopeSvc.h.
DetDescrDBEnvelopeSvc::DetDescrDBEnvelopeSvc | ( | const std::string & | name, |
ISvcLocator * | svc | ||
) |
DetDescrDBEnvelopeSvc::~DetDescrDBEnvelopeSvc | ( | ) |
Destructor.
Definition at line 65 of file DetDescrDBEnvelopeSvc.cxx.
|
private |
enable fallback solution:
enable fallback solution (if allowed)
Definition at line 73 of file DetDescrDBEnvelopeSvc.cxx.
|
private |
use the fallback approach (python arguments) to set the (r,z) values
retrieve and store the (r,z) values locally for the given DB node
Definition at line 269 of file DetDescrDBEnvelopeSvc.cxx.
StatusCode DetDescrDBEnvelopeSvc::finalize | ( | ) |
AthService finalize method.
Athena AthService finalize hook.
Definition at line 173 of file DetDescrDBEnvelopeSvc.cxx.
|
inline |
return a vector of (r,z) pairs, defining the envelope on the z>0 region
Definition at line 52 of file DetDescrDBEnvelopeSvc.h.
|
inline |
return a vector of (r,z) pairs, defining the respective envelope
Definition at line 48 of file DetDescrDBEnvelopeSvc.h.
StatusCode DetDescrDBEnvelopeSvc::initialize | ( | ) |
AthService initialize method.
Athena AthService initialize hook.
Definition at line 91 of file DetDescrDBEnvelopeSvc.cxx.
|
private |
retrieve and store the (r,z) values locally for the given DB node
@TODO: implement positioning, see: http://alxr.usatlas.bnl.gov/lxr/source/atlas/AtlasGeometryCommon/BeamPipeGeoModel/src/BeamPipeDetectorFactory.cxx?v=head#054 const IRDBRecordset *DBPosition = m_dbAccess->getRecordset( m_dbPositionNode, m_atlasVersionTag, m_atlasNode );
Definition at line 211 of file DetDescrDBEnvelopeSvc.cxx.
|
private |
retrieve and store the (r,z) values locally for the given DB node.
if there are problems with retrieving this from DDDB, try the fallback approach if allowed
Definition at line 181 of file DetDescrDBEnvelopeSvc.cxx.
|
private |
fallback solution, in case something goes wrong with the DB
Python flag
Definition at line 96 of file DetDescrDBEnvelopeSvc.h.
|
private |
main DDDB node for the ATLAS detector
Definition at line 83 of file DetDescrDBEnvelopeSvc.h.
|
private |
Definition at line 84 of file DetDescrDBEnvelopeSvc.h.
|
private |
the DetectorDescription database access method
Definition at line 77 of file DetDescrDBEnvelopeSvc.h.
|
private |
Definition at line 97 of file DetDescrDBEnvelopeSvc.h.
|
private |
Definition at line 98 of file DetDescrDBEnvelopeSvc.h.
|
private |
Definition at line 99 of file DetDescrDBEnvelopeSvc.h.
|
private |
ATLAS GeoModel.
Definition at line 80 of file DetDescrDBEnvelopeSvc.h.
|
private |
the names of the DB nodes for the respective AtlasRegion
Definition at line 87 of file DetDescrDBEnvelopeSvc.h.
|
private |
internal (r,z) representation for the positive z-side only, one RZPairVector for each AtlasRegion
Definition at line 93 of file DetDescrDBEnvelopeSvc.h.
|
private |
internal (r,z) representation, one RZPairVector for each AtlasRegion
Definition at line 90 of file DetDescrDBEnvelopeSvc.h.