CMS 3D CMS Logo

IncludeFileFinder.h

Go to the documentation of this file.
00001 #ifndef ParameterSet_IncludeFileFinder_h
00002 #define ParameterSet_IncludeFileFinder_h
00003 
00008 #include <string>
00009 #include <map>
00010 #include "FWCore/PluginManager/interface/PluginManager.h"
00011 #include "FWCore/ParameterSet/interface/FileInPath.h"
00012 
00013 namespace edm {
00014   namespace pset {
00015 
00016     class IncludeFileFinder
00017     {
00018     public:
00019       IncludeFileFinder();
00020 
00023       FileInPath find(const std::string & moduleClass, 
00024                       const std::string & moduleLabel);
00025 
00027       std::string libraryOf(const std::string & moduleClass);
00028 
00030       static std::string stripHeader(const std::string & libraryName);
00032       static std::string stripTrailer(const std::string & libraryName);
00033 
00035       typedef std::vector<std::pair<std::string, std::string> > DomainPackagePair;
00036       static DomainPackagePair
00037         twoWordsFrom(const std::string & libraryName);
00038 
00039 
00040     private:
00041 
00042         edmplugin::PluginManager * thePluginManager;
00043       // maps each module to its library
00044       std::map<std::string, std::string> theLibraryMap;
00045     };
00046 
00047   }
00048 }
00049 
00050 #endif
00051 

Generated on Tue Jun 9 17:36:23 2009 for CMSSW by  doxygen 1.5.4