UCX  1.6
Unified Communication X
status.h
1 
9 #ifndef UCS_TYPES_STATUS_H_
10 #define UCS_TYPES_STATUS_H_
11 
12 #include <ucs/sys/compiler_def.h>
13 
14 BEGIN_C_DECLS
15 
45 typedef enum {
46  /* Operation completed successfully */
47  UCS_OK = 0,
48 
49  /* Operation is queued and still in progress */
51 
52  /* Failure codes */
67  UCS_ERR_BUSY = -15,
76 
82 
83  UCS_ERR_LAST = -100
84 } UCS_S_PACKED ucs_status_t ;
85 
86 
87 #define UCS_IS_LINK_ERROR(_code) \
88  (((_code) <= UCS_ERR_FIRST_LINK_FAILURE) && \
89  ((_code) >= UCS_ERR_LAST_LINK_FAILURE)
90 
91 #define UCS_IS_ENDPOINT_ERROR(_code) \
92  (((_code) <= UCS_ERR_FIRST_ENDPOINT_FAILURE) && \
93  ((_code) >= UCS_ERR_LAST_ENDPOINT_FAILURE)
94 
104 typedef void *ucs_status_ptr_t;
105 
106 #define UCS_PTR_STATUS(_ptr) ((ucs_status_t)(intptr_t)(_ptr))
107 #define UCS_PTR_IS_ERR(_ptr) (((uintptr_t)(_ptr)) >= ((uintptr_t)UCS_ERR_LAST))
108 #define UCS_PTR_IS_PTR(_ptr) (((uintptr_t)(_ptr) - 1) < ((uintptr_t)UCS_ERR_LAST - 1))
109 #define UCS_STATUS_PTR(_status) ((void*)(intptr_t)(_status))
110 #define UCS_STATUS_IS_ERR(_status) (_status < 0)
111 
112 
118 const char *ucs_status_string(ucs_status_t status);
119 
120 END_C_DECLS
121 
122 #endif
Definition: status.h:74
Definition: status.h:81
Definition: status.h:73
Definition: status.h:62
Definition: status.h:75
Definition: status.h:69
Definition: status.h:67
Definition: status.h:63
Definition: status.h:80
Definition: status.h:65
Definition: status.h:60
Definition: status.h:57
Definition: status.h:77
Definition: status.h:55
Definition: status.h:56
ucs_status_t
Status codes.
Definition: status.h:45
Definition: status.h:72
Definition: status.h:54
Definition: status.h:83
Definition: status.h:78
Definition: status.h:58
Definition: status.h:47
Definition: status.h:53
Definition: status.h:59
void * ucs_status_ptr_t
Status pointer.
Definition: status.h:104
Definition: status.h:68
Definition: status.h:61
Definition: status.h:66
Definition: status.h:50
Definition: status.h:70
Definition: status.h:64
Definition: status.h:79
Definition: status.h:71