find corresponding filter in the async object loader registry
| 20 | |
| 21 | // find corresponding filter in the async object loader registry |
| 22 | std::optional<IOFilter> findAsyncObjectLoadFilter( const std::filesystem::path& path ) |
| 23 | { |
| 24 | // TODO: resolve GCC bug |
| 25 | //auto ext = std::string( "*" ) + utf8string( path.extension().u8string() ); |
| 26 | auto ext = utf8string( path.extension().u8string() ); |
| 27 | ext = std::string( "*" ) + ext; |
| 28 | for ( auto& c : ext ) |
| 29 | c = (char)std::tolower( c ); |
| 30 | const auto asyncFilters = AsyncObjectLoad::getFilters(); |
| 31 | return findFilter( asyncFilters, ext ); |
| 32 | } |
| 33 | |
| 34 | // helper class to unify scene construction process |
| 35 | class SceneConstructor |
no test coverage detected