All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
PositionerModelFactory.h
1 #pragma once
2 
3 #include "Positioners.h"
4 #include "Types.h"
5 #include "PositionerTypes.h"
6 
7 namespace Eegeo
8 {
9  namespace Positioners
10  {
12  {
13  public:
14  virtual ~IPositionerModelFactory() {}
15  virtual PositionerModel* Create(const PositionerModelCreateParams& createParams) = 0;
16  };
17 
19  {
20  public:
22  IPositionerModelIdGenerator& positionerModelIdGenerator,
23  Positioning::IPointOnMapFactory& pointOnMapFactory,
24  const Positioning::IPositioningViewComponent& positioningViewComponent,
25  IPositionerModelChangedEvent& positionerModelChangedEvent);
26 
27  PositionerModel* Create(const PositionerModelCreateParams& createParams) override;
28 
29  private:
30  IPositionerModelIdGenerator& m_positionerModelIdGenerator;
31  Positioning::IPointOnMapFactory& m_pointOnMapFactory;
32  const Positioning::IPositioningViewComponent& m_positioningViewComponent;
33  IPositionerModelChangedEvent& m_positionerModelChangedEvent;
34  };
35  }
36 }