CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
MuonNumberingInitialization.cc
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: MuonNumberingInitialization
4 // Class: MuonNumberingInitialization
5 //
13 //
14 // Original Author: Michael Case
15 // Created: Thu Sep 28 16:40:29 PDT 2006
16 //
17 //
18 
19 #include <memory>
20 #include <boost/shared_ptr.hpp>
21 
26 
32 
34 {
35 public:
36 
39 
40  typedef std::auto_ptr<MuonDDDConstants> ReturnType;
41 
43 
45 
46 private:
47 
50 };
51 
53  : muonDDDConst_( 0 )
54 {
56 }
57 
59 {}
60 
63 {
64  if ( muonDDDConst_ == 0 )
65  {
66  edm::LogError( "MuonNumberingInitialization" ) << "MuonNumberingInitialization::produceMuonDDDConstants has NOT been initialized!";
67  throw;
68  }
69  return std::auto_ptr<MuonDDDConstants> ( muonDDDConst_ ) ;
70 }
71 
72 void
74 {
76  igr.get( label_, pDD );
77 
78  if( muonDDDConst_ != 0 ) {
79  delete muonDDDConst_;
80  }
81 
82  muonDDDConst_ = new MuonDDDConstants( *pDD );
83 }
84 
depends_on::OneHolder< T, TDependsOnRecord > dependsOn(void(T::*iT)(const TDependsOnRecord &))
MuonNumberingInitialization(const edm::ParameterSet &)
void setWhatProduced(T *iThis, const es::Label &iLabel=es::Label())
Definition: ESProducer.h:115
std::auto_ptr< MuonDDDConstants > ReturnType
void get(HolderT &iHolder) const
void initializeMuonDDDConstants(const IdealGeometryRecord &igr)
#define DEFINE_FWK_EVENTSETUP_MODULE(type)
Definition: ModuleFactory.h:60
ReturnType produce(const MuonNumberingRecord &)