PolySceneManager.h 773 B

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. /*
  2. * PolySceneManager.h
  3. * TAU
  4. *
  5. * Created by Ivan Safrin on 3/18/08.
  6. * Copyright 2008 __MyCompanyName__. All rights reserved.
  7. *
  8. */
  9. // @package Services
  10. #pragma once
  11. #include "PolyGlobals.h"
  12. #include "PolyScene.h"
  13. #include "PolySceneRenderTexture.h"
  14. #include <vector>
  15. using std::vector;
  16. namespace Polycode {
  17. class Scene;
  18. class SceneRenderTexture;
  19. class _PolyExport SceneManager {
  20. public:
  21. SceneManager();
  22. ~SceneManager();
  23. void addScene(Scene *newScene);
  24. void Update();
  25. void UpdateVirtual();
  26. void removeScene(Scene *scene);
  27. void registerRenderTexture(SceneRenderTexture *renderTexture);
  28. private:
  29. void updateRenderTextures(Scene *scene);
  30. vector <Scene*> scenes;
  31. vector <SceneRenderTexture*> renderTextures;
  32. };
  33. }