PolySceneManager.h 798 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /*
  2. * PolySceneManager.h
  3. * Poly
  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 "PolyString.h"
  12. #include "PolyGlobals.h"
  13. #include "PolyScene.h"
  14. #include "PolySceneRenderTexture.h"
  15. #include <vector>
  16. using std::vector;
  17. namespace Polycode {
  18. class Scene;
  19. class SceneRenderTexture;
  20. class _PolyExport SceneManager {
  21. public:
  22. SceneManager();
  23. ~SceneManager();
  24. void addScene(Scene *newScene);
  25. void Update();
  26. void UpdateVirtual();
  27. void removeScene(Scene *scene);
  28. void registerRenderTexture(SceneRenderTexture *renderTexture);
  29. private:
  30. void updateRenderTextures(Scene *scene);
  31. vector <Scene*> scenes;
  32. vector <SceneRenderTexture*> renderTextures;
  33. };
  34. }