omni::extras::UnorderedPathMap
Defined in omni/extras/PathMap.h
-
template<typename T, class Hash = PathHash, class KeyEqual = PathEqual>
using omni::extras::UnorderedPathMap = std::unordered_map<std::string, T, Hash, KeyEqual> An unordered map to store file paths and associated data according to local OS rules.
Templated type to use to create an unordered map from a file name or file path to another object. The map implementation is based on the std::unordered_map<> implementation. This will treat the key as though it is a file path on the local system - on Windows the comparisons will be case insensitive while on Linux they will be case sensitive. This is also suitable for storing environment variables since they are also treated in a case insensitive manner on Windows and case insensitive on Linux.
Note
A std::unordered_map<> object is usually implemented as a hash table of lists or trees and will take on that algorithm’s performance and storage characteristics. Please consider this when choosing a container type.
- Template Parameters
T – The type for the map to contain as the value for each path name key.
Hash – The string hashing functor to use to generate hash values for each path name key.
KeyEqual – The string comparison functor to use to test if two path name keys are equal