CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_7/src/FWCore/Framework/interface/ScheduleInfo.h

Go to the documentation of this file.
00001 #ifndef FWCore_Framework_ScheduleInfo_h
00002 #define FWCore_Framework_ScheduleInfo_h
00003 // -*- C++ -*-
00004 //
00005 // Package:     Framework
00006 // Class  :     ScheduleInfo
00007 // 
00016 //
00017 // Original Author:  Chris Jones
00018 //         Created:  Thu Jul 15 19:39:56 CEST 2010
00019 // $Id: ScheduleInfo.h,v 1.1 2010/07/22 15:00:27 chrjones Exp $
00020 //
00021 
00022 // system include files
00023 #include <vector>
00024 #include <string>
00025 
00026 // user include files
00027 
00028 // forward declarations
00029 namespace edm {
00030    class ParameterSet;
00031    class Schedule;
00032    
00033    class ScheduleInfo {
00034       
00035    public:
00036       ScheduleInfo(const Schedule*);
00037       virtual ~ScheduleInfo();
00038       
00039       // ---------- const member functions ---------------------
00040       
00042       void availableModuleLabels(std::vector<std::string>& oLabelsToFill) const;
00043       
00047       const edm::ParameterSet* parametersForModule(const std::string& iLabel) const;
00048       
00050       void availablePaths( std::vector<std::string>& oLabelsToFill) const;
00051       
00053       void modulesInPath(const std::string& iPathLabel,
00054                          std::vector<std::string>& oLabelsToFill) const;
00055       // ---------- static member functions --------------------      
00056       
00057       // ---------- member functions ---------------------------
00058       
00059    private:
00060       //ScheduleInfo(const ScheduleInfo&); // stop default
00061       
00062       //const ScheduleInfo& operator=(const ScheduleInfo&); // stop default
00063       
00064       // ---------- member data --------------------------------
00065       const Schedule* schedule_;
00066       
00067    };
00068 
00069 }
00070 
00071 #endif