Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
platform
Markers
MarkerModelFactory.h
1
// Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2
3
#pragma once
4
5
#include "IMarkerService.h"
6
#include "Types.h"
7
#include "Markers.h"
8
#include "Labels.h"
9
#include "Positioning.h"
10
11
#include <string>
12
13
namespace
Eegeo
14
{
15
namespace
Markers
16
{
17
class
IMarkerModelFactory
18
{
19
public
:
20
virtual
~
IMarkerModelFactory
() {};
21
22
virtual
MarkerModel
* Create(
const
MarkerCreateParams
& markerCreateParams) = 0;
23
};
24
25
class
MarkerModelFactory
:
public
IMarkerModelFactory
,
private
Eegeo::NonCopyable
26
{
27
public
:
28
MarkerModelFactory
(
IMarkerModelIdGenerator
& markerModelIdGenerator,
29
Labels::ILabelModelFactory
& labelModelFactory,
30
Positioning::IPointOnMapFactory
& pointOnMapFactory,
31
const
std::string& markersLabelIdPrefix,
32
IMarkerCategoryService
& markerCategoryService,
33
const
Positioning::IPositioningViewComponent
& positioningViewComponent,
34
MarkerHiddenChangedEvent
& markerHiddenChangedEvent);
35
36
37
MarkerModel
* Create(
const
MarkerCreateParams
& markerCreateParams);
38
private
:
39
IMarkerModelIdGenerator
& m_markerModelIdGenerator;
40
Labels::ILabelModelFactory
& m_labelModelFactory;
41
Positioning::IPointOnMapFactory
& m_pointOnMapFactory;
42
const
std::string m_markersLabelIdPrefix;
43
IMarkerCategoryService
& m_markerCategoryService;
44
const
Positioning::IPositioningViewComponent
& m_positioningViewComponent;
45
MarkerHiddenChangedEvent
& m_markerHiddenChangedEvent;
46
};
47
}
48
}
Generated on Sat Jun 10 2023 02:00:31 for eeGeo Platform SDK by
1.8.3.1