zivu_types.h 778 B

12345678910111213141516171819202122232425262728293031323334353637383940
  1. #ifndef CX_ZIVUOS_ZIVU_TYPES_H_INCLUDED
  2. #define CX_ZIVUOS_ZIVU_TYPES_H_INCLUDED
  3. #include <stdint.h>
  4. #include <stddef.h>
  5. #include <stdbool.h>
  6. /* Inform to deny warnings. */
  7. struct zv_kernel_s;
  8. struct zv_process_s;
  9. struct zv_latch_s;
  10. typedef uint32_t zv_pid_t;
  11. typedef size_t zv_size_t;
  12. typedef uint8_t zv_priority_t;
  13. #define ZV_MAX_SIZE_T SIZE_MAX
  14. #define ZV_MAX_PID_T UINT32_MAX
  15. typedef enum zv_checker_result_e {
  16. NOT_READY,
  17. READY
  18. } zv_checker_result_t;
  19. typedef enum zv_state_e (* zv_worker_t) (
  20. struct zv_kernel_s *,
  21. struct zv_process_s *
  22. );
  23. typedef zv_checker_result_t (*zv_checker_t) (
  24. struct zv_kernel_s *,
  25. struct zv_process_s *
  26. );
  27. typedef union zv_universal_param_u {
  28. void *pointer;
  29. intptr_t number;
  30. } zv_universal_param_t;
  31. #endif