First opengl/x11/window integration.

This commit is contained in:
James Grogan 2022-11-14 13:07:11 +00:00
parent 7c6a92f4ec
commit cea3d2c39f
30 changed files with 254 additions and 72 deletions

View file

@ -1,23 +1,33 @@
#pragma once
#include <vector>
#include <memory>
class VisualLayer;
class TriMesh;
class RectangleNode;
template <typename T>
class Image;
class Scene
{
public:
Scene() = default;
void setLayers(const std::vector<VisualLayer*>& layers)
{
mLayers = layers;
}
void syncLayers(const std::vector<VisualLayer*>& layers);
void update(Image<unsigned char>* image = nullptr);
unsigned getNumMeshes() const;
TriMesh* getMesh(std::size_t idx) const;
const std::vector<VisualLayer*>& getLayers() const
{
return mLayers;
}
private:
void processRectangleNode(RectangleNode* node);
std::vector<TriMesh*> mWorkingMeshs;
std::vector<VisualLayer*> mLayers;
};