Adapter Femto bolt device.

This commit is contained in:
lixiaobin
2023-10-09 19:56:35 +08:00
parent 04c7f4a9af
commit f0a3771602
19 changed files with 1615 additions and 438 deletions
@@ -480,7 +480,7 @@ public:
* OB_MULTI_DEVICE_SYNC_MODE_SOFTWARE_TRIGGERING
*
* @attention The frequency of the user call this function multiplied by the number of frames per trigger should be less than the frame rate of the stream.
* The number of frames per trigger can be set by @ref framesPerTriggerForTriggeringMode.
* The number of frames per trigger can be set by @ref framesPerTrigger.
* @attention For some models,receive and execute the capture command will have a certain delay and performance consumption, so the frequency of calling
* this function should not be too high, please refer to the product manual for the specific supported frequency.
* @attention If the device is not in the @ref OB_MULTI_DEVICE_SYNC_MODE_HARDWARE_TRIGGERING mode, device will ignore the capture command.
@@ -360,6 +360,18 @@ public:
float temperature();
};
/**
* @brief Define the RawPhaseFrame class, which inherits from the VideoFrame class
*/
class OB_EXTENSION_API RawPhaseFrame : public VideoFrame {
public:
explicit RawPhaseFrame(Frame &frame);
explicit RawPhaseFrame(std::unique_ptr<FrameImpl> impl);
~RawPhaseFrame() noexcept override = default;
};
/**
* @brief Define the FrameHelper class
*/
@@ -455,6 +467,8 @@ template <typename T> bool Frame::is() {
return (typeid(T) == typeid(FrameSet));
case OB_FRAME_POINTS:
return (typeid(T) == typeid(PointsFrame));
case OB_FRAME_RAW_PHASE:
return (typeid(T) == typeid(RawPhaseFrame) || typeid(T) == typeid(VideoFrame));
default:
std::cout << "ob::Frame::is() did not catch frame type: " << (int)this->type() << std::endl;
break;
@@ -161,6 +161,7 @@ template <typename T> bool StreamProfile::is() {
case OB_STREAM_IR_RIGHT:
case OB_STREAM_COLOR:
case OB_STREAM_DEPTH:
case OB_STREAM_RAW_PHASE:
return typeid(T) == typeid(VideoStreamProfile);
case OB_STREAM_ACCEL:
return typeid(T) == typeid(AccelStreamProfile);