32 lines
628 B
C++
32 lines
628 B
C++
#ifndef CONTAINERNODE_H
|
|
#define CONTAINERNODE_H
|
|
|
|
#include "scenenode.h"
|
|
#include "glm/vec2.hpp"
|
|
#include "glm/mat4x4.hpp"
|
|
#include <vector>
|
|
|
|
class ContainerNode : public SceneNode
|
|
{
|
|
std::vector<SceneNode*> m_nodesToRemove;
|
|
std::vector<SceneNode*> m_nodesToAdd;
|
|
|
|
protected:
|
|
std::vector<SceneNode*> m_children;
|
|
glm::mat4 m_combinedTransform;
|
|
|
|
public:
|
|
virtual ~ContainerNode();
|
|
|
|
virtual void update();
|
|
|
|
virtual void setSceneTree(SceneTree* tree);
|
|
|
|
virtual void updateVisibility(bool visible);
|
|
|
|
void addChild(SceneNode* node);
|
|
void removeChild(SceneNode* node);
|
|
};
|
|
|
|
#endif // CONTAINERNODE_H
|