1#ifndef INCLUDE_COMMON_BASEPROJECT_H_ 
    2#define INCLUDE_COMMON_BASEPROJECT_H_ 
   26    [[nodiscard]] 
virtual const std::string &
GetName() = 0;
 
 
   48    using ProjVec = std::vector<std::unique_ptr<BaseProject>>;
 
 
Structure representing an project application instance.
Definition BaseProject.h:17
virtual const std::string & GetName()=0
static bool hasUI
Definition BaseProject.h:27
virtual ~BaseProject()=default
Definition BaseProject.h:31
virtual ~ImGuiUI()=default
static void RegisterProject(std::unique_ptr< BaseProject > project)
Definition BaseProject.cpp:17
ProjectManager & operator=(const ProjectManager &)=delete
static std::shared_ptr< ProjVec > instance
Definition BaseProject.h:59
static std::shared_ptr< ProjVec > GetProjects()
Definition BaseProject.cpp:12
ProjectManager(ProjectManager &&)=delete
ProjectManager & operator=(ProjectManager &&)=delete
static void RegisterAllProjects()
registers all the projects to the vector, should be called before calling getProjects()
Definition RegisterProjects.cpp:10
std::vector< std::unique_ptr< BaseProject > > ProjVec
Definition BaseProject.h:48
ProjectManager(const ProjectManager &)=delete