CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10_patch2/src/FWCore/Python/src/PythonService.h

Go to the documentation of this file.
00001 #ifndef FWCore_ParameterSet_PythonService_h
00002 #define FWCore_ParameterSet_PythonService_h
00003 // -*- C++ -*-
00004 //
00005 // Package:     Python
00006 // Class  :     PythonService
00007 // 
00016 //
00017 // Original Author:  Benedikt Hegner
00018 //         Created:  Sun Jul 23 11:31:33 CEST 2006
00019 //
00020 
00021 #include "FWCore/PythonParameterSet/interface/BoostPython.h"
00022 #include "FWCore/ServiceRegistry/interface/ActivityRegistry.h"
00023 
00024 // subpackage specific includes
00025 #include "FWCore/Python/src/EventWrapper.h"
00026 #include "FWCore/Python/src/PythonManager.h"
00027 
00028 namespace edm {
00029    class ConfigurationDescriptions;
00030 }
00031 
00032 class PythonService {
00033     public:
00034         PythonService(const edm::ParameterSet&,edm::ActivityRegistry&);
00035         ~PythonService();
00036         void postBeginJob();
00037         void postEndJob();
00038         void preProcessEvent(const edm::EventID&, const edm::Timestamp&);
00039         void postProcessEvent(const edm::Event&, const edm::EventSetup&);
00040 
00041         static void fillDescriptions(edm::ConfigurationDescriptions & descriptions);
00042 
00043         private:
00044             PythonManagerHandle handle_;
00045                 boost::python::object service_;
00046                 std::string fileName_;
00047                 std::string command_;
00048                 
00049 
00050 };
00051 
00052 #endif // FWCore_ParameterSet_PythonService_h