blob: 81935bf9a559a87b14f6055071e4217d7b0a75ff [file] [log] [blame]
Bram Moolenaare0874f82016-01-24 20:36:41 +01001/* channel.c */
Bram Moolenaar6463ca22016-02-13 17:04:46 +01002void ch_logfile(FILE *file);
Bram Moolenaar81661fb2016-02-18 22:23:34 +01003int ch_log_active(void);
4void ch_log(channel_T *ch, char *msg);
5void ch_logs(channel_T *ch, char *msg, char *name);
Bram Moolenaar77073442016-02-13 23:23:53 +01006channel_T *add_channel(void);
7void channel_free(channel_T *channel);
Bram Moolenaar7b3ca762016-02-14 19:13:43 +01008void channel_gui_register(channel_T *channel);
Bram Moolenaard04a0202016-01-26 23:30:18 +01009void channel_gui_register_all(void);
Bram Moolenaar4e221c92016-02-23 13:20:22 +010010channel_T *channel_open(char *hostname, int port_in, int waittime, void (*nb_close_cb)(void));
Bram Moolenaard8070362016-02-15 21:56:54 +010011void channel_set_pipes(channel_T *channel, sock_T in, sock_T out, sock_T err);
Bram Moolenaar77073442016-02-13 23:23:53 +010012void channel_set_job(channel_T *channel, job_T *job);
Bram Moolenaar4e221c92016-02-23 13:20:22 +010013void channel_set_options(channel_T *channel, jobopt_T *opt);
Bram Moolenaar42d38a22016-02-20 18:18:59 +010014void channel_set_req_callback(channel_T *channel, int part, char_u *callback, int id);
15char_u *channel_get(channel_T *channel, int part);
16int channel_collapse(channel_T *channel, int part);
Bram Moolenaar77073442016-02-13 23:23:53 +010017int channel_can_write_to(channel_T *channel);
18int channel_is_open(channel_T *channel);
19char *channel_status(channel_T *channel);
20void channel_close(channel_T *channel);
Bram Moolenaar42d38a22016-02-20 18:18:59 +010021char_u *channel_peek(channel_T *channel, int part);
Bram Moolenaar77073442016-02-13 23:23:53 +010022void channel_clear(channel_T *channel);
23void channel_free_all(void);
Bram Moolenaar3b5f9292016-01-28 22:37:01 +010024int channel_get_id(void);
Bram Moolenaar42d38a22016-02-20 18:18:59 +010025void channel_read(channel_T *channel, int part, char *func);
Bram Moolenaar6f3a5442016-02-20 19:56:13 +010026char_u *channel_read_block(channel_T *channel, int part, int timeout);
27int channel_read_json_block(channel_T *channel, int part, int timeout, int id, typval_T **rettv);
28channel_T *channel_fd2channel(sock_T fd, int *partp);
Bram Moolenaared5a78e2016-02-19 21:05:03 +010029void channel_handle_events(void);
Bram Moolenaar42d38a22016-02-20 18:18:59 +010030int channel_send(channel_T *channel, int part, char_u *buf, char *fun);
Bram Moolenaare0874f82016-01-24 20:36:41 +010031int channel_poll_setup(int nfd_in, void *fds_in);
32int channel_poll_check(int ret_in, void *fds_in);
33int channel_select_setup(int maxfd_in, void *rfds_in);
34int channel_select_check(int ret_in, void *rfds_in);
Bram Moolenaard7ece102016-02-02 23:23:02 +010035int channel_parse_messages(void);
Bram Moolenaar4b6a6dc2016-02-04 22:49:49 +010036int set_ref_in_channel(int copyID);
Bram Moolenaar42d38a22016-02-20 18:18:59 +010037int channel_part_send(channel_T *channel);
38int channel_part_read(channel_T *channel);
39ch_mode_T channel_get_mode(channel_T *channel, int part);
Bram Moolenaar6f3a5442016-02-20 19:56:13 +010040int channel_get_timeout(channel_T *channel, int part);
Bram Moolenaare0874f82016-01-24 20:36:41 +010041/* vim: set ft=c : */