All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
IMarkerService.h
1 // Copyright eeGeo Ltd (2012-2014), All Rights Reserved
2 
3 #pragma once
4 
5 #include "Markers.h"
6 #include "MarkerCreateParams.h"
7 #include "MarkerModel.h"
8 
9 namespace Eegeo
10 {
11  namespace Markers
12  {
14  {
15  public:
16  virtual ~IMarkerService() {}
17 
18  virtual IMarker::IdType Create(const MarkerCreateParams& markerCreateParams) = 0;
19 
20  virtual void Destroy(MarkerModel::IdType markerId) = 0;
21 
22  virtual bool Exists(MarkerModel::IdType markerId) const = 0;
23 
24  virtual IMarker& Get(MarkerModel::IdType markerId) const = 0;
25 
26  virtual bool TryPick(const v2& screenPoint, IMarker::IdType& out_markerId) const = 0;
27  };
28  }
29 }