aboutsummaryrefslogtreecommitdiff
path: root/tmux.h
diff options
context:
space:
mode:
Diffstat (limited to 'tmux.h')
-rw-r--r--tmux.h27
1 files changed, 17 insertions, 10 deletions
diff --git a/tmux.h b/tmux.h
index b54edf3e..e8bd0e3e 100644
--- a/tmux.h
+++ b/tmux.h
@@ -903,11 +903,12 @@ struct environ_entry {
/* Client session. */
struct session_group {
- TAILQ_HEAD(, session) sessions;
+ const char *name;
+ TAILQ_HEAD(, session) sessions;
- TAILQ_ENTRY(session_group) entry;
+ RB_ENTRY(session_group) entry;
};
-TAILQ_HEAD(session_groups, session_group);
+RB_HEAD(session_groups, session_group);
struct session {
u_int id;
@@ -1042,7 +1043,10 @@ struct tty {
u_int rright;
int fd;
- struct bufferevent *event;
+ struct event event_in;
+ struct evbuffer *in;
+ struct event event_out;
+ struct evbuffer *out;
struct termios tio;
@@ -2212,13 +2216,15 @@ extern struct sessions sessions;
extern struct session_groups session_groups;
int session_cmp(struct session *, struct session *);
RB_PROTOTYPE(sessions, session, entry, session_cmp);
+int session_group_cmp(struct session_group *, struct session_group *);
+RB_PROTOTYPE(session_groups, session_group, entry, session_group_cmp);
int session_alive(struct session *);
struct session *session_find(const char *);
struct session *session_find_by_id_str(const char *);
struct session *session_find_by_id(u_int);
-struct session *session_create(const char *, int, char **, const char *,
- const char *, struct environ *, struct termios *, int,
- u_int, u_int, char **);
+struct session *session_create(const char *, const char *, int, char **,
+ const char *, const char *, struct environ *,
+ struct termios *, int, u_int, u_int, char **);
void session_destroy(struct session *);
void session_unref(struct session *);
int session_check_name(const char *);
@@ -2237,9 +2243,10 @@ int session_previous(struct session *, int);
int session_select(struct session *, int);
int session_last(struct session *);
int session_set_current(struct session *, struct winlink *);
-struct session_group *session_group_find(struct session *);
-u_int session_group_index(struct session_group *);
-void session_group_add(struct session *, struct session *);
+struct session_group *session_group_contains(struct session *);
+struct session_group *session_group_find(const char *);
+struct session_group *session_group_new(const char *);
+void session_group_add(struct session_group *, struct session *);
void session_group_synchronize_to(struct session *);
void session_group_synchronize_from(struct session *);
void session_renumber_windows(struct session *);