Vesper 0.5.1
Vesper is short form for the Latin word for "Bat", as Vesper is designed to be small, lightweight, and easily handle things like particles and flocking behaviors in accordance with the nature of bats. \n It is meant to be a particle simulation, VFX editor, and CAN be used secondarily as a small game engine.
GitHub | Vesper Updates | Creator
Loading...
Searching...
No Matches
Vesper::FileSystem Class Reference

#include <PlatformUtils.h>

Static Public Member Functions

static void Initialize ()
static std::string GetCurrentWorkingDirectory ()
static std::string GetAbsolutePath (const std::string &relativePath)
static std::string GetTravelingUpPath (const std::string &path)
static bool IsInitialized ()

Static Public Attributes

static bool m_Initialized = false
static std::string m_RootEngineDirectory = ""
static std::string m_RootEditorDirectory = ""
static std::string m_ResourcesDirectory = ""
static std::string m_AssetsDirectory = ""
static std::string m_ProjectsDirectory = ""
static std::string m_CurrentProjectDirectory = ""

Member Function Documentation

◆ GetAbsolutePath()

std::string Vesper::FileSystem::GetAbsolutePath ( const std::string & relativePath)
static
104 {
105 char fullPath[MAX_PATH];
106 if (_fullpath(fullPath, relativePath.c_str(), MAX_PATH) != nullptr) {
107 return std::string(fullPath);
108 }
109 return std::string();
110 }

Referenced by Initialize().

◆ GetCurrentWorkingDirectory()

std::string Vesper::FileSystem::GetCurrentWorkingDirectory ( )
static
97 {
98 CHAR currentDir[256] = { 0 };
99 if (GetCurrentDirectoryA(256, currentDir))
100 return std::string(currentDir);
101 return std::string();
102 }

◆ GetTravelingUpPath()

std::string Vesper::FileSystem::GetTravelingUpPath ( const std::string & path)
static
112 {
113 size_t pos = path.find_last_of("/\\");
114 if (pos != std::string::npos) {
115 return path.substr(0, pos);
116 }
117 return std::string();
118 }

Referenced by Initialize().

◆ Initialize()

void Vesper::FileSystem::Initialize ( )
static
66 {
67 if (m_Initialized)
68 return;
69 m_Initialized = true;
70
71 // Set Root Engine Directory
73 // Set Root Editor Directory
74 m_RootEditorDirectory = GetAbsolutePath("../../Vesper-Editor/");
75 // Set Resources Directory
77 // Set Assets Directory
79 // Set Projects Directory
81 // Set Current Project Directory
83
84
85
86 // Log Directories for Debugging
87 VZ_CORE_TRACE("FileSystem initialized");
88 VZ_CORE_TRACE("FileSystem Directories:");
89 VZ_CORE_TRACE("Root Engine Directory : " + m_RootEngineDirectory);
90 VZ_CORE_TRACE("Root Editor Directory : " + m_RootEditorDirectory);
91 VZ_CORE_TRACE("Resources Directory : " + m_ResourcesDirectory);
92 VZ_CORE_TRACE("Assets Directory : " + m_AssetsDirectory);
93 VZ_CORE_TRACE("Projects Directory : " + m_ProjectsDirectory);
94 VZ_CORE_TRACE("Current Project Directory : " + m_CurrentProjectDirectory);
95 }
#define VZ_CORE_TRACE(...)
trace: lowest level, for detailed debug information
Definition Log.h:35
static std::string m_RootEditorDirectory
Definition PlatformUtils.h:38
static std::string m_ProjectsDirectory
Definition PlatformUtils.h:41
static std::string m_AssetsDirectory
Definition PlatformUtils.h:40
static std::string m_ResourcesDirectory
Definition PlatformUtils.h:39
static std::string GetTravelingUpPath(const std::string &path)
Definition WindowsPlatformUtils.cpp:112
static std::string m_RootEngineDirectory
Definition PlatformUtils.h:37
static std::string m_CurrentProjectDirectory
Definition PlatformUtils.h:42
static std::string GetAbsolutePath(const std::string &relativePath)
Definition WindowsPlatformUtils.cpp:104
static bool m_Initialized
Definition PlatformUtils.h:36

References GetAbsolutePath(), GetTravelingUpPath(), and m_Initialized.

Referenced by Vesper::EditorLayer::OnAttach().

◆ IsInitialized()

bool Vesper::FileSystem::IsInitialized ( )
inlinestatic
34{ return m_Initialized; }

References m_Initialized.

Member Data Documentation

◆ m_AssetsDirectory

std::string Vesper::FileSystem::m_AssetsDirectory = ""
static

◆ m_CurrentProjectDirectory

std::string Vesper::FileSystem::m_CurrentProjectDirectory = ""
static

◆ m_Initialized

bool Vesper::FileSystem::m_Initialized = false
static

Referenced by Initialize(), and IsInitialized().

◆ m_ProjectsDirectory

std::string Vesper::FileSystem::m_ProjectsDirectory = ""
static

◆ m_ResourcesDirectory

std::string Vesper::FileSystem::m_ResourcesDirectory = ""
static

◆ m_RootEditorDirectory

std::string Vesper::FileSystem::m_RootEditorDirectory = ""
static

◆ m_RootEngineDirectory

std::string Vesper::FileSystem::m_RootEngineDirectory = ""
static

The documentation for this class was generated from the following files: