#ifndef foomodemhfoo #define foomodemhfoo enum modem_state { MODEM_STATE_INIT, MODEM_STATE_AUDIO_SIMPLE, MODEM_STATE_AUDIO_SHBUF, MODEM_STATE_DONE }; #define MODEM_BUF_LEN (10*1024) struct modem { char *dev; int fd; char *ouput_buf; size_t output_buf_len; char *input_buf; size_t input_buf_len; enum modem_state state; pid_t child_pid; struct timeval timeout; }; struct modem *modem_open(const char *dev); void modem_close(struct modem *m); #endif