23 auto cc = setWhatProduced(
this);
35 std::unique_ptr<GlobalTrackingGeometry>
47 if(
auto tkH = tkRecord->getHandle(trackerToken_)) {
50 LogWarning(
"GeometryGlobalTrackingGeometryBuilder") <<
"No Tracker geometry is available.";
53 LogWarning(
"GeometryGlobalTrackingGeometryBuilder") <<
"No TrackerDigiGeometryRecord is available.";
57 if(
auto mtdH = mtdRecord->getHandle(mtdToken_)) {
60 LogInfo(
"GeometryGlobalTrackingGeometryBuilder") <<
"No MTD geometry is available.";
63 LogInfo(
"GeometryGlobalTrackingGeometryBuilder") <<
"No MTDDigiGeometryRecord is available.";
67 if(
auto dtH = muonRecord->getHandle(dtToken_)) {
70 LogWarning(
"GeometryGlobalTrackingGeometryBuilder") <<
"No DT geometry is available.";
73 if(
auto cscH = muonRecord->getHandle(cscToken_)) {
76 LogWarning(
"GeometryGlobalTrackingGeometryBuilder") <<
"No CSC geometry is available.";
79 if(
auto rpcH = muonRecord->getHandle(rpcToken_)) {
82 LogWarning(
"GeometryGlobalTrackingGeometryBuilder") <<
"No RPC geometry is available.";
85 if(
auto gemH = muonRecord->getHandle(gemToken_)) {
88 LogInfo(
"GeometryGlobalTrackingGeometryBuilder") <<
"No GEM geometry is available.";
91 if(
auto me0H = muonRecord->getHandle(me0Token_)) {
94 LogInfo(
"GeometryGlobalTrackingGeometryBuilder") <<
"No ME0 geometry is available.";
98 LogWarning(
"GeometryGlobalTrackingGeometryBuilder") <<
"No MuonGeometryRecord is available.";
102 return std::unique_ptr<GlobalTrackingGeometry>(builder.
build(tk, mtd, dt, csc, rpc, gem, me0));
std::optional< DepRecordT > tryToGetRecord() const
GlobalTrackingGeometryESProducer(const edm::ParameterSet &p)
Constructor.
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
GlobalTrackingGeometry * build(const TrackerGeometry *tk, const MTDGeometry *mtd, const DTGeometry *dt, const CSCGeometry *csc, const RPCGeometry *rpc, const GEMGeometry *gem, const ME0Geometry *me0)
Build the geometry.
std::unique_ptr< GlobalTrackingGeometry > produce(const GlobalTrackingGeometryRecord &record)
Produce GlobalTrackingGeometry.
~GlobalTrackingGeometryESProducer() override
Destructor.