-
Notifications
You must be signed in to change notification settings - Fork 184
/
CameraParameters.hpp
executable file
·72 lines (56 loc) · 2.78 KB
/
CameraParameters.hpp
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
//
// CameraParameters.hpp
// WikitudeUniversalSDK
//
// Created by Andreas Schacherbauer on 23.10.17.
// Copyright © 2017 Wikitude. All rights reserved.
//
#ifndef CameraParameters_hpp
#define CameraParameters_hpp
#ifdef __cplusplus
#include "Geometry.hpp"
#include "CameraPosition.hpp"
#include "CompilerAttributes.hpp"
#include "PlatformCameraHandler.hpp"
namespace wikitude::universal_sdk {
class CameraParametersInternal;
}
namespace wikitude::sdk {
/**
* @brief CameraParameters provide access to camera specific information.
*
* Calling getter methods will always return the most recent data available.
*
* PlatformComponent developer typically create a subclass and add more getter that are related to platform specific camera information.
*/
class WT_EXPORT_API CameraParameters {
public:
/**
* @brief This method returns the most recent horizontal field that is available.
*
* @return The horizontal field of view in degree.
*/
float getHorizontalFieldOfView() const;
void addHorizontalFieldOfViewChangedHandler(std::uintptr_t handleOwner_, CameraVerticalFieldOfViewChangedHandler cameraVerticalFieldOfViewChangedHandler_);
void removeHorizontalFieldOfViewChangedHandler(std::uintptr_t handleOwner_);
float getCameraToSurfaceCorrectedFieldOfView() const;
void addCameraToSurfaceCorrectedFieldOfViewChangedHandler(std::uintptr_t handleOwner_, CameraToSurfaceCorrectedFieldOfViewChangedHandler cameraToSurfaceCorrectedFieldOfViewChangedHandler_);
void removeCameraToSurfaceCorrectedFieldOfViewChangedHandler(std::uintptr_t handleOwner_);
/**
* @brief This method returns the most recent camera frame size that is available.
*
* @return The camera frame size in pixel.
*/
Size<int> getCameraFrameSize() const;
void addCameraFrameSizeChangedHandler(std::uintptr_t handleOwner_, CameraFrameSizeChangedHandler cameraFrameSizeChangedHandler_);
void removeCameraFrameSizeChangedHandler(std::uintptr_t handleOwner_);
CameraPosition getCameraPosition() const;
void addCameraPositionChangedHandler(std::uintptr_t handleOwner_, CameraPositionChangedHandler cameraPositionChangedHandler_);
void removeCameraPositionChangedHandler(std::uintptr_t handleOwner_);
void setInternalCameraParameters(universal_sdk::CameraParametersInternal *internalCameraParameters_);
protected:
universal_sdk::CameraParametersInternal* _internalCameraParameters = nullptr;
};
}
#endif /* __cplusplus */
#endif /* CameraParameters_hpp */