68 os_mutex_init(&unid->
mutex);
79 os_mutex_destroy(&unid->
mutex);
95 os_mutex_lock(&unid->
mutex);
106 os_mutex_unlock(&unid->
mutex);
118 uint32_t native_image_count,
120 uint32_t active_index,
140 uint32_t native_image_count,
142 uint32_t active_index,
static void u_native_images_debug_set_locked(struct u_native_images_debug *unid, xrt_limited_unique_id_t limited_unique_id, struct xrt_image_native *native_images, uint32_t native_image_count, const struct xrt_swapchain_create_info *xscci, uint32_t active_index, bool flip_y)
Helper function to update all variables, must be called with the lock held.
Definition u_native_images_debug.h:115
static void u_native_images_debug_clear(struct u_native_images_debug *unid)
Clear all variables atomically by holding the lock, still valid to use.
Definition u_native_images_debug.h:178
static void u_native_images_debug_unlock(struct u_native_images_debug *unid)
Simple lock helper.
Definition u_native_images_debug.h:104
static void u_native_images_debug_lock(struct u_native_images_debug *unid)
Simple lock helper.
Definition u_native_images_debug.h:93
static void u_native_images_debug_clear_locked(struct u_native_images_debug *unid)
Clear all variables, must be called with the lock held.
Definition u_native_images_debug.h:163
static void u_native_images_debug_set(struct u_native_images_debug *unid, xrt_limited_unique_id_t limited_unique_id, struct xrt_image_native *native_images, uint32_t native_image_count, const struct xrt_swapchain_create_info *xscci, uint32_t active_index, bool flip_y)
Updates all variables atomically by holding the lock.
Definition u_native_images_debug.h:137
static void u_native_images_debug_init(struct u_native_images_debug *unid)
Must be called before variable is tracked.
Definition u_native_images_debug.h:66
static void u_native_images_debug_destroy(struct u_native_images_debug *unid)
Must not be called while variable longer tracked, after u_var_remove_root.
Definition u_native_images_debug.h:77
Wrapper around OS threading native functions.
A wrapper around a native mutex.
Definition os_threading.h:69
A struct for debugging one or more native images.
Definition u_native_images_debug.h:28
uint32_t active_index
The native image that was last filled in by the source, only valid if native_images is non-null,...
Definition u_native_images_debug.h:54
struct os_mutex mutex
Is initialised/destroyed when added or root is removed.
Definition u_native_images_debug.h:30
struct xrt_image_native * native_images
List to current set of native images, protected by mutex.
Definition u_native_images_debug.h:39
const struct xrt_swapchain_create_info * xscci
Information needed to import the native images, information in the struct is immutable,...
Definition u_native_images_debug.h:48
bool flip_y
Should the image be flipped in y direction.
Definition u_native_images_debug.h:57
xrt_limited_unique_id_t limited_unique_id
Process unique id for the set of images, protected by mutex, allows caching of imports.
Definition u_native_images_debug.h:36
uint32_t native_image_count
Count of native_images, protected by mutex.
Definition u_native_images_debug.h:42
A single image of a swapchain based on native buffer handles.
Definition xrt_compositor.h:2186
A limited unique id, it is only unique for the process it is in, so must not be used or synchronized ...
Definition xrt_defines.h:82
Swapchain creation info.
Definition xrt_compositor.h:895
Header declaring XRT graphics interfaces.