All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
StreamingInitialSceneState.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "BaseState.h"
6 #include "IStreamingVolume.h"
7 #include "Rendering.h"
8 #include "Modules.h"
9 #include "IChangeStateCallback.h"
10 #include "Profile.h"
11 #include "ICallback.h"
12 #include "Mapscenes.h"
13 
14 
15 namespace Eegeo
16 {
17  class EegeoWorld;
18 
19  namespace WorldStates
20  {
22  {
23  Modules::Map::MapModule& m_mapModule;
25  Eegeo::Modules::Map::CityThemesModule& m_cityThemesModule;
27  bool m_isLoadingInteriorMapscene;
28 
29  IChangeStateCallback* m_pChangeStateCallback;
30 
31  void OnRequestMapsceneCompleted(const Mapscenes::MapsceneRequestResponse& response);
32 
33  public:
34  StreamingInitialSceneState(std::string stateName,
35  Modules::Map::MapModule& mapModule,
37  Eegeo::Modules::Map::CityThemesModule& cityThemesModule);
39 
40  void Enter();
41 
42  void Update(float dt,
43  const Camera::RenderCamera& renderCamera,
44  const dv3& ecefInterestPoint,
45  Streaming::IStreamingVolume& streamingVolume);
46 
47  void Exit();
48 
49  void SetChangeStateCallback(IChangeStateCallback* changeStateCallback);
50  };
51  }
52 }