LCOV - code coverage report
Current view: top level - login - logind-seat.h (source / functions) Hit Total Coverage
Test: main_coverage.info Lines: 0 5 0.0 %
Date: 2019-08-22 15:41:25 Functions: 0 3 0.0 %

          Line data    Source code
       1             : /* SPDX-License-Identifier: LGPL-2.1+ */
       2             : #pragma once
       3             : 
       4             : typedef struct Seat Seat;
       5             : 
       6             : #include "list.h"
       7             : #include "logind-session.h"
       8             : 
       9             : struct Seat {
      10             :         Manager *manager;
      11             :         char *id;
      12             : 
      13             :         char *state_file;
      14             : 
      15             :         LIST_HEAD(Device, devices);
      16             : 
      17             :         Session *active;
      18             :         Session *pending_switch;
      19             :         LIST_HEAD(Session, sessions);
      20             : 
      21             :         Session **positions;
      22             :         size_t position_count;
      23             : 
      24             :         bool in_gc_queue:1;
      25             :         bool started:1;
      26             : 
      27             :         LIST_FIELDS(Seat, gc_queue);
      28             : };
      29             : 
      30             : int seat_new(Seat **ret, Manager *m, const char *id);
      31             : Seat* seat_free(Seat *s);
      32             : 
      33           0 : DEFINE_TRIVIAL_CLEANUP_FUNC(Seat *, seat_free);
      34             : 
      35             : int seat_save(Seat *s);
      36             : int seat_load(Seat *s);
      37             : 
      38             : int seat_apply_acls(Seat *s, Session *old_active);
      39             : int seat_set_active(Seat *s, Session *session);
      40             : int seat_switch_to(Seat *s, unsigned num);
      41             : int seat_switch_to_next(Seat *s);
      42             : int seat_switch_to_previous(Seat *s);
      43             : int seat_active_vt_changed(Seat *s, unsigned vtnr);
      44             : int seat_read_active_vt(Seat *s);
      45             : int seat_preallocate_vts(Seat *s);
      46             : 
      47             : int seat_attach_session(Seat *s, Session *session);
      48             : void seat_complete_switch(Seat *s);
      49             : void seat_evict_position(Seat *s, Session *session);
      50             : void seat_claim_position(Seat *s, Session *session, unsigned pos);
      51             : 
      52             : bool seat_has_vts(Seat *s);
      53             : bool seat_is_seat0(Seat *s);
      54             : bool seat_can_multi_session(Seat *s);
      55             : bool seat_can_tty(Seat *s);
      56             : bool seat_has_master_device(Seat *s);
      57             : bool seat_can_graphical(Seat *s);
      58             : 
      59             : int seat_get_idle_hint(Seat *s, dual_timestamp *t);
      60             : 
      61             : int seat_start(Seat *s);
      62             : int seat_stop(Seat *s, bool force);
      63             : int seat_stop_sessions(Seat *s, bool force);
      64             : 
      65             : bool seat_may_gc(Seat *s, bool drop_not_started);
      66             : void seat_add_to_gc_queue(Seat *s);
      67             : 
      68             : bool seat_name_is_valid(const char *name);
      69             : 
      70           0 : static inline bool SEAT_IS_SELF(const char *name) {
      71           0 :         return isempty(name) || streq(name, "self");
      72             : }
      73             : 
      74           0 : static inline bool SEAT_IS_AUTO(const char *name) {
      75           0 :         return streq_ptr(name, "auto");
      76             : }

Generated by: LCOV version 1.14