CMS 3D CMS Logo

FakeTBEventHeaderProducer Class Reference

#include <SimG4CMS/EcalTestBeam/interface/FakeTBEventHeaderProducer.h>

Inheritance diagram for FakeTBEventHeaderProducer:

edm::EDProducer edm::ProducerBase edm::ProductRegistryHelper

List of all members.

Public Member Functions

 FakeTBEventHeaderProducer (const edm::ParameterSet &ps)
 Constructor.
void produce (edm::Event &event, const edm::EventSetup &eventSetup)
 Produce digis out of raw data.
virtual ~FakeTBEventHeaderProducer ()
 Destructor.

Private Attributes

std::string ecalTBInfoLabel_


Detailed Description

Definition at line 28 of file FakeTBEventHeaderProducer.h.


Constructor & Destructor Documentation

FakeTBEventHeaderProducer::FakeTBEventHeaderProducer ( const edm::ParameterSet ps  ) 

Constructor.

Definition at line 15 of file FakeTBEventHeaderProducer.cc.

References ecalTBInfoLabel_, and edm::ParameterSet::getUntrackedParameter().

00015                                                                               {
00016   produces<EcalTBEventHeader>();
00017   ecalTBInfoLabel_ = ps.getUntrackedParameter<string>("EcalTBInfoLabel","SimEcalTBG4Object");
00018 
00019 }

FakeTBEventHeaderProducer::~FakeTBEventHeaderProducer (  )  [virtual]

Destructor.

Definition at line 22 of file FakeTBEventHeaderProducer.cc.

00023 {
00024 }


Member Function Documentation

void FakeTBEventHeaderProducer::produce ( edm::Event event,
const edm::EventSetup eventSetup 
) [virtual]

Produce digis out of raw data.

Implements edm::EDProducer.

Definition at line 26 of file FakeTBEventHeaderProducer.cc.

References ecalTBInfoLabel_, edm::Event::id(), edm::Handle< T >::isValid(), PEcalTBInfo::nCrystal(), edm::Handle< T >::product(), EBDetId::SMCRYSTALMODE, and theEcalTBInfo.

00027 {
00028   auto_ptr<EcalTBEventHeader> product(new EcalTBEventHeader());
00029 
00030   // get the vertex information from the event
00031 
00032   const PEcalTBInfo* theEcalTBInfo=0;
00033   edm::Handle<PEcalTBInfo> EcalTBInfo;
00034   event.getByLabel(ecalTBInfoLabel_,EcalTBInfo);
00035   if (EcalTBInfo.isValid()){
00036     theEcalTBInfo = EcalTBInfo.product(); 
00037   } else {
00038     edm::LogError("FakeTBEventHeaderProducer") << "Error! can't get the product " << ecalTBInfoLabel_.c_str() ;
00039   }
00040   
00041   if (!theEcalTBInfo)
00042     return;
00043   
00044   product->setEventNumber(event.id().event());
00045   product->setRunNumber(event.id().run());
00046   product->setBurstNumber(1);
00047   product->setTriggerMask(0x1);
00048   product->setCrystalInBeam(EBDetId(1,theEcalTBInfo->nCrystal(),EBDetId::SMCRYSTALMODE));
00049   
00050 //   LogDebug("FakeTBHeader") << (*product);
00051 //   LogDebug("FakeTBHeader") << (*product).eventType();
00052 //   LogDebug("FakeTBHeader") << (*product).crystalInBeam();
00053   event.put(product);
00054   
00055 }


Member Data Documentation

std::string FakeTBEventHeaderProducer::ecalTBInfoLabel_ [private]

Definition at line 51 of file FakeTBEventHeaderProducer.h.

Referenced by FakeTBEventHeaderProducer(), and produce().


The documentation for this class was generated from the following files:
Generated on Tue Jun 9 18:20:39 2009 for CMSSW by  doxygen 1.5.4