16#ifndef dealii_path_search_h
17#define dealii_path_search_h
124 find(
const std::string &filename,
const char *open_mode =
"r");
145 find(
const std::string &filename,
146 const std::string &suffix,
147 const char * open_mode =
"r");
152 template <
class StreamType>
154 show(StreamType &stream)
const;
182 <<
"The class " << arg1
183 <<
" must be registered before referring it in PathSearch.");
192 <<
"The file \"" << arg1 <<
"\" was not found in the path for "
193 <<
"files of class " << arg2 <<
".");
199 using map_type = std::map<std::string, std::vector<std::string>>::value_type;
211 static std::vector<std::string> &
218 static std::vector<std::string> &
229 static std::map<std::string, std::vector<std::string>>
path_lists;
261template <
class StreamType>
265 out <<
"DEAL_II_" <<
cls <<
"PATH=\"";
274 out <<
'"' << std::endl <<
" Suffixes";
276 out <<
" \"" << s <<
'"';
std::string find(const std::string &filename, const char *open_mode="r")
static std::vector< std::string > & get_path_list(const std::string &cls)
void show(StreamType &stream) const
static std::vector< std::string > & get_suffix_list(const std::string &cls)
static std::map< std::string, std::vector< std::string > > path_lists
void add_path(const std::string &path, Position pos=back)
std::vector< std::string > & my_suffix_list
static std::map< std::string, std::vector< std::string > > suffix_lists
static void add_class(const std::string &cls)
std::vector< std::string > & my_path_list
@ back
Add new item at end of list.
@ after_none
Add in path list after empty element.
@ front
Add new item at front of list.
void add_suffix(const std::string &suffix, Position pos=back)
std::map< std::string, std::vector< std::string > >::value_type map_type
PathSearch(const std::string &cls, const unsigned int debug=0)
static void initialize_classes()
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_NAMESPACE_CLOSE
static ::ExceptionBase & ExcFileNotFound(std::string arg1, std::string arg2)
#define DeclException2(Exception2, type1, type2, outsequence)
static ::ExceptionBase & ExcNoClass(std::string arg1)
#define DeclException1(Exception1, type1, outsequence)