Bram Moolenaar | e0874f8 | 2016-01-24 20:36:41 +0100 | [diff] [blame] | 1 | /* channel.c */ |
Bram Moolenaar | 8e2c942 | 2016-03-12 13:43:33 +0100 | [diff] [blame] | 2 | void ch_logfile(char_u *fname, char_u *opt); |
Bram Moolenaar | 81661fb | 2016-02-18 22:23:34 +0100 | [diff] [blame] | 3 | int ch_log_active(void); |
| 4 | void ch_log(channel_T *ch, char *msg); |
| 5 | void ch_logs(channel_T *ch, char *msg, char *name); |
Bram Moolenaar | 7707344 | 2016-02-13 23:23:53 +0100 | [diff] [blame] | 6 | channel_T *add_channel(void); |
Bram Moolenaar | 8e2c942 | 2016-03-12 13:43:33 +0100 | [diff] [blame] | 7 | int channel_unref(channel_T *channel); |
Bram Moolenaar | 107e1ee | 2016-04-08 17:07:19 +0200 | [diff] [blame] | 8 | int free_unused_channels_contents(int copyID, int mask); |
| 9 | void free_unused_channels(int copyID, int mask); |
Bram Moolenaar | d04a020 | 2016-01-26 23:30:18 +0100 | [diff] [blame] | 10 | void channel_gui_register_all(void); |
Bram Moolenaar | 4e221c9 | 2016-02-23 13:20:22 +0100 | [diff] [blame] | 11 | channel_T *channel_open(char *hostname, int port_in, int waittime, void (*nb_close_cb)(void)); |
Bram Moolenaar | 8e2c942 | 2016-03-12 13:43:33 +0100 | [diff] [blame] | 12 | channel_T *channel_open_func(typval_T *argvars); |
Bram Moolenaar | d807036 | 2016-02-15 21:56:54 +0100 | [diff] [blame] | 13 | void channel_set_pipes(channel_T *channel, sock_T in, sock_T out, sock_T err); |
Bram Moolenaar | 014069a | 2016-03-03 22:51:40 +0100 | [diff] [blame] | 14 | void channel_set_job(channel_T *channel, job_T *job, jobopt_T *options); |
Bram Moolenaar | 4e221c9 | 2016-02-23 13:20:22 +0100 | [diff] [blame] | 15 | void channel_set_options(channel_T *channel, jobopt_T *opt); |
Bram Moolenaar | 39afdea | 2016-03-14 23:27:29 +0100 | [diff] [blame] | 16 | void channel_set_req_callback(channel_T *channel, int part, char_u *callback, partial_T *partial, int id); |
Bram Moolenaar | e0f76d0 | 2016-05-09 20:38:53 +0200 | [diff] [blame] | 17 | void channel_buffer_free(buf_T *buf); |
Bram Moolenaar | 8b877ac | 2016-03-28 19:16:20 +0200 | [diff] [blame] | 18 | void channel_write_any_lines(void); |
Bram Moolenaar | 99ef062 | 2016-03-06 20:22:25 +0100 | [diff] [blame] | 19 | void channel_write_new_lines(buf_T *buf); |
Bram Moolenaar | 42d38a2 | 2016-02-20 18:18:59 +0100 | [diff] [blame] | 20 | char_u *channel_get(channel_T *channel, int part); |
| 21 | int channel_collapse(channel_T *channel, int part); |
Bram Moolenaar | 7707344 | 2016-02-13 23:23:53 +0100 | [diff] [blame] | 22 | int channel_can_write_to(channel_T *channel); |
| 23 | int channel_is_open(channel_T *channel); |
| 24 | char *channel_status(channel_T *channel); |
Bram Moolenaar | 03602ec | 2016-03-20 20:57:45 +0100 | [diff] [blame] | 25 | void channel_info(channel_T *channel, dict_T *dict); |
Bram Moolenaar | 8b37421 | 2016-02-24 20:43:06 +0100 | [diff] [blame] | 26 | void channel_close(channel_T *channel, int invoke_close_cb); |
Bram Moolenaar | 42d38a2 | 2016-02-20 18:18:59 +0100 | [diff] [blame] | 27 | char_u *channel_peek(channel_T *channel, int part); |
Bram Moolenaar | 7707344 | 2016-02-13 23:23:53 +0100 | [diff] [blame] | 28 | void channel_clear(channel_T *channel); |
| 29 | void channel_free_all(void); |
Bram Moolenaar | 6f3a544 | 2016-02-20 19:56:13 +0100 | [diff] [blame] | 30 | char_u *channel_read_block(channel_T *channel, int part, int timeout); |
Bram Moolenaar | e9d6a29 | 2016-03-20 19:31:33 +0100 | [diff] [blame] | 31 | int channel_read_json_block(channel_T *channel, int part, int timeout_arg, int id, typval_T **rettv); |
Bram Moolenaar | 8e2c942 | 2016-03-12 13:43:33 +0100 | [diff] [blame] | 32 | void common_channel_read(typval_T *argvars, typval_T *rettv, int raw); |
Bram Moolenaar | 6f3a544 | 2016-02-20 19:56:13 +0100 | [diff] [blame] | 33 | channel_T *channel_fd2channel(sock_T fd, int *partp); |
Bram Moolenaar | ed5a78e | 2016-02-19 21:05:03 +0100 | [diff] [blame] | 34 | void channel_handle_events(void); |
Bram Moolenaar | 42d38a2 | 2016-02-20 18:18:59 +0100 | [diff] [blame] | 35 | int channel_send(channel_T *channel, int part, char_u *buf, char *fun); |
Bram Moolenaar | 8e2c942 | 2016-03-12 13:43:33 +0100 | [diff] [blame] | 36 | channel_T *send_common(typval_T *argvars, char_u *text, int id, int eval, jobopt_T *opt, char *fun, int *part_read); |
| 37 | void ch_expr_common(typval_T *argvars, typval_T *rettv, int eval); |
| 38 | void ch_raw_common(typval_T *argvars, typval_T *rettv, int eval); |
Bram Moolenaar | e0874f8 | 2016-01-24 20:36:41 +0100 | [diff] [blame] | 39 | int channel_poll_setup(int nfd_in, void *fds_in); |
| 40 | int channel_poll_check(int ret_in, void *fds_in); |
Bram Moolenaar | 8b877ac | 2016-03-28 19:16:20 +0200 | [diff] [blame] | 41 | int channel_select_setup(int maxfd_in, void *rfds_in, void *wfds_in); |
| 42 | int channel_select_check(int ret_in, void *rfds_in, void *wfds_in); |
Bram Moolenaar | d7ece10 | 2016-02-02 23:23:02 +0100 | [diff] [blame] | 43 | int channel_parse_messages(void); |
Bram Moolenaar | 4b6a6dc | 2016-02-04 22:49:49 +0100 | [diff] [blame] | 44 | int set_ref_in_channel(int copyID); |
Bram Moolenaar | 42d38a2 | 2016-02-20 18:18:59 +0100 | [diff] [blame] | 45 | int channel_part_send(channel_T *channel); |
| 46 | int channel_part_read(channel_T *channel); |
| 47 | ch_mode_T channel_get_mode(channel_T *channel, int part); |
Bram Moolenaar | 6f3a544 | 2016-02-20 19:56:13 +0100 | [diff] [blame] | 48 | int channel_get_timeout(channel_T *channel, int part); |
Bram Moolenaar | 8e2c942 | 2016-03-12 13:43:33 +0100 | [diff] [blame] | 49 | void clear_job_options(jobopt_T *opt); |
Bram Moolenaar | 0e4c1de | 2016-04-07 21:40:38 +0200 | [diff] [blame] | 50 | void free_job_options(jobopt_T *opt); |
Bram Moolenaar | 8e2c942 | 2016-03-12 13:43:33 +0100 | [diff] [blame] | 51 | int get_job_options(typval_T *tv, jobopt_T *opt, int supported); |
Bram Moolenaar | 437905c | 2016-04-26 19:01:05 +0200 | [diff] [blame] | 52 | channel_T *get_channel_arg(typval_T *tv, int check_open, int reading, int part); |
Bram Moolenaar | 655da31 | 2016-05-28 22:22:34 +0200 | [diff] [blame^] | 53 | void job_free_all(void); |
Bram Moolenaar | b8d4905 | 2016-05-01 14:22:16 +0200 | [diff] [blame] | 54 | int set_ref_in_job(int copyID); |
Bram Moolenaar | 8e2c942 | 2016-03-12 13:43:33 +0100 | [diff] [blame] | 55 | void job_unref(job_T *job); |
Bram Moolenaar | 107e1ee | 2016-04-08 17:07:19 +0200 | [diff] [blame] | 56 | int free_unused_jobs_contents(int copyID, int mask); |
| 57 | void free_unused_jobs(int copyID, int mask); |
Bram Moolenaar | 8e2c942 | 2016-03-12 13:43:33 +0100 | [diff] [blame] | 58 | void job_set_options(job_T *job, jobopt_T *opt); |
| 59 | void job_stop_on_exit(void); |
| 60 | void job_check_ended(void); |
| 61 | job_T *job_start(typval_T *argvars); |
| 62 | char *job_status(job_T *job); |
Bram Moolenaar | 8950a56 | 2016-03-12 15:22:55 +0100 | [diff] [blame] | 63 | void job_info(job_T *job, dict_T *dict); |
Bram Moolenaar | 8e2c942 | 2016-03-12 13:43:33 +0100 | [diff] [blame] | 64 | int job_stop(job_T *job, typval_T *argvars); |
Bram Moolenaar | e0874f8 | 2016-01-24 20:36:41 +0100 | [diff] [blame] | 65 | /* vim: set ft=c : */ |