Isaac 2D  1.0
IStaticScene.h
1 // // IsaacFramework //
3 // //////////////////////
4 //
5 // Copyright (c) 2014 Horatiu Condrea
6 //
7 // This software is provided 'as-is', without any express or implied warranty.
8 // In no event will the authors be held liable for any damages arising from the use of this software.
9 //
10 // Permission is granted to anyone to use this software for any purpose, including commercial applications,
11 // and to alter it and redistribute it freely, subject to the following restrictions:
12 //
13 // 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. a
14 // If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
15 //
16 // 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
17 //
18 // 3. This notice may not be removed or altered from any source distribution.
19 //
21 /*
22 Copyright @ 2014
23 Author Horatiu Condrea [ horiacondrea.com ]
24 Revision | Who | Date | Comment
25 ------------------------------------------------------------------------------------------------------------------------------------------
26 1.0 | hc | April 2014 | Created
27 */
28 // Headers
30 #pragma once
31 #include <SFML/Graphics.hpp>
32 #include "IScene.h"
33 #include <memory>
34 #include <defines.h>
36 
37 namespace isaac
38 {
39  class EXPORT_API IStaticScene : public IScene
40  {
41  public:
42 
53  virtual void mp_InitScene(RenderWindow av_xMainWindow, TransientDataCollection& av_xTransientData) = 0;
54 
64  virtual void mp_InitTriggers(std::shared_ptr<isaac::CTriggerCollection>&) = 0;
65 
79  virtual void mp_UpdateScene(RenderWindow av_xMainWindow, TransientDataCollection& av_xTransientData,
80  sf::Event av_eventSFMLEvent, bool& av_bReturnedBool_WindowClosed) = 0;
81 
91  virtual void mp_DrawScene(RenderWindow av_xMainWindow) const = 0;
92 
103  virtual void mp_Release(TransientDataCollection& av_xTransientData, std::string ac_szTriggerName) = 0;
104 
110  virtual bool mp_bIsDynamicScene() const
111  {
112  return false;
113  }
114 
115  virtual ~IStaticScene()
116  {
117  }
118 
119  protected:
120  IStaticScene(std::string ac_szSceneName) : IScene(ac_szSceneName)
121  {
122  ;
123  }
124 
125  };
126 
127  typedef std::shared_ptr< const isaac::IStaticScene > StaticScene;
128 }
Definition: BlankScene.cpp:32
Definition: IScene.h:43
virtual bool mp_bIsDynamicScene() const
Definition: IStaticScene.h:110
Definition: IStaticScene.h:39