YoggieEngine/Editor/src/Project.h

23 lines
739 B
C++

#pragma once
#include <filesystem>
#include <iostream>
class Project {
public:
Project() = default;
Project(const std::string& name): Name(name){}
~Project() { std::cout << "Unloading project..." << Name << std::endl; }
void setName(std::string& name) { Name = name; }
const std::string& GetName()const { return Name; }
void setProjectDirectory(std::string& path) { ProjectDirectory = std::filesystem::path(path); }
const std::filesystem::path GetProjectDirectory() { return ProjectDirectory; }
static void SaveProject(std::filesystem::path path, Project& project);
static void LoadProject(std::filesystem::path path, std::shared_ptr<Project>& project);
private:
std::string Name;
std::filesystem::path ProjectDirectory;
};