From 5facc2edd6cb6a38c5c7e20144e143ac75e5a1a9 Mon Sep 17 00:00:00 2001 From: Andrey Astafyev Date: Mon, 13 Apr 2020 10:33:11 +0300 Subject: [PATCH] update --- ...рограммные проект и иерархия каталогов.adoc | 21 ++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) diff --git a/wiki/Prog/Development/Программные проект и иерархия каталогов.adoc b/wiki/Prog/Development/Программные проект и иерархия каталогов.adoc index ec490cf..6c838d6 100644 --- a/wiki/Prog/Development/Программные проект и иерархия каталогов.adoc +++ b/wiki/Prog/Development/Программные проект и иерархия каталогов.adoc @@ -58,18 +58,18 @@ https://ru.wikipedia.org/wiki/FHS[FHS] («стандарт иерархии фа [cols="2m,4",options="header",] |=== | Метод | Описание -| binaryDirectory() | Полный путь к каталогу с исполняемым файлом +| homeDirectory() | Полный путь к домашнему каталогу текущего пользователя +| tempDirectory() | Полный путь к каталогу с временными файлами | userConfigDirectory() | Полный путь к пользовательскому каталогу с файлами настройки +| userConstDataDirectory() | Полный путь к пользовательскому каталогу с неизменяемыми файлами +| userVarDataDirectory() | Полный путь к пользовательскому каталогу с изменяемыми файлами +| userLogDirectory() | Полный путь к пользовательскому каталогу с журналами работы +| binaryDirectory() | Полный путь к каталогу с исполняемым файлом | systemConfigDirectory() | Полный путь к системному каталогу с файлами настройки | configFilePath() | Полный путь к файлу настройки -| userVarDataDirectory() | Полный путь к пользовательскому каталогу с изменяемыми файлами | systemVarDataDirectory() | Полный путь к системному каталогу с изменяемыми файлами -| userConstDataDirectory() | Полный путь к пользовательскому каталогу с неизменяемыми файлами | systemConstDataDirectory() | Полный путь к системному каталогу с неизменяемыми файлами -| userLogDirectory() | Полный путь к пользовательскому каталогу с журналами работы | systemLogDirectory() | Полный путь к системному каталогу с журналами работы -| tempDirectory() | Полный путь к каталогу с временными файлами -| homeDirectory() | Полный путь к домашнему каталогу текущего пользователя | projectName() | Имя подкаталога для проекта | executableFileName() | Имя исполняемого файла | executableFilePath() | Полный путь к исполняемому файлу @@ -87,7 +87,7 @@ paths.init( QStringLiteral( "project_name" ), QStringLiteral( "conf" ) ); qDebug() << paths.systemConstDataDirectory().path(); ---- -=== Правила выбора окружения +=== Правила выбора типа окружения Класс `myx::filesystem::Paths` реализован в виде синглтона, чтобы повторно не выполнять проверку окружения в разных частях программы. @@ -112,3 +112,10 @@ qDebug() << paths.systemConstDataDirectory().path(); | Журналы работы | userLogDirectory() | /home/user/.local/share/project/log |=== + +Для определения типа текущего окружения используется полный путь +к исполняемому файлу, если он находится в каталоге `bin`, то выполняются +проверки работы в одной из возможных вариантов иерархий, иначе +делается заключение о том, что файлы всех типов находятся в одном +каталоге с исполняемым. +