1
0
mirror of https://github.com/doitsujin/dxvk.git synced 2024-12-14 09:23:53 +01:00
dxvk/src/util/util_env.h
Sebastian Wick 4518b1b76e Shader cache (#188)
* [util] Adds getTempDirectory() function

Will be used by on-disk pipeline caching

* [dxvk] Implement on-disk shader caching

Saving the pipeline cache to disk when the application exits
should be sufficient but the DxvkPipelineCache destructor isn't
reliably called on exit (ref-counting issue?).
As a workaround every frame we check and save the cache if the
size increased by some amount or after one minute elapsed.

* [dxvk] Periodically update shader cache file in separate thread
2018-03-21 02:45:11 +01:00

38 lines
961 B
C++

#pragma once
#include "util_string.h"
namespace dxvk::env {
/**
* \brief Gets environment variable
*
* If the variable is not defined, this will return
* an empty string. Note that environment variables
* may be defined with an empty value.
* \param [in] name Name of the variable
* \returns Value of the variable
*/
std::string getEnvVar(const wchar_t* name);
/**
* \brief Gets the executable name
*
* Returns the base name (not the full path) of the
* program executable, including the file extension.
* This function should be used to identify programs.
* \returns Executable name
*/
std::string getExeName();
/**
* \brief Gets the path to the dxvk specific temporary directory
*
* Returns the path to the temporary directory for dxvk.
* If no such directory can be found the string will be empty.
* \returns Temporary directory
*/
std::string getTempDirectory();
}