18 # pragma warning( disable : 279 )
21 #include <boost/filesystem/operations.hpp>
22 #include <boost/tokenizer.hpp>
26 using boost::filesystem::exists;
27 using boost::filesystem::filesystem_error;
28 using boost::filesystem::is_directory;
30 using boost::char_separator;
31 using boost::tokenizer;
37 typedef tokenizer<char_separator<char>> Tokenizer;
39 Tokenizer tok( stringifiedPath, char_separator<char>( separator ) );
43 auto it = tok.begin();
44 while ( it != tok.end() ) {
48 }
catch ( boost::filesystem::filesystem_error& ) {}
56 bool dirExist( existsDir( dir ) );
59 if ( m_dirs.end() == std::find_if( m_dirs.begin(), m_dirs.end(),
eqPath( dir ) ) ) m_dirs.push_back( dir );
68 if ( (
rc = find(
path( fileName ), fileFound ) ) ) fullFileName = fileFound.string();
76 for (
const auto& iDir : m_dirs ) {
77 path full{ iDir / file };
78 if ( exists( full ) ) {
89 std::list<path> found;
90 for (
const auto& iDir : m_dirs ) {
91 path full{ iDir / file };
92 if ( exists( full ) ) found.push_back( full );
101 rc = is_directory(
path( dirName ) );