Go to the documentation of this file.
    5 #ifndef SPA_UTILS_RESULT_H 
    6 #define SPA_UTILS_RESULT_H 
   25 #define SPA_ASYNC_BIT                   (1 << 30) 
   26 #define SPA_ASYNC_SEQ_MASK              (SPA_ASYNC_BIT - 1) 
   27 #define SPA_ASYNC_MASK                  (~SPA_ASYNC_SEQ_MASK) 
   29 #define SPA_RESULT_IS_OK(res)           ((res) >= 0) 
   30 #define SPA_RESULT_IS_ERROR(res)        ((res) < 0) 
   31 #define SPA_RESULT_IS_ASYNC(res)        (((res) & SPA_ASYNC_MASK) == SPA_ASYNC_BIT) 
   33 #define SPA_RESULT_ASYNC_SEQ(res)       ((res) & SPA_ASYNC_SEQ_MASK) 
   34 #define SPA_RESULT_RETURN_ASYNC(seq)    (SPA_ASYNC_BIT | SPA_RESULT_ASYNC_SEQ(seq)) 
   36 #define spa_strerror(err)               \ 
   39         if (SPA_RESULT_IS_ASYNC(err))   \