+80
-69
src/xrt/include/xrt/xrt_defines.h
+80
-69
src/xrt/include/xrt/xrt_defines.h
···
716
716
*
717
717
*/
718
718
719
+
// clang-format off
720
+
#define XRT_DEVICE_NAME_LIST(_) \
721
+
_(XRT_DEVICE_INVALID) \
722
+
\
723
+
_(XRT_DEVICE_GENERIC_HMD) \
724
+
\
725
+
/* Vive stuff. */ \
726
+
_(XRT_DEVICE_VIVE_PRO) \
727
+
_(XRT_DEVICE_VIVE_WAND) \
728
+
_(XRT_DEVICE_VIVE_TRACKER) /* Generic, only used for bindings. */ \
729
+
_(XRT_DEVICE_VIVE_TRACKER_GEN1) \
730
+
_(XRT_DEVICE_VIVE_TRACKER_GEN2) \
731
+
_(XRT_DEVICE_VIVE_TRACKER_GEN3) \
732
+
_(XRT_DEVICE_VIVE_TRACKER_TUNDRA) \
733
+
\
734
+
/* "Controllers" somewhat sorted as listed in spec. */\
735
+
_(XRT_DEVICE_SIMPLE_CONTROLLER) \
736
+
_(XRT_DEVICE_DAYDREAM) \
737
+
_(XRT_DEVICE_WMR_CONTROLLER) \
738
+
_(XRT_DEVICE_XBOX_CONTROLLER) \
739
+
_(XRT_DEVICE_GO_CONTROLLER) \
740
+
_(XRT_DEVICE_TOUCH_CONTROLLER) \
741
+
_(XRT_DEVICE_INDEX_CONTROLLER) \
742
+
\
743
+
_(XRT_DEVICE_HP_REVERB_G2_CONTROLLER) \
744
+
_(XRT_DEVICE_SAMSUNG_ODYSSEY_CONTROLLER) \
745
+
_(XRT_DEVICE_ML2_CONTROLLER) \
746
+
_(XRT_DEVICE_OPPO_MR_CONTROLLER) \
747
+
\
748
+
_(XRT_DEVICE_HAND_INTERACTION) \
749
+
\
750
+
_(XRT_DEVICE_EYE_GAZE_INTERACTION) \
751
+
\
752
+
_(XRT_DEVICE_PSMV) \
753
+
_(XRT_DEVICE_PSSENSE) \
754
+
_(XRT_DEVICE_HYDRA) \
755
+
_(XRT_DEVICE_RIFT_REMOTE) \
756
+
_(XRT_DEVICE_BLUBUR_S1) \
757
+
_(XRT_DEVICE_PSVR2) \
758
+
\
759
+
/* Other misc stuff. */\
760
+
_(XRT_DEVICE_HAND_TRACKER) \
761
+
_(XRT_DEVICE_REALSENSE) \
762
+
_(XRT_DEVICE_DEPTHAI) \
763
+
\
764
+
/*! XR_EXT_hand_interaction */\
765
+
_(XRT_DEVICE_EXT_HAND_INTERACTION) \
766
+
\
767
+
/*! XR_HTC_facial_tracking */\
768
+
_(XRT_DEVICE_HTC_FACE_TRACKING) \
769
+
\
770
+
/*! XR_FB_body_tracking */\
771
+
_(XRT_DEVICE_FB_BODY_TRACKING) \
772
+
\
773
+
/*! XR_FB_face_tracking2 */\
774
+
_(XRT_DEVICE_FB_FACE_TRACKING2) \
775
+
\
776
+
/* added in OpenXR 1.1 */\
777
+
_(XRT_DEVICE_PICO_NEO3_CONTROLLER) \
778
+
_(XRT_DEVICE_PICO4_CONTROLLER) \
779
+
_(XRT_DEVICE_PICO_G3_CONTROLLER) \
780
+
\
781
+
_(XRT_DEVICE_VIVE_COSMOS_CONTROLLER) \
782
+
_(XRT_DEVICE_VIVE_FOCUS3_CONTROLLER) \
783
+
\
784
+
_(XRT_DEVICE_TOUCH_PRO_CONTROLLER) \
785
+
_(XRT_DEVICE_TOUCH_PLUS_CONTROLLER) \
786
+
_(XRT_DEVICE_TOUCH_CONTROLLER_RIFT_CV1) \
787
+
_(XRT_DEVICE_TOUCH_CONTROLLER_QUEST_1_RIFT_S) \
788
+
_(XRT_DEVICE_TOUCH_CONTROLLER_QUEST_2) \
789
+
\
790
+
/* Hand based controller emulation. */\
791
+
_(XRT_DEVICE_HAND_CTRL_EMU) \
792
+
\
793
+
/* Please keep this comment and the trailing \ to reduce lines changed when adding entries. */
794
+
// clang-format on
795
+
719
796
/*!
720
797
* A enum that is used to name devices so that the
721
798
* state trackers can reason about the devices easier.
722
799
*/
723
800
enum xrt_device_name
724
801
{
725
-
XRT_DEVICE_INVALID = 0,
726
-
727
-
XRT_DEVICE_GENERIC_HMD = 1,
728
-
729
-
// Vive stuff.
730
-
XRT_DEVICE_VIVE_PRO,
731
-
XRT_DEVICE_VIVE_WAND,
732
-
XRT_DEVICE_VIVE_TRACKER, // Generic, only used for bindings.
733
-
XRT_DEVICE_VIVE_TRACKER_GEN1,
734
-
XRT_DEVICE_VIVE_TRACKER_GEN2,
735
-
XRT_DEVICE_VIVE_TRACKER_GEN3,
736
-
XRT_DEVICE_VIVE_TRACKER_TUNDRA,
737
-
738
-
// "Controllers" somewhat sorted as listed in spec.
739
-
XRT_DEVICE_SIMPLE_CONTROLLER,
740
-
XRT_DEVICE_DAYDREAM,
741
-
XRT_DEVICE_WMR_CONTROLLER,
742
-
XRT_DEVICE_XBOX_CONTROLLER,
743
-
XRT_DEVICE_GO_CONTROLLER,
744
-
XRT_DEVICE_TOUCH_CONTROLLER,
745
-
XRT_DEVICE_INDEX_CONTROLLER,
746
-
747
-
XRT_DEVICE_HP_REVERB_G2_CONTROLLER,
748
-
XRT_DEVICE_SAMSUNG_ODYSSEY_CONTROLLER,
749
-
XRT_DEVICE_ML2_CONTROLLER,
750
-
XRT_DEVICE_OPPO_MR_CONTROLLER,
751
-
752
-
XRT_DEVICE_HAND_INTERACTION,
753
-
754
-
XRT_DEVICE_EYE_GAZE_INTERACTION,
755
-
756
-
XRT_DEVICE_PSMV,
757
-
XRT_DEVICE_PSSENSE,
758
-
XRT_DEVICE_HYDRA,
759
-
XRT_DEVICE_RIFT_REMOTE,
760
-
XRT_DEVICE_BLUBUR_S1,
761
-
XRT_DEVICE_PSVR2,
802
+
#define XRT_DEVICE_NAME_TO_ENUM(NAME) NAME,
762
803
763
-
// Other misc stuff.
764
-
XRT_DEVICE_HAND_TRACKER,
765
-
XRT_DEVICE_REALSENSE,
766
-
XRT_DEVICE_DEPTHAI,
804
+
XRT_DEVICE_NAME_LIST(XRT_DEVICE_NAME_TO_ENUM)
767
805
768
-
//! XR_EXT_hand_interaction
769
-
XRT_DEVICE_EXT_HAND_INTERACTION,
770
-
771
-
//! XR_HTC_facial_tracking
772
-
XRT_DEVICE_HTC_FACE_TRACKING,
773
-
774
-
//! XR_FB_body_tracking
775
-
XRT_DEVICE_FB_BODY_TRACKING,
776
-
777
-
//! XR_FB_face_tracking2
778
-
XRT_DEVICE_FB_FACE_TRACKING2,
779
-
780
-
// added in OpenXR 1.1
781
-
XRT_DEVICE_PICO_NEO3_CONTROLLER,
782
-
XRT_DEVICE_PICO4_CONTROLLER,
783
-
XRT_DEVICE_PICO_G3_CONTROLLER,
784
-
785
-
XRT_DEVICE_VIVE_COSMOS_CONTROLLER,
786
-
XRT_DEVICE_VIVE_FOCUS3_CONTROLLER,
787
-
788
-
XRT_DEVICE_TOUCH_PRO_CONTROLLER,
789
-
XRT_DEVICE_TOUCH_PLUS_CONTROLLER,
790
-
XRT_DEVICE_TOUCH_CONTROLLER_RIFT_CV1,
791
-
XRT_DEVICE_TOUCH_CONTROLLER_QUEST_1_RIFT_S,
792
-
XRT_DEVICE_TOUCH_CONTROLLER_QUEST_2,
793
-
794
-
// Hand based controller emulation.
795
-
XRT_DEVICE_HAND_CTRL_EMU,
806
+
#undef XRT_DEVICE_NAME_TO_ENUM
796
807
};
797
808
798
809
/*!