1use crate::sys::enums::OBPropertyID;
3
4#[derive(Debug, PartialEq)]
6pub enum PropertyValue<'a> {
7 Bool(&'a mut bool),
8 Int(&'a mut i32),
9 Float(&'a mut f32),
10}
11
12#[derive(Debug, Clone, Copy, PartialEq)]
14pub enum DeviceProperty {
15 LDP(bool),
17 Laser(bool),
19 LaserPulseWidth(i32),
21 LaserCurrent(f32),
23 Flood(bool),
25 FloodLevel(i32),
27 TemperatureCompensation(bool),
29 DepthMirror(bool),
31 DepthFlip(bool),
33 DepthPostfilter(bool),
35 DepthHolefilter(bool),
37 IRMirror(bool),
39 IRFlip(bool),
41 MinDepth(i32),
43 MaxDepth(i32),
45 DepthNoiseRemovalFilter(bool),
47 LDPStatus(bool),
49 DepthNoiseRemovalFilterMaxDiff(i32),
51 DepthNoiseRemovalFilterMaxSpeckleSize(i32),
53 DepthAlignHardware(bool),
55 TimestampOffset(i32),
57 HardwareDistortionSwitch(bool),
59 FanWorkMode(i32),
61 DepthAlignHardwareMode(i32),
63 AntiCollusionActivationStatus(bool),
65 DepthPrecisionLevel(i32),
67 TofFilterRange(i32),
69 LaserMode(i32),
71 Rectify2(bool),
73 ColorMirror(bool),
75 ColorFlip(bool),
77 IndicatorLight(bool),
79 DisparityToDepth(bool),
81 BRT(bool),
83 Watchdog(bool),
85 ExternalSignalReset(bool),
87 Heartbeat(bool),
89 DepthCroppingMode(i32),
91 D2CPreprocess(bool),
93 GPM(bool),
95 RGBCustomCrop(bool),
97 DeviceWorkMode(i32),
99 DeviceCommunicationType(i32),
101 SwitchIRMode(i32),
103 LaserPowerLevelControl(i32),
105 LDPMeasureDistance(i32),
107 TimerResetSignal(bool),
109 TimerResetTriggerOutEnable(bool),
111 TimerResetDelayUs(i32),
113 CaptureImageSignal(bool),
115 IRRightMirror(bool),
117 CaptureImageFrameNumber(i32),
119 IRRightFlip(bool),
121 ColorRotate(i32),
123 IRRotate(i32),
125 IRRightRotate(i32),
127 DepthRotate(i32),
129 LaserPowerActualLevel(i32),
131 USBPowerState(i32),
133 DCPowerState(i32),
135 DeviceDevelopmentMode(i32),
137 SyncSignalTriggerOut(bool),
139 RestoreFactorySettings(bool),
141 BootIntoRecoveryMode(bool),
143 DeviceInRecoveryMode(bool),
145 CaptureIntervalMode(i32),
147 CaptureImageTimeInterval(i32),
149 CaptureImageNumberInterval(i32),
151 TimerResetEnable(bool),
153 DeviceUSB2RepeatIdentify(bool),
155 DeviceRebootDelay(i32),
157 LaserOvercurrentProtectionStatus(bool),
159 LaserPulseWidthProtectionStatus(bool),
161 LaserAlwaysOn(bool),
163 LaserOnOffPattern(i32),
165 DepthUnitFlexibleAdjustment(f32),
167 LaserControl(i32),
169 IRBrightness(i32),
171 SlaveDeviceSyncStatus(bool),
173 ColorAEMaxExposure(i32),
175 IRAEMaxExposure(i32),
177 DispSearchRangeMode(i32),
179 LaserHighTemperatureProtect(bool),
181 LowExposureLaserControl(bool),
183 CheckPPSSyncInSignal(bool),
185 DispSearchOffset(i32),
187 DeviceRepower(bool),
189 FrameInterleaveConfigIndex(i32),
191 FrameInterleaveEnable(bool),
193 FrameInterleaveLaserPatternSyncDelay(i32),
195 OnChipCalibrationHealthCheck(f32),
197 OnChipCalibrationEnable(bool),
199 HWNoiseRemoveFilterEnable(bool),
201 HWNoiseRemoveFilterThreshold(f32),
203 DeviceAutoCaptureEnable(bool),
205 DeviceAutoCaptureIntervalTime(i32),
207 DevicePTPClockSyncEnable(bool),
209 DepthWithConfidenceStreamEnable(bool),
211 ConfidenceStreamFilter(bool),
213 ConfidenceStreamFilterThreshold(i32),
215 ConfidenceMirror(bool),
217 ConfidenceFlip(bool),
219 ConfidenceRotate(i32),
221 ColorAutoExposure(bool),
223 ColorExposure(i32),
225 ColorGain(i32),
227 ColorAutoWhiteBalance(bool),
229 ColorWhiteBalance(i32),
231 ColorBrightness(i32),
233 ColorSharpness(i32),
235 ColorShutter(i32),
237 ColorSaturation(i32),
239 ColorContrast(i32),
241 ColorGamma(i32),
243 ColorRoll(i32),
245 ColorAutoExposurePriority(i32),
247 ColorBacklightCompensation(i32),
249 ColorHue(i32),
251 ColorPowerLineFrequency(i32),
253 DepthAutoExposure(bool),
255 DepthExposure(i32),
257 DepthGain(i32),
259 IRAutoExposure(bool),
261 IRExposure(i32),
263 IRGain(i32),
265 IRChannelDataSource(i32),
267 DepthRMFilter(bool),
269 ColorMaximalGain(i32),
271 ColorMaximalShutter(i32),
273 IRShortExposure(bool),
275 ColorHDR(bool),
277 IRLongExposure(bool),
279 SkipFrame(bool),
281 HDRMerge(bool),
283 ColorFocus(i32),
285 IRRectify(bool),
287 DepthAutoExposurePriority(i32),
289 SDKDisparityToDepth(bool),
291 SDKDepthFrameUnpack(bool),
293 SDKIRFrameUnpack(bool),
295 SDKAccelFrameTransformed(bool),
297 SDKGyroFrameTransformed(bool),
299 SDKIRLeftFrameUnpack(bool),
301 SDKIRRightFrameUnpack(bool),
303 NetworkBandwidthType(i32),
305 DevicePerformanceMode(i32),
307 RawDataCameraCalibJsonFile(i32),
309 DebugESGMConfidence(f32),
311}
312
313impl<'a> DeviceProperty {
314 pub(crate) fn decompose(&'a mut self) -> (OBPropertyID, PropertyValue<'a>) {
316 match self {
317 DeviceProperty::LDP(value) => (OBPropertyID::LDPBool, PropertyValue::Bool(value)),
318 DeviceProperty::Laser(value) => (OBPropertyID::LaserBool, PropertyValue::Bool(value)),
319 DeviceProperty::LaserPulseWidth(value) => {
320 (OBPropertyID::LaserPulseWidthInt, PropertyValue::Int(value))
321 }
322 DeviceProperty::LaserCurrent(value) => {
323 (OBPropertyID::LaserCurrentFloat, PropertyValue::Float(value))
324 }
325 DeviceProperty::Flood(value) => (OBPropertyID::FloodBool, PropertyValue::Bool(value)),
326 DeviceProperty::FloodLevel(value) => {
327 (OBPropertyID::FloodLevelInt, PropertyValue::Int(value))
328 }
329 DeviceProperty::TemperatureCompensation(value) => (
330 OBPropertyID::TemperatureCompensationBool,
331 PropertyValue::Bool(value),
332 ),
333 DeviceProperty::DepthMirror(value) => {
334 (OBPropertyID::DepthMirrorBool, PropertyValue::Bool(value))
335 }
336 DeviceProperty::DepthFlip(value) => {
337 (OBPropertyID::DepthFlipBool, PropertyValue::Bool(value))
338 }
339 DeviceProperty::DepthPostfilter(value) => (
340 OBPropertyID::DepthPostfilterBool,
341 PropertyValue::Bool(value),
342 ),
343 DeviceProperty::DepthHolefilter(value) => (
344 OBPropertyID::DepthHolefilterBool,
345 PropertyValue::Bool(value),
346 ),
347 DeviceProperty::IRMirror(value) => {
348 (OBPropertyID::IRMirrorBool, PropertyValue::Bool(value))
349 }
350 DeviceProperty::IRFlip(value) => (OBPropertyID::IRFlipBool, PropertyValue::Bool(value)),
351 DeviceProperty::MinDepth(value) => {
352 (OBPropertyID::MinDepthInt, PropertyValue::Int(value))
353 }
354 DeviceProperty::MaxDepth(value) => {
355 (OBPropertyID::MaxDepthInt, PropertyValue::Int(value))
356 }
357 DeviceProperty::DepthNoiseRemovalFilter(value) => (
358 OBPropertyID::DepthNoiseRemovalFilterBool,
359 PropertyValue::Bool(value),
360 ),
361 DeviceProperty::LDPStatus(value) => {
362 (OBPropertyID::LDPStatusBool, PropertyValue::Bool(value))
363 }
364 DeviceProperty::DepthNoiseRemovalFilterMaxDiff(value) => (
365 OBPropertyID::DepthNoiseRemovalFilterMaxDiffInt,
366 PropertyValue::Int(value),
367 ),
368 DeviceProperty::DepthNoiseRemovalFilterMaxSpeckleSize(value) => (
369 OBPropertyID::DepthNoiseRemovalFilterMaxSpeckleSizeInt,
370 PropertyValue::Int(value),
371 ),
372 DeviceProperty::DepthAlignHardware(value) => (
373 OBPropertyID::DepthAlignHardwareBool,
374 PropertyValue::Bool(value),
375 ),
376 DeviceProperty::TimestampOffset(value) => {
377 (OBPropertyID::TimestampOffsetInt, PropertyValue::Int(value))
378 }
379 DeviceProperty::HardwareDistortionSwitch(value) => (
380 OBPropertyID::HardwareDistortionSwitchBool,
381 PropertyValue::Bool(value),
382 ),
383 DeviceProperty::FanWorkMode(value) => {
384 (OBPropertyID::FanWorkModeInt, PropertyValue::Int(value))
385 }
386 DeviceProperty::DepthAlignHardwareMode(value) => (
387 OBPropertyID::DepthAlignHardwareModeInt,
388 PropertyValue::Int(value),
389 ),
390 DeviceProperty::AntiCollusionActivationStatus(value) => (
391 OBPropertyID::AntiCollusionActivationStatusBool,
392 PropertyValue::Bool(value),
393 ),
394 DeviceProperty::DepthPrecisionLevel(value) => (
395 OBPropertyID::DepthPrecisionLevelInt,
396 PropertyValue::Int(value),
397 ),
398 DeviceProperty::TofFilterRange(value) => {
399 (OBPropertyID::TofFilterRangeInt, PropertyValue::Int(value))
400 }
401 DeviceProperty::LaserMode(value) => {
402 (OBPropertyID::LaserModeInt, PropertyValue::Int(value))
403 }
404 DeviceProperty::Rectify2(value) => {
405 (OBPropertyID::Rectify2Bool, PropertyValue::Bool(value))
406 }
407 DeviceProperty::ColorMirror(value) => {
408 (OBPropertyID::ColorMirrorBool, PropertyValue::Bool(value))
409 }
410 DeviceProperty::ColorFlip(value) => {
411 (OBPropertyID::ColorFlipBool, PropertyValue::Bool(value))
412 }
413 DeviceProperty::IndicatorLight(value) => {
414 (OBPropertyID::IndicatorLightBool, PropertyValue::Bool(value))
415 }
416 DeviceProperty::DisparityToDepth(value) => (
417 OBPropertyID::DisparityToDepthBool,
418 PropertyValue::Bool(value),
419 ),
420 DeviceProperty::BRT(value) => (OBPropertyID::BRTBool, PropertyValue::Bool(value)),
421 DeviceProperty::Watchdog(value) => {
422 (OBPropertyID::WatchdogBool, PropertyValue::Bool(value))
423 }
424 DeviceProperty::ExternalSignalReset(value) => (
425 OBPropertyID::ExternalSignalResetBool,
426 PropertyValue::Bool(value),
427 ),
428 DeviceProperty::Heartbeat(value) => {
429 (OBPropertyID::HeartbeatBool, PropertyValue::Bool(value))
430 }
431 DeviceProperty::DepthCroppingMode(value) => (
432 OBPropertyID::DepthCroppingModeInt,
433 PropertyValue::Int(value),
434 ),
435 DeviceProperty::D2CPreprocess(value) => {
436 (OBPropertyID::D2CPreprocessBool, PropertyValue::Bool(value))
437 }
438 DeviceProperty::GPM(value) => (OBPropertyID::GPMBool, PropertyValue::Bool(value)),
439 DeviceProperty::RGBCustomCrop(value) => {
440 (OBPropertyID::RGBCustomCropBool, PropertyValue::Bool(value))
441 }
442 DeviceProperty::DeviceWorkMode(value) => {
443 (OBPropertyID::DeviceWorkModeInt, PropertyValue::Int(value))
444 }
445 DeviceProperty::DeviceCommunicationType(value) => (
446 OBPropertyID::DeviceCommunicationTypeInt,
447 PropertyValue::Int(value),
448 ),
449 DeviceProperty::SwitchIRMode(value) => {
450 (OBPropertyID::SwitchIRModeInt, PropertyValue::Int(value))
451 }
452 DeviceProperty::LaserPowerLevelControl(value) => (
453 OBPropertyID::LaserPowerLevelControlInt,
454 PropertyValue::Int(value),
455 ),
456 DeviceProperty::LDPMeasureDistance(value) => (
457 OBPropertyID::LDPMeasureDistanceInt,
458 PropertyValue::Int(value),
459 ),
460 DeviceProperty::TimerResetSignal(value) => (
461 OBPropertyID::TimerResetSignalBool,
462 PropertyValue::Bool(value),
463 ),
464 DeviceProperty::TimerResetTriggerOutEnable(value) => (
465 OBPropertyID::TimerResetTriggerOutEnableBool,
466 PropertyValue::Bool(value),
467 ),
468 DeviceProperty::TimerResetDelayUs(value) => (
469 OBPropertyID::TimerResetDelayUsInt,
470 PropertyValue::Int(value),
471 ),
472 DeviceProperty::CaptureImageSignal(value) => (
473 OBPropertyID::CaptureImageSignalBool,
474 PropertyValue::Bool(value),
475 ),
476 DeviceProperty::IRRightMirror(value) => {
477 (OBPropertyID::IRRightMirrorBool, PropertyValue::Bool(value))
478 }
479 DeviceProperty::CaptureImageFrameNumber(value) => (
480 OBPropertyID::CaptureImageFrameNumberInt,
481 PropertyValue::Int(value),
482 ),
483 DeviceProperty::IRRightFlip(value) => {
484 (OBPropertyID::IRRightFlipBool, PropertyValue::Bool(value))
485 }
486 DeviceProperty::ColorRotate(value) => {
487 (OBPropertyID::ColorRotateInt, PropertyValue::Int(value))
488 }
489 DeviceProperty::IRRotate(value) => {
490 (OBPropertyID::IRRotateInt, PropertyValue::Int(value))
491 }
492 DeviceProperty::IRRightRotate(value) => {
493 (OBPropertyID::IRRightRotateInt, PropertyValue::Int(value))
494 }
495 DeviceProperty::DepthRotate(value) => {
496 (OBPropertyID::DepthRotateInt, PropertyValue::Int(value))
497 }
498 DeviceProperty::LaserPowerActualLevel(value) => (
499 OBPropertyID::LaserPowerActualLevelInt,
500 PropertyValue::Int(value),
501 ),
502 DeviceProperty::USBPowerState(value) => {
503 (OBPropertyID::USBPowerStateInt, PropertyValue::Int(value))
504 }
505 DeviceProperty::DCPowerState(value) => {
506 (OBPropertyID::DCPowerStateInt, PropertyValue::Int(value))
507 }
508 DeviceProperty::DeviceDevelopmentMode(value) => (
509 OBPropertyID::DeviceDevelopmentModeInt,
510 PropertyValue::Int(value),
511 ),
512 DeviceProperty::SyncSignalTriggerOut(value) => (
513 OBPropertyID::SyncSignalTriggerOutBool,
514 PropertyValue::Bool(value),
515 ),
516 DeviceProperty::RestoreFactorySettings(value) => (
517 OBPropertyID::RestoreFactorySettingsBool,
518 PropertyValue::Bool(value),
519 ),
520 DeviceProperty::BootIntoRecoveryMode(value) => (
521 OBPropertyID::BootIntoRecoveryModeBool,
522 PropertyValue::Bool(value),
523 ),
524 DeviceProperty::DeviceInRecoveryMode(value) => (
525 OBPropertyID::DeviceInRecoveryModeBool,
526 PropertyValue::Bool(value),
527 ),
528 DeviceProperty::CaptureIntervalMode(value) => (
529 OBPropertyID::CaptureIntervalModeInt,
530 PropertyValue::Int(value),
531 ),
532 DeviceProperty::CaptureImageTimeInterval(value) => (
533 OBPropertyID::CaptureImageTimeIntervalInt,
534 PropertyValue::Int(value),
535 ),
536 DeviceProperty::CaptureImageNumberInterval(value) => (
537 OBPropertyID::CaptureImageNumberIntervalInt,
538 PropertyValue::Int(value),
539 ),
540 DeviceProperty::TimerResetEnable(value) => (
541 OBPropertyID::TimerResetEnableBool,
542 PropertyValue::Bool(value),
543 ),
544 DeviceProperty::DeviceUSB2RepeatIdentify(value) => (
545 OBPropertyID::DeviceUSB2RepeatIdentifyBool,
546 PropertyValue::Bool(value),
547 ),
548 DeviceProperty::DeviceRebootDelay(value) => (
549 OBPropertyID::DeviceRebootDelayInt,
550 PropertyValue::Int(value),
551 ),
552 DeviceProperty::LaserOvercurrentProtectionStatus(value) => (
553 OBPropertyID::LaserOvercurrentProtectionStatusBool,
554 PropertyValue::Bool(value),
555 ),
556 DeviceProperty::LaserPulseWidthProtectionStatus(value) => (
557 OBPropertyID::LaserPulseWidthProtectionStatusBool,
558 PropertyValue::Bool(value),
559 ),
560 DeviceProperty::LaserAlwaysOn(value) => {
561 (OBPropertyID::LaserAlwaysOnBool, PropertyValue::Bool(value))
562 }
563 DeviceProperty::LaserOnOffPattern(value) => (
564 OBPropertyID::LaserOnOffPatternInt,
565 PropertyValue::Int(value),
566 ),
567 DeviceProperty::DepthUnitFlexibleAdjustment(value) => (
568 OBPropertyID::DepthUnitFlexibleAdjustmentFloat,
569 PropertyValue::Float(value),
570 ),
571 DeviceProperty::LaserControl(value) => {
572 (OBPropertyID::LaserControlInt, PropertyValue::Int(value))
573 }
574 DeviceProperty::IRBrightness(value) => {
575 (OBPropertyID::IRBrightnessInt, PropertyValue::Int(value))
576 }
577 DeviceProperty::SlaveDeviceSyncStatus(value) => (
578 OBPropertyID::SlaveDeviceSyncStatusBool,
579 PropertyValue::Bool(value),
580 ),
581 DeviceProperty::ColorAEMaxExposure(value) => (
582 OBPropertyID::ColorAEMaxExposureInt,
583 PropertyValue::Int(value),
584 ),
585 DeviceProperty::IRAEMaxExposure(value) => {
586 (OBPropertyID::IRAEMaxExposureInt, PropertyValue::Int(value))
587 }
588 DeviceProperty::DispSearchRangeMode(value) => (
589 OBPropertyID::DispSearchRangeModeInt,
590 PropertyValue::Int(value),
591 ),
592 DeviceProperty::LaserHighTemperatureProtect(value) => (
593 OBPropertyID::LaserHighTemperatureProtectBool,
594 PropertyValue::Bool(value),
595 ),
596 DeviceProperty::LowExposureLaserControl(value) => (
597 OBPropertyID::LowExposureLaserControlBool,
598 PropertyValue::Bool(value),
599 ),
600 DeviceProperty::CheckPPSSyncInSignal(value) => (
601 OBPropertyID::CheckPPSSyncInSignalBool,
602 PropertyValue::Bool(value),
603 ),
604 DeviceProperty::DispSearchOffset(value) => {
605 (OBPropertyID::DispSearchOffsetInt, PropertyValue::Int(value))
606 }
607 DeviceProperty::DeviceRepower(value) => {
608 (OBPropertyID::DeviceRepowerBool, PropertyValue::Bool(value))
609 }
610 DeviceProperty::FrameInterleaveConfigIndex(value) => (
611 OBPropertyID::FrameInterleaveConfigIndexInt,
612 PropertyValue::Int(value),
613 ),
614 DeviceProperty::FrameInterleaveEnable(value) => (
615 OBPropertyID::FrameInterleaveEnableBool,
616 PropertyValue::Bool(value),
617 ),
618 DeviceProperty::FrameInterleaveLaserPatternSyncDelay(value) => (
619 OBPropertyID::FrameInterleaveLaserPatternSyncDelayInt,
620 PropertyValue::Int(value),
621 ),
622 DeviceProperty::OnChipCalibrationHealthCheck(value) => (
623 OBPropertyID::OnChipCalibrationHealthCheckFloat,
624 PropertyValue::Float(value),
625 ),
626 DeviceProperty::OnChipCalibrationEnable(value) => (
627 OBPropertyID::OnChipCalibrationEnableBool,
628 PropertyValue::Bool(value),
629 ),
630 DeviceProperty::HWNoiseRemoveFilterEnable(value) => (
631 OBPropertyID::HWNoiseRemoveFilterEnableBool,
632 PropertyValue::Bool(value),
633 ),
634 DeviceProperty::HWNoiseRemoveFilterThreshold(value) => (
635 OBPropertyID::HWNoiseRemoveFilterThresholdFloat,
636 PropertyValue::Float(value),
637 ),
638 DeviceProperty::DeviceAutoCaptureEnable(value) => (
639 OBPropertyID::DeviceAutoCaptureEnableBool,
640 PropertyValue::Bool(value),
641 ),
642 DeviceProperty::DeviceAutoCaptureIntervalTime(value) => (
643 OBPropertyID::DeviceAutoCaptureIntervalTimeInt,
644 PropertyValue::Int(value),
645 ),
646 DeviceProperty::DevicePTPClockSyncEnable(value) => (
647 OBPropertyID::DevicePTPClockSyncEnableBool,
648 PropertyValue::Bool(value),
649 ),
650 DeviceProperty::DepthWithConfidenceStreamEnable(value) => (
651 OBPropertyID::DepthWithConfidenceStreamEnableBool,
652 PropertyValue::Bool(value),
653 ),
654 DeviceProperty::ConfidenceStreamFilter(value) => (
655 OBPropertyID::ConfidenceStreamFilterBool,
656 PropertyValue::Bool(value),
657 ),
658 DeviceProperty::ConfidenceStreamFilterThreshold(value) => (
659 OBPropertyID::ConfidenceStreamFilterThresholdInt,
660 PropertyValue::Int(value),
661 ),
662 DeviceProperty::ConfidenceMirror(value) => (
663 OBPropertyID::ConfidenceMirrorBool,
664 PropertyValue::Bool(value),
665 ),
666 DeviceProperty::ConfidenceFlip(value) => {
667 (OBPropertyID::ConfidenceFlipBool, PropertyValue::Bool(value))
668 }
669 DeviceProperty::ConfidenceRotate(value) => {
670 (OBPropertyID::ConfidenceRotateInt, PropertyValue::Int(value))
671 }
672 DeviceProperty::ColorAutoExposure(value) => (
673 OBPropertyID::ColorAutoExposureBool,
674 PropertyValue::Bool(value),
675 ),
676 DeviceProperty::ColorExposure(value) => {
677 (OBPropertyID::ColorExposureInt, PropertyValue::Int(value))
678 }
679 DeviceProperty::ColorGain(value) => {
680 (OBPropertyID::ColorGainInt, PropertyValue::Int(value))
681 }
682 DeviceProperty::ColorAutoWhiteBalance(value) => (
683 OBPropertyID::ColorAutoWhiteBalanceBool,
684 PropertyValue::Bool(value),
685 ),
686 DeviceProperty::ColorWhiteBalance(value) => (
687 OBPropertyID::ColorWhiteBalanceInt,
688 PropertyValue::Int(value),
689 ),
690 DeviceProperty::ColorBrightness(value) => {
691 (OBPropertyID::ColorBrightnessInt, PropertyValue::Int(value))
692 }
693 DeviceProperty::ColorSharpness(value) => {
694 (OBPropertyID::ColorSharpnessInt, PropertyValue::Int(value))
695 }
696 DeviceProperty::ColorShutter(value) => {
697 (OBPropertyID::ColorShutterInt, PropertyValue::Int(value))
698 }
699 DeviceProperty::ColorSaturation(value) => {
700 (OBPropertyID::ColorSaturationInt, PropertyValue::Int(value))
701 }
702 DeviceProperty::ColorContrast(value) => {
703 (OBPropertyID::ColorContrastInt, PropertyValue::Int(value))
704 }
705 DeviceProperty::ColorGamma(value) => {
706 (OBPropertyID::ColorGammaInt, PropertyValue::Int(value))
707 }
708 DeviceProperty::ColorRoll(value) => {
709 (OBPropertyID::ColorRollInt, PropertyValue::Int(value))
710 }
711 DeviceProperty::ColorAutoExposurePriority(value) => (
712 OBPropertyID::ColorAutoExposurePriorityInt,
713 PropertyValue::Int(value),
714 ),
715 DeviceProperty::ColorBacklightCompensation(value) => (
716 OBPropertyID::ColorBacklightCompensationInt,
717 PropertyValue::Int(value),
718 ),
719 DeviceProperty::ColorHue(value) => {
720 (OBPropertyID::ColorHueInt, PropertyValue::Int(value))
721 }
722 DeviceProperty::ColorPowerLineFrequency(value) => (
723 OBPropertyID::ColorPowerLineFrequencyInt,
724 PropertyValue::Int(value),
725 ),
726 DeviceProperty::DepthAutoExposure(value) => (
727 OBPropertyID::DepthAutoExposureBool,
728 PropertyValue::Bool(value),
729 ),
730 DeviceProperty::DepthExposure(value) => {
731 (OBPropertyID::DepthExposureInt, PropertyValue::Int(value))
732 }
733 DeviceProperty::DepthGain(value) => {
734 (OBPropertyID::DepthGainInt, PropertyValue::Int(value))
735 }
736 DeviceProperty::IRAutoExposure(value) => {
737 (OBPropertyID::IRAutoExposureBool, PropertyValue::Bool(value))
738 }
739 DeviceProperty::IRExposure(value) => {
740 (OBPropertyID::IRExposureInt, PropertyValue::Int(value))
741 }
742 DeviceProperty::IRGain(value) => (OBPropertyID::IRGainInt, PropertyValue::Int(value)),
743 DeviceProperty::IRChannelDataSource(value) => (
744 OBPropertyID::IRChannelDataSourceInt,
745 PropertyValue::Int(value),
746 ),
747 DeviceProperty::DepthRMFilter(value) => {
748 (OBPropertyID::DepthRMFilterBool, PropertyValue::Bool(value))
749 }
750 DeviceProperty::ColorMaximalGain(value) => {
751 (OBPropertyID::ColorMaximalGainInt, PropertyValue::Int(value))
752 }
753 DeviceProperty::ColorMaximalShutter(value) => (
754 OBPropertyID::ColorMaximalShutterInt,
755 PropertyValue::Int(value),
756 ),
757 DeviceProperty::IRShortExposure(value) => (
758 OBPropertyID::IRShortExposureBool,
759 PropertyValue::Bool(value),
760 ),
761 DeviceProperty::ColorHDR(value) => {
762 (OBPropertyID::ColorHDRBool, PropertyValue::Bool(value))
763 }
764 DeviceProperty::IRLongExposure(value) => {
765 (OBPropertyID::IRLongExposureBool, PropertyValue::Bool(value))
766 }
767 DeviceProperty::SkipFrame(value) => {
768 (OBPropertyID::SkipFrameBool, PropertyValue::Bool(value))
769 }
770 DeviceProperty::HDRMerge(value) => {
771 (OBPropertyID::HDRMergeBool, PropertyValue::Bool(value))
772 }
773 DeviceProperty::ColorFocus(value) => {
774 (OBPropertyID::ColorFocusInt, PropertyValue::Int(value))
775 }
776 DeviceProperty::IRRectify(value) => {
777 (OBPropertyID::IRRectifyBool, PropertyValue::Bool(value))
778 }
779 DeviceProperty::DepthAutoExposurePriority(value) => (
780 OBPropertyID::DepthAutoExposurePriorityInt,
781 PropertyValue::Int(value),
782 ),
783 DeviceProperty::SDKDisparityToDepth(value) => (
784 OBPropertyID::SDKDisparityToDepthBool,
785 PropertyValue::Bool(value),
786 ),
787 DeviceProperty::SDKDepthFrameUnpack(value) => (
788 OBPropertyID::SDKDepthFrameUnpackBool,
789 PropertyValue::Bool(value),
790 ),
791 DeviceProperty::SDKIRFrameUnpack(value) => (
792 OBPropertyID::SDKIRFrameUnpackBool,
793 PropertyValue::Bool(value),
794 ),
795 DeviceProperty::SDKAccelFrameTransformed(value) => (
796 OBPropertyID::SDKAccelFrameTransformedBool,
797 PropertyValue::Bool(value),
798 ),
799 DeviceProperty::SDKGyroFrameTransformed(value) => (
800 OBPropertyID::SDKGyroFrameTransformedBool,
801 PropertyValue::Bool(value),
802 ),
803 DeviceProperty::SDKIRLeftFrameUnpack(value) => (
804 OBPropertyID::SDKIRLeftFrameUnpackBool,
805 PropertyValue::Bool(value),
806 ),
807 DeviceProperty::SDKIRRightFrameUnpack(value) => (
808 OBPropertyID::SDKIRRightFrameUnpackBool,
809 PropertyValue::Bool(value),
810 ),
811 DeviceProperty::NetworkBandwidthType(value) => (
812 OBPropertyID::NetworkBandwidthTypeInt,
813 PropertyValue::Int(value),
814 ),
815 DeviceProperty::DevicePerformanceMode(value) => (
816 OBPropertyID::DevicePerformanceModeInt,
817 PropertyValue::Int(value),
818 ),
819 DeviceProperty::RawDataCameraCalibJsonFile(value) => (
820 OBPropertyID::RawDataCameraCalibJsonFile,
821 PropertyValue::Int(value),
822 ),
823 DeviceProperty::DebugESGMConfidence(value) => (
824 OBPropertyID::DebugESGMConfidenceFloat,
825 PropertyValue::Float(value),
826 ),
827 }
828 }
829}