All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
PropRenderableLocationController.h
1 #pragma once
2 
3 #include "Types.h"
4 #include "Interiors.h"
5 #include "Helpers.h"
6 #include "PropModelRepository.h"
7 
8 namespace Eegeo
9 {
10  namespace Resources
11  {
12  namespace Interiors
13  {
14  class PropRenderableLocationController : public PropModelRepository::ObserverType, private Eegeo::NonCopyable
15  {
16  public:
17 
18  PropRenderableLocationController(PropModelRepository& propModelRepository, PropRenderableService& propRenderableService);
19 
21 
22  private:
23 
24  void OnItemAdded(PropModel *const & model);
25 
26  void OnItemRemoved(PropModel *const & model);
27 
28  void OnPropPositionChanged(const int& propId);
29 
31 
32  PropModelRepository& m_propModelRepository;
33  PropRenderableService& m_propRenderableService;
34  };
35  }
36  }
37 }
38