38 #define XRT_MAX_DEVICES_PER_PROBE 16 97 XRT_BUS_TYPE_BLUETOOTH,
105 XRT_PROBER_STRING_MANUFACTURER,
106 XRT_PROBER_STRING_PRODUCT,
107 XRT_PROBER_STRING_SERIAL_NUMBER,
128 uint8_t usb_dev_class;
157 int (*open_hid_interface)(
struct xrt_prober *xp,
161 int (*open_video_device)(
struct xrt_prober *xp,
165 int (*list_video_devices)(
struct xrt_prober *xp,
168 int (*get_string_descriptor)(
struct xrt_prober *xp,
171 unsigned char *buffer,
186 return xp->probe(xp);
210 return xp->select(xp, xdevs, num_xdevs);
219 xrt_prober_open_hid_interface(
struct xrt_prober *xp,
224 return xp->open_hid_interface(xp, xpdev, interface, out_hid_dev);
233 xrt_prober_get_string_descriptor(
struct xrt_prober *xp,
236 unsigned char *buffer,
239 return xp->get_string_descriptor(xp, xpdev, which_string, buffer,
251 return xp->can_open(xp, xpdev);
261 xrt_prober_open_video_device(
struct xrt_prober *xp,
266 return xp->open_video_device(xp, xpdev, xfctx, out_xfs);
275 xrt_prober_list_video_devices(
struct xrt_prober *xp,
279 return xp->list_video_devices(xp, cb, ptr);
288 xrt_prober_destroy(
struct xrt_prober **xp_ptr)
317 xrt_prober_match_string(
struct xrt_prober *xp,
320 const char *to_match);
Tracking factory.
Definition: xrt_tracking.h:71
int xrt_prober_create_with_lists(struct xrt_prober **out_xp, struct xrt_prober_entry_lists *list)
Used by the target binary to create the prober with a list of drivers.
Definition: p_prober.c:93
int xrt_prober_create(struct xrt_prober **out_xp)
Call this function to create the xrt_prober.
Definition: cli_prober.c:43
enum xrt_device_name name
Enum identifier of the device.
Definition: xrt_device.h:206
struct xrt_prober_entry ** entries
A a null terminated list of null terminated lists of xrt_prober_entry.
Definition: xrt_prober.h:77
Header defining a xrt HMD device.
xrt_prober_string
String descriptor types.
Definition: xrt_prober.h:103
xrt_bus_type
Bus type of a device.
Definition: xrt_prober.h:93
The main prober that probes and manages found but not opened HMD devices that are connected to the sy...
Definition: xrt_prober.h:147
Main root of all of the probing device.
Definition: xrt_prober.h:71
A simple prober to probe for a HMD device connected to the system.
Definition: xrt_prober.h:333
Object used to track all sinks and frame producers in a graph.
Definition: xrt_frame.h:87
Representing a single hid interface on a device.
Definition: os_hid.h:26
struct xrt_tracking_factory * tracking
Factory for producing tracked objects.
Definition: xrt_prober.h:150
Entry for a single device.
Definition: xrt_prober.h:45
struct xrt_auto_prober *(* xrt_auto_prober_creator)()
Function for creating a auto prober.
Definition: xrt_prober.h:64
xrt_auto_prober_creator * auto_probers
A null terminated list of xrt_auto_prober creation functions.
Definition: xrt_prober.h:82
void(* xrt_prober_list_video_cb)(struct xrt_prober *xp, struct xrt_prober_device *pdev, const char *name, void *ptr)
Callback for listing video devices.
Definition: xrt_prober.h:136
struct xrt_prober_entry_lists * next
Allows you to chain multiple prober entry lists.
Definition: xrt_prober.h:87
A probed device, may or may not be opened.
Definition: xrt_prober.h:121
A single HMD or input device.
Definition: xrt_device.h:203
Frameserver that generates frame, multiple subframes (like stereo and mipmaps) can be generate in one...
Definition: xrt_frameserver.h:51