All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
TrafficCongestionVehicles.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "Types.h"
6 #include "TrafficCongestion.h"
7 #include "VectorMathDecl.h"
8 #include "Navigation.h"
9 #include "Traffic.h"
10 #include "Camera.h"
11 
12 namespace Eegeo
13 {
14  namespace TrafficCongestion
15  {
17  {
18  public:
19  typedef std::vector<Eegeo::TrafficCongestion::TrafficCongestionVehicleModel*> TVectorVehiclePtrs;
20 
21  private:
22  TVectorVehiclePtrs m_vehicles;
23 
24  public:
27 
28  size_t VehicleCount() const;
29 
32 
33  void Update(
34  float dt,
35  Eegeo::dv3 ecefCellOrigin,
37  Traffic::VehicleRenderablesModel& vehicleRenderablesModel,
38  const dv3& cameraEcefLocation
39  );
40 
41  void HandleStateChanged(const TrafficCongestionStateData& state);
42  void HandleThemeChanged(const TrafficCongestionThemeData& data);
43  };
44  }
45 }