15 # pragma warning( disable : 4996 )
24 # pragma warning( disable : 279 )
27 #include <boost/filesystem/operations.hpp>
28 #include <boost/tokenizer.hpp>
32 using boost::filesystem::exists;
33 using boost::filesystem::filesystem_error;
34 using boost::filesystem::is_directory;
36 using boost::char_separator;
37 using boost::tokenizer;
43 typedef tokenizer<char_separator<char>> Tokenizer;
45 Tokenizer tok( stringifiedPath, char_separator<char>( separator ) );
49 auto it = tok.begin();
50 while ( it != tok.end() ) {
54 }
catch ( boost::filesystem::filesystem_error& ) {}
62 bool dirExist( existsDir( dir ) );
65 if ( m_dirs.end() ==
std::find_if( m_dirs.begin(), m_dirs.end(),
eqPath( dir ) ) ) m_dirs.push_back( dir );
74 if ( (
rc =
find(
path( fileName ), fileFound ) ) ) fullFileName = fileFound.
string();
82 for (
const auto& iDir : m_dirs ) {
83 path full{ iDir / file };
84 if ( exists( full ) ) {
96 for (
const auto& iDir : m_dirs ) {
97 path full{ iDir / file };
98 if ( exists( full ) ) found.
push_back( full );
107 rc = is_directory(
path( dirName ) );