DvsenseDriver  1.1.4
The SDK for dvsense products.
载入中...
搜索中...
未找到
DvsCameraManager.hpp
1#pragma once
2#include <vector>
3#include <string>
4#include <memory>
5#include <map>
6#include <stdexcept>
7#include "DvsenseDriver/camera/DvsCamera.hpp"
8#include "DvsenseDriver/camera/FusionCamera.hpp"
9#include "DvsenseBase/Utils/FuncUtils.hpp"
10
11#ifdef _WIN32
12#ifdef DVSENSE_EXPORTS
13 #define DVSENSE_API __declspec(dllexport)
14 #else
15 #define DVSENSE_API __declspec(dllimport)
16 #endif
17#else
18#define DVSENSE_API
19#endif // _WIN32
20
21namespace dvsense
22{
23
29 typedef DVSENSE_API std::shared_ptr<DvsCamera> CameraDevice;
30 typedef DVSENSE_API std::shared_ptr<FusionCamera> FusionCameraDevice;
31
35 class DVSENSE_API DvsCameraManager
36 {
37 public:
43
50
56 std::vector<CameraDescription> getCameraDescs();
57
66
68
69 private:
73 std::map<Serial, CameraDevice> cameraDevices_;
74 std::map<Serial, FusionCameraDevice> fusion_camera_devices_;
75
79 void removeUnpluggedCameras();
80
86 size_t findCameras();
87
95 size_t findCameras(CAMERA_TYPE cameraType);
96
100 template <class cameraClass>
101 size_t findCameras();
102
103 template <class cameraClass>
104 size_t findFusionCameras();
105 };
106
107} // namespace dvsense
相机管理器类
定义 DvsCameraManager.hpp:36
FusionCameraDevice openFusionCamera(Serial serial)
int updateCameras()
更新当前可搜索的相机列表。
std::vector< CameraDescription > getCameraDescs()
获取相机描述符向量
CameraDevice openCamera(Serial serial)
使用给定的序列号打开相机。
DvsCameraManager()
构造函数
定义 TypeUtils.hpp:9
DVSENSE_API std::shared_ptr< DvsCamera > CameraDevice
用于管理相机设备的共享指针
定义 DvsCameraManager.hpp:29
DVSENSE_API std::shared_ptr< FusionCamera > FusionCameraDevice
定义 DvsCameraManager.hpp:30
std::string Serial
定义 DvsCameraUtils.hpp:60