00001 // -*- C++ -*- 00002 // 00003 // Package: ZdcHardcodeGeometryEP 00004 // Class: ZdcHardcodeGeometryEP 00005 // 00013 // 00014 // Original Author: Edmundo Garcia 00015 // Created: Mon Aug 6 12:33:33 CDT 2007 00016 // $Id: ZdcHardcodeGeometryEP.cc,v 1.3 2008/05/19 20:12:41 heltsley Exp $ 00017 // 00018 #include "Geometry/ForwardGeometry/plugins/ZdcHardcodeGeometryEP.h" 00019 #include "FWCore/MessageLogger/interface/MessageLogger.h" 00020 00021 00022 ZdcHardcodeGeometryEP::ZdcHardcodeGeometryEP( const edm::ParameterSet& ps ) : 00023 m_loader (0), 00024 m_topology () , 00025 m_applyAlignment ( ps.getUntrackedParameter<bool>("applyAlignment", false) ) 00026 { 00027 //the following line is needed to tell the framework what 00028 // data is being produced 00029 setWhatProduced( this, 00030 &ZdcHardcodeGeometryEP::produceAligned, 00031 dependsOn( &ZdcHardcodeGeometryEP::idealRecordCallBack ), 00032 "ZDC"); 00033 00034 // disable 00035 // setWhatProduced( this, 00036 // &ZdcHardcodeGeometryEP::produceIdeal, 00037 // edm::es::Label( "ZDC" ) ); 00038 } 00039 00040 00041 ZdcHardcodeGeometryEP::~ZdcHardcodeGeometryEP() 00042 { 00043 delete m_loader ; 00044 } 00045 00046 00047 // 00048 // member functions 00049 // 00050 00051 // ------------ method called to produce the data ------------ 00052 00053 void 00054 ZdcHardcodeGeometryEP::idealRecordCallBack( const IdealGeometryRecord& iRecord ) 00055 { 00056 } 00057 00058 ZdcHardcodeGeometryEP::ReturnType 00059 ZdcHardcodeGeometryEP::produceIdeal( const IdealGeometryRecord& iRecord ) 00060 { 00061 assert( !m_applyAlignment ) ; 00062 00063 ZdcHardcodeGeometryLoader loader ( m_topology ) ; 00064 00065 ReturnType ptr ( loader.load() ) ; 00066 return ptr ; 00067 } 00068 00069 ZdcHardcodeGeometryEP::ReturnType 00070 ZdcHardcodeGeometryEP::produceAligned( const ZDCGeometryRecord& iRecord ) 00071 { 00072 // ZdcHardcodeGeometryLoader loader ( m_topology ) ; 00073 m_loader = new ZdcHardcodeGeometryLoader( m_topology ) ; 00074 00075 ReturnType ptr ( m_loader->load() ) ; 00076 00077 return ptr ; 00078 } 00079 00080