CMS 3D CMS Logo

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

List of all members.

Public Member Functions

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

Protected Member Functions

boost::shared_ptr< CSCGeometryidealCSCGeometry (const edm::EventSetup &iSetup) const
boost::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 35 of file MuonAlignmentInputMethod.cc.

{}
MuonAlignmentInputMethod::~MuonAlignmentInputMethod ( ) [virtual]

Definition at line 42 of file MuonAlignmentInputMethod.cc.

{}
MuonAlignmentInputMethod::MuonAlignmentInputMethod ( const MuonAlignmentInputMethod ) [private]

Member Function Documentation

boost::shared_ptr< CSCGeometry > MuonAlignmentInputMethod::idealCSCGeometry ( const edm::EventSetup iSetup) const [protected]

Definition at line 81 of file MuonAlignmentInputMethod.cc.

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

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

                                                                                                         {
   edm::ESTransientHandle<DDCompactView> cpv;
   iSetup.get<IdealGeometryRecord>().get(cpv);

   edm::ESHandle<MuonDDDConstants> mdc;
   iSetup.get<MuonNumberingRecord>().get(mdc);
   CSCGeometryBuilderFromDDD CSCGeometryBuilder;

   boost::shared_ptr<CSCGeometry> boost_cscGeometry(new CSCGeometry);
   CSCGeometryBuilder.build(boost_cscGeometry, &(*cpv), *mdc);

   return boost_cscGeometry;
}
boost::shared_ptr< DTGeometry > MuonAlignmentInputMethod::idealDTGeometry ( const edm::EventSetup iSetup) const [protected]

Definition at line 67 of file MuonAlignmentInputMethod.cc.

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

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

                                                                                                       {
   edm::ESTransientHandle<DDCompactView> cpv;
   iSetup.get<IdealGeometryRecord>().get(cpv);

   edm::ESHandle<MuonDDDConstants> mdc;
   iSetup.get<MuonNumberingRecord>().get(mdc);
   DTGeometryBuilderFromDDD DTGeometryBuilder;

   boost::shared_ptr<DTGeometry> boost_dtGeometry(new DTGeometry );
   DTGeometryBuilder.build(boost_dtGeometry, &(*cpv), *mdc);

   return boost_dtGeometry;
}
AlignableMuon * MuonAlignmentInputMethod::newAlignableMuon ( const edm::EventSetup iSetup) const [virtual]

Reimplemented in MuonAlignmentInputDB, MuonAlignmentInputSurveyDB, and MuonAlignmentInputXML.

Definition at line 60 of file MuonAlignmentInputMethod.cc.

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

Referenced by MuonAlignment::MuonAlignment().

                                                                                           {
   boost::shared_ptr<DTGeometry> dtGeometry = idealDTGeometry(iSetup);
   boost::shared_ptr<CSCGeometry> cscGeometry = idealCSCGeometry(iSetup);

   return new AlignableMuon(&(*dtGeometry), &(*cscGeometry));
}
const MuonAlignmentInputMethod& MuonAlignmentInputMethod::operator= ( const MuonAlignmentInputMethod ) [private]