Files
test_obsdk/ConsoleApplication1/utils.cpp
2026-03-31 16:52:49 +08:00

55 lines
1.3 KiB
C++

// Copyright (c) Orbbec Inc. All Rights Reserved.
// Licensed under the MIT License.
#include "utils.hpp"
#include "utils_c.h"
#include <chrono>
namespace ob_smpl {
char waitForKeyPressed(uint32_t timeout_ms) {
return ob_smpl_wait_for_key_press(timeout_ms);
}
uint64_t getNowTimesMs() {
return std::chrono::duration_cast<std::chrono::milliseconds>(std::chrono::system_clock::now().time_since_epoch()).count();
}
int getInputOption() {
char inputOption = ob_smpl::waitForKeyPressed();
if(inputOption == ESC_KEY) {
return -1;
}
return inputOption - '0';
}
bool isLiDARDevice(std::shared_ptr<ob::Device> device) {
std::shared_ptr<ob::SensorList> sensorList = device->getSensorList();
for(uint32_t index = 0; index < sensorList->getCount(); index++) {
OBSensorType sensorType = sensorList->getSensorType(index);
if(sensorType == OB_SENSOR_LIDAR) {
return true;
}
}
return false;
}
bool supportAnsiEscape() {
if(ob_smpl_support_ansi_escape() == 0) {
return false;
}
return true;
}
bool isGemini305Device(int vid, int pid) {
return ob_smpl_is_gemini305_device(vid, pid);
}
bool isAstraMiniDevice(int vid, int pid) {
return ob_smpl_is_astra_mini_device(vid, pid);
}
} // namespace ob_smpl