Intel® RealSense™ Cross Platform API
Intel Realsense Cross-platform API
f200.h
Go to the documentation of this file.
1// License: Apache 2.0. See LICENSE file in root directory.
2// Copyright(c) 2015 Intel Corporation. All Rights Reserved.
3
4#pragma once
5#ifndef LIBREALSENSE_F200_H
6#define LIBREALSENSE_F200_H
7
8#include <atomic>
9#include <thread>
10#include <condition_variable>
11
12#include "ivcam-device.h"
13
14
15#define F200_PRODUCT_ID 0x0a66
16
17namespace rsimpl
18{
19 class f200_camera final : public iv_camera
20 {
21 f200::cam_temperature_data base_temperature_data;
22 f200::thermal_loop_params thermal_loop_params;
23
24 float last_temperature_delta;
25
26 std::thread temperatureThread;
27 std::atomic<bool> runTemperatureThread;
28 std::mutex temperatureMutex;
29 std::condition_variable temperatureCv;
30
31 void temperature_control_loop();
32
33 public:
34 f200_camera(std::shared_ptr<uvc::device> device, const static_device_info & info, const ivcam::camera_calib_params & calib, const f200::cam_temperature_data & temp, const f200::thermal_loop_params & params);
36
37 void set_options(const rs_option options[], size_t count, const double values[]) override;
38 void get_options(const rs_option options[], size_t count, double values[]) override;
39
40 virtual void start_fw_logger(char fw_log_op_code, int grab_rate_in_ms, std::timed_mutex& mutex) override;
41 virtual void stop_fw_logger() override;
42 };
43
44 std::shared_ptr<rs_device> make_f200_device(std::shared_ptr<uvc::device> device);
45}
46
47#endif
Definition: f200.h:20
void get_options(const rs_option options[], size_t count, double values[]) override
void set_options(const rs_option options[], size_t count, const double values[]) override
f200_camera(std::shared_ptr< uvc::device > device, const static_device_info &info, const ivcam::camera_calib_params &calib, const f200::cam_temperature_data &temp, const f200::thermal_loop_params &params)
virtual void stop_fw_logger() override
virtual void start_fw_logger(char fw_log_op_code, int grab_rate_in_ms, std::timed_mutex &mutex) override
Definition: ivcam-device.h:23
Definition: archive.h:13
std::shared_ptr< rs_device > make_f200_device(std::shared_ptr< uvc::device > device)
rs_option
Defines general configuration controls.
Definition: rs.h:129
Definition: ivcam-private.h:162
Definition: ivcam-private.h:169
Definition: ivcam-private.h:17
Definition: types.h:269