libqi-api  2.8.7.4
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Namespaces | Macros | Typedefs | Functions
path.hpp File Reference
#include <memory>
#include <string>
#include <vector>
#include <locale>
#include <iosfwd>
#include <qi/api.hpp>

Go to the source code of this file.

Classes

class  qi::Path
 The Path class allow handling filesystem path in a cross-platform maner. The class assume that all string are encoded in UTF-8 if not specified otherwise. More...
 
class  qi::path::ScopedDir
 
class  qi::path::ScopedFile
 

Namespaces

 boost
 
 qi
 Deprecated in 2.5. Use int8_t from <cstdint>.
 
 qi::path
 Set of tools to handle SDK layouts.
 
 qi::path::detail
 Implementation detail.
 

Macros

#define _QI_PATH_HPP_
 

Typedefs

using qi::PathVector = std::vector< Path >
 
using qi::codecvt_type = std::codecvt< wchar_t, char, std::mbstate_t >
 Standard std::codecvt type accepted by STL and boost. More...
 

Functions

std::string qi::path::sdkPrefix ()
 Return the default SDK prefix path. More...
 
std::vector< std::string > qi::path::detail::getSdkPrefixes ()
 Return the SDK prefixes list. It's always complete, native paths. More...
 
void qi::path::detail::addOptionalSdkPrefix (const char *prefix)
 Add a new SDK prefix to the list of searchable prefixes. More...
 
void qi::path::detail::clearOptionalSdkPrefix ()
 Reset the list of additional SDK prefixes. More...
 
void qi::path::detail::setWritablePath (const std::string &path)
 Set the writable files path for users. More...
 
Path qi::path::detail::normalize (const Path &path)
 
std::string qi::path::findBin (const std::string &name, bool searchInPath=false)
 Look for a binary. More...
 
std::string qi::path::findLib (const std::string &name)
 Look for a library. More...
 
std::string qi::path::findConf (const std::string &applicationName, const std::string &filename, bool excludeUserWritablePath=false)
 Look for a configuration file. More...
 
std::string qi::path::findData (const std::string &applicationName, const std::string &filename, bool excludeUserWritablePath=false)
 Look for a file in all dataPaths(applicationName) directories, return the first match. More...
 
std::vector< std::string > qi::path::listData (const std::string &applicationName, const std::string &pattern="*", bool excludeUserWritablePath=false)
 List data files matching the given pattern in all dataPaths(applicationName) directories. For each match, return the occurence from the first dataPaths prefix. Directories are discarded. More...
 
std::vector< std::string > qi::path::listLib (const std::string &subfolder, const std::string &pattern="*")
 
std::vector< std::string > qi::path::confPaths (const std::string &applicationName="", bool excludeUserWritablePath=false)
 Get the list of directories used when searching for configuration files for the given application name. More...
 
std::vector< std::string > qi::path::dataPaths (const std::string &applicationName="", bool excludeUserWritablePath=false)
 Get the list of directories used when searching for data files for the given application name. More...
 
std::vector< std::string > qi::path::binPaths ()
 Get the list of directories used when searching for binaries. More...
 
std::vector< std::string > qi::path::libPaths ()
 Get the list of directories used when searching for libraries. More...
 
std::string qi::path::userWritableDataPath (const std::string &applicationName, const std::string &filename)
 Get the writable data files path for users. More...
 
std::string qi::path::userWritableConfPath (const std::string &applicationName, const std::string &filename="")
 Get the writable configuration files path for users. More...
 
std::string qi::path::convertToDosPath (const std::string &pathString)
 Convert given path into DOS 8.3 path if it exists, else returns empty string (Windows only). More...
 
codecvt_type & qi::unicodeFacet ()
 UTF-8 facet object getter. More...
 

Macro Definition Documentation

#define _QI_PATH_HPP_

Definition at line 9 of file path.hpp.