extract DnaManager system loading in to seperet implementations
This commit is contained in:
@@ -1,6 +1,6 @@
|
||||
#include <array>
|
||||
#include "canvas/Canvas.hpp"
|
||||
#include "values/DnaManager.hpp"
|
||||
#include "DnaStore.hpp"
|
||||
class App
|
||||
{
|
||||
|
||||
@@ -36,7 +36,7 @@ private:
|
||||
|
||||
std::array<UiUnit, 2> unit = {0};
|
||||
|
||||
DnaManager manager;
|
||||
DnaManagerData manager;
|
||||
|
||||
Rectangle likedTextBox;
|
||||
Rectangle genTextBox;
|
||||
|
||||
9
inc/DnaStore.hpp
Normal file
9
inc/DnaStore.hpp
Normal file
@@ -0,0 +1,9 @@
|
||||
#include "values/DnaManager.hpp"
|
||||
|
||||
namespace DnaStore
|
||||
{
|
||||
void load(DnaManagerData *data);
|
||||
void saveData(DnaManagerData *data);
|
||||
void saveVec(DnaManagerData *data);
|
||||
void saveGen(DnaManagerData *data);
|
||||
} // namespace DnaStore
|
||||
@@ -28,19 +28,9 @@ struct NetUnit
|
||||
|
||||
static_assert(24 == sizeof(NetUnit));
|
||||
|
||||
class DnaManager
|
||||
struct DnaManagerData
|
||||
{
|
||||
public:
|
||||
void init();
|
||||
void deinit();
|
||||
UiUnit next();
|
||||
void like(UiUnit unit);
|
||||
int generation;
|
||||
|
||||
private:
|
||||
void saveData();
|
||||
void saveVec();
|
||||
void saveGen();
|
||||
uint128 randSeed;
|
||||
uint128 id;
|
||||
int queued;
|
||||
@@ -48,6 +38,11 @@ private:
|
||||
std::vector<Dna> vector;
|
||||
std::vector<int> liked;
|
||||
std::vector<int> disliked;
|
||||
|
||||
void newGen();
|
||||
};
|
||||
|
||||
namespace DnaManager
|
||||
{
|
||||
UiUnit next(DnaManagerData *data);
|
||||
bool like(UiUnit unit, DnaManagerData *data);
|
||||
void newGen(DnaManagerData *data);
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user