CMS 3D CMS Logo

Public Types | Public Member Functions | Private Attributes

HcalDDDGeometryEP Class Reference

#include <tmp/HcalDDDGeometryEP/interface/HcalDDDGeometryEP.h>

Inheritance diagram for HcalDDDGeometryEP:
edm::ESProducer edm::ESProxyFactoryProducer edm::eventsetup::DataProxyProvider

List of all members.

Public Types

typedef boost::shared_ptr
< CaloSubdetectorGeometry
ReturnType

Public Member Functions

 HcalDDDGeometryEP (const edm::ParameterSet &)
void idealRecordCallBack (const IdealGeometryRecord &)
ReturnType produceAligned (const HcalGeometryRecord &)
ReturnType produceIdeal (const IdealGeometryRecord &)
 ~HcalDDDGeometryEP ()

Private Attributes

bool m_applyAlignment
const DDCompactViewm_cpv
HcalDDDGeometryLoaderm_loader

Detailed Description

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

Implementation: <Notes on="" implementation>="">

Definition at line 23 of file HcalDDDGeometryEP.h.


Member Typedef Documentation

Definition at line 30 of file HcalDDDGeometryEP.h.


Constructor & Destructor Documentation

HcalDDDGeometryEP::HcalDDDGeometryEP ( const edm::ParameterSet ps)

Definition at line 36 of file HcalDDDGeometryEP.cc.

References edm::eventsetup::dependsOn(), idealRecordCallBack(), produceAligned(), and edm::ESProducer::setWhatProduced().

                                                               :
   m_loader ( 0 ) ,
   m_cpv    ( 0 ) ,
   m_applyAlignment( ps.getUntrackedParameter<bool>("applyAlignment", false) ){

   //the following line is needed to tell the framework what
   // data is being produced
   setWhatProduced( this,
                    &HcalDDDGeometryEP::produceAligned,
                    dependsOn( &HcalDDDGeometryEP::idealRecordCallBack ),
                    "HCAL");

// diable
//   setWhatProduced( this,
//                  &HcalDDDGeometryEP::produceIdeal,
//                  edm::es::Label( "HCAL" ) );
}
HcalDDDGeometryEP::~HcalDDDGeometryEP ( )

Definition at line 55 of file HcalDDDGeometryEP.cc.

References m_loader.

                                      { 
   delete m_loader ;
}

Member Function Documentation

void HcalDDDGeometryEP::idealRecordCallBack ( const IdealGeometryRecord iRecord)

Definition at line 94 of file HcalDDDGeometryEP.cc.

References edm::eventsetup::EventSetupRecord::get(), and m_cpv.

Referenced by HcalDDDGeometryEP(), and produceIdeal().

                                                                           {
   edm::ESTransientHandle<DDCompactView> pDD;
   iRecord.get( pDD );
   m_cpv = &(*pDD) ;
}
HcalDDDGeometryEP::ReturnType HcalDDDGeometryEP::produceAligned ( const HcalGeometryRecord iRecord)

Definition at line 80 of file HcalDDDGeometryEP.cc.

References HcalDDDGeometryLoader::load(), LogDebug, m_cpv, and m_loader.

Referenced by HcalDDDGeometryEP().

                                                                   {
   //now do what ever other initialization is needed
   assert( 0 != m_cpv ) ;
   if( 0 == m_loader ) m_loader = new HcalDDDGeometryLoader(*m_cpv); 
#ifdef DebugLog
   LogDebug("HCalGeom")<<"HcalDDDGeometryEP:Initialize HcalDDDGeometryLoader";
#endif

   ReturnType pC ( m_loader->load() ) ;

   return pC ;
}
HcalDDDGeometryEP::ReturnType HcalDDDGeometryEP::produceIdeal ( const IdealGeometryRecord iRecord)

Definition at line 66 of file HcalDDDGeometryEP.cc.

References idealRecordCallBack(), HcalDDDGeometryLoader::load(), LogDebug, m_cpv, and m_loader.

                                                                  {
   idealRecordCallBack( iRecord ) ;

   assert( 0 == m_loader ) ;
   m_loader = new HcalDDDGeometryLoader(*m_cpv); 
#ifdef DebugLog
   LogDebug("HCalGeom")<<"HcalDDDGeometryEP:Initialize HcalDDDGeometryLoader";
#endif
   ReturnType pC ( m_loader->load() ) ;

   return pC ;
}

Member Data Documentation

Definition at line 45 of file HcalDDDGeometryEP.h.

Definition at line 43 of file HcalDDDGeometryEP.h.

Referenced by idealRecordCallBack(), produceAligned(), and produceIdeal().

Definition at line 41 of file HcalDDDGeometryEP.h.

Referenced by produceAligned(), produceIdeal(), and ~HcalDDDGeometryEP().