CMS 3D CMS Logo

CMSSW_4_4_3_patch1/src/FWCore/Framework/interface/InputSourceDescription.h

Go to the documentation of this file.
00001 #ifndef FWCore_Framework_InputSourceDescription_h
00002 #define FWCore_Framework_InputSourceDescription_h
00003 
00004 /*----------------------------------------------------------------------
00005 
00006 InputSourceDescription : the stuff that is needed to configure an
00007 input source that does not come in through the ParameterSet  
00008 ----------------------------------------------------------------------*/
00009 #include "boost/shared_ptr.hpp"
00010 #include "DataFormats/Provenance/interface/ModuleDescription.h"
00011 
00012 namespace edm {
00013   class PrincipalCache;
00014   class ProductRegistry;
00015   class ActivityRegistry;
00016 
00017   struct InputSourceDescription {
00018     InputSourceDescription() :
00019       moduleDescription_(),
00020       productRegistry_(0),
00021       principalCache_(0),
00022       actReg_(), maxEvents_(-1),
00023       maxLumis_(-1) {}
00024     InputSourceDescription(ModuleDescription const& md,
00025                            ProductRegistry& preg,
00026                            PrincipalCache& pCache,
00027                            boost::shared_ptr<ActivityRegistry> areg,
00028                            int maxEvents,
00029                            int maxLumis) :
00030       moduleDescription_(md),
00031       productRegistry_(&preg),
00032       principalCache_(&pCache),
00033       actReg_(areg),
00034       maxEvents_(maxEvents),
00035       maxLumis_(maxLumis)
00036          
00037     {}
00038 
00039     ModuleDescription moduleDescription_;
00040     ProductRegistry* productRegistry_;
00041     PrincipalCache* principalCache_;
00042     boost::shared_ptr<ActivityRegistry> actReg_;
00043     int maxEvents_;
00044     int maxLumis_;
00045   };
00046 }
00047 
00048 #endif