CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Member Functions | Private Member Functions
MuonAlignmentInputMethod Class Reference

#include <Alignment/MuonAlignment/interface/MuonAlignmentInputMethod.h>

Inheritance diagram for MuonAlignmentInputMethod:
MuonAlignmentInputDB MuonAlignmentInputSurveyDB MuonAlignmentInputXML

Public Member Functions

 MuonAlignmentInputMethod ()
 
virtual AlignableMuonnewAlignableMuon (const edm::EventSetup &iSetup) const
 
virtual ~MuonAlignmentInputMethod ()
 

Protected Member Functions

std::shared_ptr< CSCGeometryidealCSCGeometry (const edm::EventSetup &iSetup) const
 
std::shared_ptr< DTGeometryidealDTGeometry (const edm::EventSetup &iSetup) const
 

Private Member Functions

 MuonAlignmentInputMethod (const MuonAlignmentInputMethod &)
 
const MuonAlignmentInputMethodoperator= (const MuonAlignmentInputMethod &)
 

Detailed Description

Description: <one line="" class="" summary>="">

Usage: <usage>

Definition at line 34 of file MuonAlignmentInputMethod.h.

Constructor & Destructor Documentation

MuonAlignmentInputMethod::MuonAlignmentInputMethod ( )

Definition at line 37 of file MuonAlignmentInputMethod.cc.

37 {}
MuonAlignmentInputMethod::~MuonAlignmentInputMethod ( )
virtual

Definition at line 44 of file MuonAlignmentInputMethod.cc.

44 {}
MuonAlignmentInputMethod::MuonAlignmentInputMethod ( const MuonAlignmentInputMethod )
private

Member Function Documentation

std::shared_ptr< CSCGeometry > MuonAlignmentInputMethod::idealCSCGeometry ( const edm::EventSetup iSetup) const
protected

Definition at line 83 of file MuonAlignmentInputMethod.cc.

References CSCGeometryBuilderFromDDD::build(), and edm::EventSetup::get().

Referenced by MuonAlignmentInputDB::newAlignableMuon(), MuonAlignmentInputSurveyDB::newAlignableMuon(), MuonAlignmentInputXML::newAlignableMuon(), and newAlignableMuon().

83  {
85  iSetup.get<IdealGeometryRecord>().get(cpv);
86 
88  iSetup.get<MuonNumberingRecord>().get(mdc);
90 
91  auto boost_cscGeometry = std::make_shared<CSCGeometry>();
92  CSCGeometryBuilder.build(boost_cscGeometry, &(*cpv), *mdc);
93 
94  return boost_cscGeometry;
95 }
const T & get() const
Definition: EventSetup.h:55
void build(std::shared_ptr< CSCGeometry > geom, const DDCompactView *fv, const MuonDDDConstants &muonConstants)
Build the geometry.
std::shared_ptr< DTGeometry > MuonAlignmentInputMethod::idealDTGeometry ( const edm::EventSetup iSetup) const
protected

Definition at line 69 of file MuonAlignmentInputMethod.cc.

References DTGeometryBuilderFromDDD::build(), and edm::EventSetup::get().

Referenced by MuonAlignmentInputDB::newAlignableMuon(), MuonAlignmentInputSurveyDB::newAlignableMuon(), MuonAlignmentInputXML::newAlignableMuon(), and newAlignableMuon().

69  {
71  iSetup.get<IdealGeometryRecord>().get(cpv);
72 
74  iSetup.get<MuonNumberingRecord>().get(mdc);
75  DTGeometryBuilderFromDDD DTGeometryBuilder;
76 
77  auto boost_dtGeometry = std::make_shared<DTGeometry>();
78  DTGeometryBuilder.build(boost_dtGeometry, &(*cpv), *mdc);
79 
80  return boost_dtGeometry;
81 }
const T & get() const
Definition: EventSetup.h:55
void build(std::shared_ptr< DTGeometry > theGeometry, const DDCompactView *cview, const MuonDDDConstants &muonConstants)
AlignableMuon * MuonAlignmentInputMethod::newAlignableMuon ( const edm::EventSetup iSetup) const
virtual

Reimplemented in MuonAlignmentInputXML, MuonAlignmentInputSurveyDB, and MuonAlignmentInputDB.

Definition at line 62 of file MuonAlignmentInputMethod.cc.

References align::AlignableMuon, idealCSCGeometry(), and idealDTGeometry().

Referenced by MuonAlignment::MuonAlignment().

62  {
63  std::shared_ptr<DTGeometry> dtGeometry = idealDTGeometry(iSetup);
64  std::shared_ptr<CSCGeometry> cscGeometry = idealCSCGeometry(iSetup);
65 
66  return new AlignableMuon(&(*dtGeometry), &(*cscGeometry));
67 }
std::shared_ptr< DTGeometry > idealDTGeometry(const edm::EventSetup &iSetup) const
std::shared_ptr< CSCGeometry > idealCSCGeometry(const edm::EventSetup &iSetup) const
const MuonAlignmentInputMethod& MuonAlignmentInputMethod::operator= ( const MuonAlignmentInputMethod )
private