HDK
|
Platform-independent utilities for various OS, hardware, and system resource functionality. More...
Classes | |
class | Term |
Functions | |
OIIO_API size_t | memory_used (bool resident=true) |
OIIO_API size_t | physical_memory () |
OIIO_API void | get_local_time (const time_t *time, struct tm *converted_time) |
OIIO_API std::string | this_program_path () |
OIIO_API string_view | getenv (string_view name, string_view defaultval) |
OIIO_API string_view | getenv (string_view name) |
OIIO_API void | usleep (unsigned long useconds) |
OIIO_API bool | put_in_background (int argc, char *argv[]) |
OIIO_API unsigned int | hardware_concurrency () |
OIIO_API unsigned int | physical_concurrency () |
OIIO_API size_t | max_open_files () |
Get the maximum number of open file handles allowed on this system. More... | |
OIIO_API std::string | stacktrace () |
OIIO_API bool | setup_crash_stacktrace (string_view filename) |
OIIO_API int | terminal_columns () |
OIIO_API int | terminal_rows () |
Platform-independent utilities for various OS, hardware, and system resource functionality.
Convert calendar time pointed by 'time' into local time and save it in 'converted_time' variable. This is a fully reentrant/thread-safe alternative to the non-reentrant C localtime() call.
OIIO_API string_view Sysutil::getenv | ( | string_view | name, |
string_view | defaultval | ||
) |
Return the value of an environment variable, or if it is not found in the environment, return defaultval
, which in turn defaults to the empty string.
OIIO_API string_view Sysutil::getenv | ( | string_view | name | ) |
Number of virtual cores available on this platform (including hyperthreads).
OIIO_API size_t Sysutil::max_open_files | ( | ) |
Get the maximum number of open file handles allowed on this system.
OIIO_API size_t Sysutil::memory_used | ( | bool | resident = true | ) |
The amount of memory currently being used by this process, in bytes. If resident==true (the default), it will report just the resident set in RAM; if resident==false, it returns the full virtual arena (which can be misleading because gcc allocates quite a bit of virtual, but not actually resident until malloced, memory per thread).
Number of full hardware cores available on this platform (does not include hyperthreads). This is not always accurate and on some platforms will return the number of virtual cores.
OIIO_API size_t Sysutil::physical_memory | ( | ) |
The amount of physical RAM on this machine, in bytes. If it can't figure it out, it will return 0.
Try to put the process into the background so it doesn't continue to tie up any shell that it was launched from. The arguments are the argc/argv that describe the program and its command line arguments. Return true if successful, false if it was unable to do so.
OIIO_API bool Sysutil::setup_crash_stacktrace | ( | string_view | filename | ) |
Turn on automatic stacktrace dump to the named file if the program crashes. Return true if this is properly set up, false if it is not possible on this platform. The name may be "stdout" or "stderr" to merely print the trace to stdout or stderr, respectively. If the name is "", it will disable the auto-stacktrace printing.
OIIO_API std::string Sysutil::stacktrace | ( | ) |
Return a string containing a readable stack trace from the point where it was called. Return an empty string if not supported on this platform.
Try to figure out how many columns wide the terminal window is. May not be correct on all systems, will default to 80 if it can't figure it out.
Try to figure out how many rows tall the terminal window is. May not be correct on all systems, will default to 24 if it can't figure it out.
OIIO_API std::string Sysutil::this_program_path | ( | ) |
Return the full path of the currently-running executable program.