DEKI/ENGINE docs
Deki 0.19.0
Modular C++ 2D engine for embedded displays and desktop
Loading...
Searching...
No Matches
DekiEditor::ProjectPaths Namespace Reference

The one definition of where things live inside a project. More...

Functions

std::filesystem::path Generated (const std::string &projectRoot)
std::filesystem::path Runtime (const std::string &projectRoot)
std::filesystem::path Build (const std::string &projectRoot)
std::filesystem::path Cache (const std::string &projectRoot)
std::filesystem::path Shadow (const std::string &projectRoot)
std::filesystem::path CMakeListsFile (const std::string &projectRoot)
std::filesystem::path Settings (const std::string &projectRoot)
std::filesystem::path RuntimeBuildTemp (const std::string &projectRoot)
 Directories a project must have; created for new projects and repaired on open.
std::filesystem::path RuntimePdbArchive (const std::string &projectRoot)

Variables

constexpr const char * kStructureVersion = "v5"
 The folder layout version deki.json records as "structure".

Detailed Description

The one definition of where things live inside a project.

Everything the editor generates lives under a single generated/ folder, so a project's root shows only source and settings, the ignore file is one line, and bad generated state has one place to be deleted from.

Call sites must not join these paths by hand: hand-joined copies drift apart and clean or load the wrong place.

Every path is derived from the project root, never from a stored absolute location, so a project directory can be copied to another machine and opened as is.

Function Documentation

◆ Generated()

std::filesystem::path DekiEditor::ProjectPaths::Generated ( const std::string & projectRoot)

◆ Runtime()

std::filesystem::path DekiEditor::ProjectPaths::Runtime ( const std::string & projectRoot)

◆ Build()

std::filesystem::path DekiEditor::ProjectPaths::Build ( const std::string & projectRoot)

◆ Cache()

std::filesystem::path DekiEditor::ProjectPaths::Cache ( const std::string & projectRoot)

◆ Shadow()

std::filesystem::path DekiEditor::ProjectPaths::Shadow ( const std::string & projectRoot)

◆ CMakeListsFile()

std::filesystem::path DekiEditor::ProjectPaths::CMakeListsFile ( const std::string & projectRoot)

◆ Settings()

std::filesystem::path DekiEditor::ProjectPaths::Settings ( const std::string & projectRoot)

◆ RuntimeBuildTemp()

std::filesystem::path DekiEditor::ProjectPaths::RuntimeBuildTemp ( const std::string & projectRoot)

Directories a project must have; created for new projects and repaired on open.

◆ RuntimePdbArchive()

std::filesystem::path DekiEditor::ProjectPaths::RuntimePdbArchive ( const std::string & projectRoot)

Variable Documentation

◆ kStructureVersion

const char* DekiEditor::ProjectPaths::kStructureVersion = "v5"
inlineconstexpr

The folder layout version deki.json records as "structure".