23 lines
739 B
C++
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;
|
|
};
|
|
|