rivet is hosted by Hepforge, IPPP Durham
RivetPaths.hh
Go to the documentation of this file.
00001 // -*- C++ -*-
00002 #ifndef RIVET_RivetPaths_HH
00003 #define RIVET_RivetPaths_HH
00004 
00005 namespace Rivet {
00006 
00007 
00008   /// @name Installation directory paths
00009   //@{
00010 
00011   /// Get library install path
00012   std::string getLibPath();
00013 
00014   /// Get data install path
00015   std::string getDataPath();
00016 
00017   /// Get Rivet data install path
00018   std::string getRivetDataPath();
00019 
00020   //@}
00021 
00022 
00023   /// @name Analysis library search paths
00024   //@{
00025 
00026   /// Get Rivet analysis plugin library search paths
00027   std::vector<std::string> getAnalysisLibPaths();
00028 
00029   /// Set the Rivet analysis plugin library search paths
00030   void setAnalysisLibPaths(const std::vector<std::string>& paths);
00031 
00032   /// Set the Rivet analysis plugin library search paths
00033   void addAnalysisLibPath(const std::string& extrapath);
00034 
00035   /// @brief Find the first file of the given name in the analysis library search dirs
00036   /// @note If none found, returns an empty string
00037   std::string findAnalysisLibFile(const std::string& filename);
00038 
00039   //@}
00040 
00041 
00042   /// @name Analysis data/metadata paths and search functions
00043   //@{
00044 
00045   /// Get Rivet analysis reference data search paths
00046   std::vector<std::string> getAnalysisRefPaths();
00047 
00048   /// @brief Find the first file of the given name in the ref data file search dirs
00049   /// @note If none found, returns an empty string
00050   std::string findAnalysisRefFile(const std::string& filename,
00051                                   const std::vector<std::string>& pathprepend=std::vector<std::string>(),
00052                                   const std::vector<std::string>& pathappend=std::vector<std::string>());
00053 
00054   /// Get Rivet analysis info metadata search paths
00055   std::vector<std::string> getAnalysisInfoPaths();
00056 
00057   /// @brief Find the first file of the given name in the analysis info file search dirs
00058   /// @note If none found, returns an empty string
00059   std::string findAnalysisInfoFile(const std::string& filename,
00060                                    const std::vector<std::string>& pathprepend=std::vector<std::string>(),
00061                                    const std::vector<std::string>& pathappend=std::vector<std::string>());
00062 
00063   /// Get Rivet analysis plot style search paths
00064   std::vector<std::string> getAnalysisPlotPaths();
00065 
00066   /// @brief Find the first file of the given name in the analysis plot file search dirs
00067   /// @note If none found, returns an empty string
00068   std::string findAnalysisPlotFile(const std::string& filename,
00069                                    const std::vector<std::string>& pathprepend=std::vector<std::string>(),
00070                                    const std::vector<std::string>& pathappend=std::vector<std::string>());
00071 
00072   //@}
00073 
00074 
00075 }
00076 
00077 #endif