#include "devices.h" #include "stream.h" #ifndef __HANDSHAKE_H #define __HANDSHAKE_H #define EXPAND_AS_ENUM(a, b) a, #define EXPAND_AS_JUMPTABLE(a, b) b, #define EXPAND_HS_PROTOTYPES(a, b) hs_status_t b(p_stream_t, void**); typedef hs_status_t (*hs_func_t)(p_stream_t, void**); #define HS_STATE_TABLE(ENTRY) \ ENTRY(HS_STATE_0, HS_func_0) \ ENTRY(HS_STATE_1, HS_func_1) \ ENTRY(HS_STATE_2, HS_func_2) \ ENTRY(HS_STATE_3, HS_func_3) \ enum { HS_STATE_TABLE(EXPAND_AS_ENUM) NUM_HS_STATES, HS_STATE_FAIL, HS_STATE_SUCCESS, }; HS_STATE_TABLE(EXPAND_HS_PROTOTYPES); #endif /* __HANDSHAKE_H */