|  | /* | 
|  | * Copyright (c) 2018 Intel Corporation | 
|  | * | 
|  | * SPDX-License-Identifier: Apache-2.0 | 
|  | */ | 
|  |  | 
|  | #ifndef __WRAPPER_H__ | 
|  | #define __WRAPPER_H__ | 
|  |  | 
|  | #include <kernel.h> | 
|  | #include <cmsis_os2.h> | 
|  |  | 
|  | #define TRUE    1 | 
|  | #define FALSE   0 | 
|  |  | 
|  | struct cv2_thread { | 
|  | sys_dnode_t node; | 
|  | struct k_thread z_thread; | 
|  | struct k_poll_signal poll_signal; | 
|  | struct k_poll_event poll_event; | 
|  | uint32_t signal_results; | 
|  | char name[16]; | 
|  | uint32_t attr_bits; | 
|  | struct k_sem join_guard; | 
|  | char has_joined; | 
|  | }; | 
|  |  | 
|  | struct cv2_timer { | 
|  | struct k_timer z_timer; | 
|  | osTimerType_t type; | 
|  | uint32_t status; | 
|  | char name[16]; | 
|  | void (*callback_function)(void *argument); | 
|  | void *arg; | 
|  | }; | 
|  |  | 
|  | struct cv2_mutex { | 
|  | struct k_mutex z_mutex; | 
|  | char name[16]; | 
|  | uint32_t state; | 
|  | }; | 
|  |  | 
|  | struct cv2_sem { | 
|  | struct k_sem z_semaphore; | 
|  | char name[16]; | 
|  | }; | 
|  |  | 
|  | struct cv2_mslab { | 
|  | struct k_mem_slab z_mslab; | 
|  | void *pool; | 
|  | char is_dynamic_allocation; | 
|  | char name[16]; | 
|  | }; | 
|  |  | 
|  | struct cv2_msgq { | 
|  | struct k_msgq z_msgq; | 
|  | void *pool; | 
|  | char is_dynamic_allocation; | 
|  | char name[16]; | 
|  | }; | 
|  |  | 
|  | struct cv2_event_flags { | 
|  | struct k_poll_signal poll_signal; | 
|  | struct k_poll_event poll_event; | 
|  | uint32_t signal_results; | 
|  | char name[16]; | 
|  | }; | 
|  |  | 
|  | extern osThreadId_t get_cmsis_thread_id(k_tid_t tid); | 
|  | extern void *is_cmsis_rtos_v2_thread(void *thread_id); | 
|  |  | 
|  | #endif |