Main Page
Related Pages
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Pages
platform
Resources
Interiors
Highlights
InteriorHighlightsModule.h
1
// Copyright eeGeo Ltd (2012-2017), All Rights Reserved
2
3
#pragma once
4
5
#include "Modules.h"
6
#include "Interiors.h"
7
#include "InteriorMultipleResultRayCaster.h"
8
#include "InteriorsEntityPickedEvent.h"
9
#include "Types.h"
10
#include "MapCamera.h"
11
12
#include <string>
13
#include <unordered_set>
14
#include <vector>
15
16
namespace
Eegeo
17
{
18
namespace
Resources
19
{
20
namespace
Interiors
21
{
22
namespace
Highlights
23
{
24
class
InteriorHighlightsModule
:
private
Eegeo::NonCopyable
25
{
26
public
:
27
28
static
InteriorHighlightsModule
* Create(
29
const
Eegeo::Collision::AggregateCollisionBvhProvider
& aggregateCollisionBvhProvider,
30
const
Rendering::EnvironmentFlatteningService
& environmentFlatteningService,
31
const
Eegeo::Modules::Map::Layers::InteriorsModelModule
& interiorsModelModule,
32
const
Modules::Map::Layers::InteriorsPresentationModule
& interiorsPresentationModule,
33
const
Camera::MapCamera::MapCameraModule
& mapCameraModule,
34
const
Eegeo::Modules::Core::DebugRenderingModule
& debugRenderingModule,
35
bool
indoorEntityPickingDebugDrawEnabled
36
);
37
38
~
InteriorHighlightsModule
();
39
40
const
Entities::IInteriorsEntityPicker
& GetPickingService()
const
{
return
*m_pInteriorsPickingService; }
41
Entities::IInteriorsEntityPickedEvent
& GetInteriorsEntityPickedEvent()
const
;
42
Input::IGestureHandler
& GetInteriorsEntityPickingGestureHandler()
const
;
43
44
IInteriorsHighlightService
& GetHighlightService() {
return
*m_pInteriorsHighlightService; }
45
private
:
46
InteriorHighlightsModule
(
47
Eegeo::Collision::InteriorMultipleResultRayCaster
* pRayCaster,
48
const
Entities::IInteriorsEntityPicker
* pPickingService,
49
IInteriorsHighlightService
* pInteriorsHighlightService,
50
const
IInteriorsHighlightRepository
* pInteriorsHighlightRepository,
51
const
InteriorsHighlightController
* pInteriorsHighlightController,
52
Entities::InteriorsEntityPickingGestureHandler
* pInteriorsEntityPickingGestureHandler,
53
Entities::IInteriorsEntityPickedEvent
* pInteriorsEntityPickedEvent
54
);
55
56
const
Collision::IMultipleResultRayCaster
* m_pRayCaster;
57
const
Entities::IInteriorsEntityPicker
* m_pInteriorsPickingService;
58
IInteriorsHighlightService
* m_pInteriorsHighlightService;
59
const
IInteriorsHighlightRepository
* m_pInteriorsHighlightRepository;
60
const
InteriorsHighlightController
* m_pInteriorsHighlightController;
61
Entities::InteriorsEntityPickingGestureHandler
*
const
m_pInteriorsEntityPickingGestureHandler;
62
Entities::IInteriorsEntityPickedEvent
*
const
m_pInteriorsEntityPickedEvent;
63
};
64
}
65
}
66
}
67
}
Generated on Sat Jun 10 2023 02:00:32 for eeGeo Platform SDK by
1.8.3.1