![]() |
![]() |
#include "FWCore/PluginManager/interface/PluginManager.h"
#include "SimG4Core/GeometryProducer/interface/GeometryProducer.h"
#include "FWCore/Framework/interface/ESHandle.h"
#include "FWCore/ServiceRegistry/interface/Service.h"
#include "SimG4Core/Watcher/interface/SimProducer.h"
#include "SimG4Core/Watcher/interface/SimWatcherFactory.h"
#include "SimG4Core/Geometry/interface/DDDWorld.h"
#include "SimG4Core/Geometry/interface/G4LogicalVolumeToDDLogicalPartMap.h"
#include "SimG4Core/Geometry/interface/SensitiveDetectorCatalog.h"
#include "SimG4Core/MagneticField/interface/FieldBuilder.h"
#include "SimG4Core/MagneticField/interface/Field.h"
#include "SimG4Core/Notification/interface/SimG4Exception.h"
#include "SimG4Core/Application/interface/SimTrackManager.h"
#include "MagneticField/Engine/interface/MagneticField.h"
#include "MagneticField/Records/interface/IdealMagneticFieldRecord.h"
#include "Geometry/Records/interface/IdealGeometryRecord.h"
#include "DetectorDescription/Core/interface/DDCompactView.h"
#include "G4RunManagerKernel.hh"
#include "G4TransportationManager.hh"
#include <iostream>
Go to the source code of this file.
Functions | |
static void | createWatchers (const edm::ParameterSet &iP, SimActivityRegistry &iReg, std::vector< boost::shared_ptr< SimWatcher > > &oWatchers, std::vector< boost::shared_ptr< SimProducer > > &oProds) |
DEFINE_FWK_MODULE (GeometryProducer) |
static void createWatchers | ( | const edm::ParameterSet & | iP, | |
SimActivityRegistry & | iReg, | |||
std::vector< boost::shared_ptr< SimWatcher > > & | oWatchers, | |||
std::vector< boost::shared_ptr< SimProducer > > & | oProds | |||
) | [static] |
Definition at line 31 of file GeometryProducer.cc.
References DBSPlugin::get(), edm::ParameterSet::getParameter(), and std.
00034 { 00035 using namespace std; 00036 using namespace edm; 00037 vector<ParameterSet> watchers; 00038 try { watchers = iP.getParameter<vector<ParameterSet> >("Watchers"); } 00039 catch(edm::Exception) {} 00040 00041 for(vector<ParameterSet>::iterator itWatcher = watchers.begin(); 00042 itWatcher != watchers.end(); ++itWatcher) 00043 { 00044 std::auto_ptr<SimWatcherMakerBase> 00045 maker(SimWatcherFactory::get()->create(itWatcher->getParameter<std::string> ("type"))); 00046 if(maker.get()==0) { throw SimG4Exception("Unable to find the requested Watcher"); } 00047 00048 boost::shared_ptr<SimWatcher> watcherTemp; 00049 boost::shared_ptr<SimProducer> producerTemp; 00050 maker->make(*itWatcher,iReg,watcherTemp,producerTemp); 00051 oWatchers.push_back(watcherTemp); 00052 if(producerTemp) oProds.push_back(producerTemp); 00053 } 00054 }
DEFINE_FWK_MODULE | ( | GeometryProducer | ) |