ALib C++ Framework
by
Library Version: 2605 R0
Documentation generated by doxygen
Loading...
Searching...
No Matches
alib::system Namespace Reference

Description:

This is the reference documentation of module ALib System, which exposes it's entities in this namespace.

Type Index:

class  Console
 This class provides system-dependent features in respect the console attached to a process. More...
struct  EnvironmentVariables
class  FileStatus
class  MappedFile
class  Path
class  ProcessInfo
 This class represents process information. More...
struct  TextFileLineReader
struct  TShellCommand
class  TTextFile

Enumeration Index:

enum class  SystemFolders {
  Root , Current , Home , HomeConfig ,
  Module , Temp , VarTemp
}

Function Index:

 TextFileLineReader (const CPathString &) -> TextFileLineReader< 1024 >
 Deduction guide fixing the template parameter #TLocalBufferSize to its default 1024.

Enumeration Details:

◆ SystemFolders

enum class alib::system::SystemFolders
strong

Enumerates special system folders like "home", "temp", "config", etc. This enumeration is primarily used with class Path and this documentation refers to this type.

Enumerator
Root 

The root directory .

Current 

The current directory of the process.

Home 

The user's home directory.

HomeConfig 

The user's configuration directory. This is evaluated as follows:

  • Using environment variable HOME (under WindowsOS a combination of HOMEDRIVE and HOMEPATH), the home directory is determined.
  • If within this directory ".config" exists, it is used, otherwise
  • if within this directory the directories "AppData/Roaming" exist, this is used.
Module 

The directory of the executable of the process.

Temp 

A directory to be used for creation of temporary files.

  • On GNU/Linux OS this defaults to /tmp.
  • On Windows OS, environment variables "TMP" and "TEMP" are evaluated.

If the directory does not exist, then (on all OS), a new directory named ".tmp" is created in the user's home directory and returned (if not existent already). If this fails, the home directory itself is returned.

Note
With the potential creation of the directory ".tmp" in the user's home directory, a small readme.txt file is created containing the name of the running application and the reason of the creation.

To overrule this behavior, public static variable static PathString tempDirEvaluatedOnce may be set arbitrarily before using this enum value.

VarTemp 

A directory to be used for creation of temporary files that survives reboots of the host machine.

  • On GNU/Linux OS this defaults to /var/tmp.
  • On Windows OS, environment variables "TMP" and "TEMP" are evaluated (same as with Temp).

If the directory does not exist, then (on all OS), a new directory named ".var.tmp" is created in the user's home directory and returned (if not existent already). If this fails, the home directory itself is returned.

Note
With the potential creation of the directory ".var.tmp" in the user's home directory, a small readme.txt file is created, containing the name of the running application and the reason of the creation.

To overrule this behavior, public static variable static PathString varTempDirEvaluatedOnce may be set arbitrarily before using this enum value.

Definition at line 87 of file path.hpp.