omni::extras::PathMap

Defined in omni/extras/PathMap.h

template<typename T, class Compare = PathLess>
using omni::extras::PathMap = std::map<std::string, T, Compare>

A map to store file paths and associated data according to local OS rules.

Templated type to use to create a map from a file name or file path to another object. The map implementation is based on the std::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 insentisitive 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::map<> object is usually implemented as a red-black tree and will take on that algorithm’s performance and storage characteristics. Please consider this when chosing a container type.

Template Parameters
  • T – The type for the map to contain as the value for each path name key.

  • Compare – The string comparison functor to use when matching path name keys.