;;; xcb-record.el --- X11 Record extension -*- lexical-binding: t -*-
;; Copyright (C) 2015-2024 Free Software Foundation, Inc.
;; This file is part of GNU Emacs.
;; GNU Emacs is free software: you can redistribute it and/or modify
;; it under the terms of the GNU General Public License as published by
;; the Free Software Foundation, either version 3 of the License, or
;; (at your option) any later version.
;; GNU Emacs is distributed in the hope that it will be useful,
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;; GNU General Public License for more details.
;; You should have received a copy of the GNU General Public License
;; along with GNU Emacs. If not, see .
;;; Commentary:
;; This file was generated by 'xelb-gen' from 'record.xml',
;; which you can retrieve from .
;;; Code:
(require 'xcb-types)
(defconst xcb:record:-extension-xname "RECORD")
(defconst xcb:record:-extension-name "Record")
(defconst xcb:record:-major-version 1)
(defconst xcb:record:-minor-version 13)
(xcb:deftypealias 'xcb:record:CONTEXT 'xcb:-u4)
(defclass xcb:record:Range8
(xcb:-struct)
((first :initarg :first :type xcb:CARD8)
(last :initarg :last :type xcb:CARD8)))
(defclass xcb:record:Range16
(xcb:-struct)
((first :initarg :first :type xcb:CARD16)
(last :initarg :last :type xcb:CARD16)))
(defclass xcb:record:ExtRange
(xcb:-struct)
((major :initarg :major :type xcb:record:Range8)
(minor :initarg :minor :type xcb:record:Range16)))
(defclass xcb:record:Range
(xcb:-struct)
((core-requests :initarg :core-requests :type xcb:record:Range8)
(core-replies :initarg :core-replies :type xcb:record:Range8)
(ext-requests :initarg :ext-requests :type xcb:record:ExtRange)
(ext-replies :initarg :ext-replies :type xcb:record:ExtRange)
(delivered-events :initarg :delivered-events :type xcb:record:Range8)
(device-events :initarg :device-events :type xcb:record:Range8)
(errors :initarg :errors :type xcb:record:Range8)
(client-started :initarg :client-started :type xcb:BOOL)
(client-died :initarg :client-died :type xcb:BOOL)))
(xcb:deftypealias 'xcb:record:ElementHeader 'xcb:CARD8)
(defconst xcb:record:HType:FromServerTime 1)
(defconst xcb:record:HType:FromClientTime 2)
(defconst xcb:record:HType:FromClientSequence 4)
(xcb:deftypealias 'xcb:record:ClientSpec 'xcb:CARD32)
(defconst xcb:record:CS:CurrentClients 1)
(defconst xcb:record:CS:FutureClients 2)
(defconst xcb:record:CS:AllClients 3)
(defclass xcb:record:ClientInfo
(xcb:-struct)
((client-resource :initarg :client-resource :type xcb:record:ClientSpec)
(num-ranges :initarg :num-ranges :type xcb:CARD32)
(ranges~ :initform
'(name ranges type xcb:record:Range size
(xcb:-fieldref 'num-ranges))
:type xcb:-list)
(ranges :initarg :ranges :type xcb:-ignore)))
(defclass xcb:record:BadContext
(xcb:-error)
((~code :initform 0)
(invalid-record :initarg :invalid-record :type xcb:CARD32)))
(defclass xcb:record:QueryVersion
(xcb:-request)
((~opcode :initform 0 :type xcb:-u1)
(major-version :initarg :major-version :type xcb:CARD16)
(minor-version :initarg :minor-version :type xcb:CARD16)))
(defclass xcb:record:QueryVersion~reply
(xcb:-reply)
((pad~0 :initform 1 :type xcb:-pad)
(~sequence :type xcb:CARD16)
(length :type xcb:CARD32)
(major-version :initarg :major-version :type xcb:CARD16)
(minor-version :initarg :minor-version :type xcb:CARD16)))
(defclass xcb:record:CreateContext
(xcb:-request)
((~opcode :initform 1 :type xcb:-u1)
(context :initarg :context :type xcb:record:CONTEXT)
(element-header :initarg :element-header :type xcb:record:ElementHeader)
(pad~0 :initform 3 :type xcb:-pad)
(num-client-specs :initarg :num-client-specs :type xcb:CARD32)
(num-ranges :initarg :num-ranges :type xcb:CARD32)
(client-specs~ :initform
'(name client-specs type xcb:record:ClientSpec size
(xcb:-fieldref 'num-client-specs))
:type xcb:-list)
(client-specs :initarg :client-specs :type xcb:-ignore)
(ranges~ :initform
'(name ranges type xcb:record:Range size
(xcb:-fieldref 'num-ranges))
:type xcb:-list)
(ranges :initarg :ranges :type xcb:-ignore)))
(defclass xcb:record:RegisterClients
(xcb:-request)
((~opcode :initform 2 :type xcb:-u1)
(context :initarg :context :type xcb:record:CONTEXT)
(element-header :initarg :element-header :type xcb:record:ElementHeader)
(pad~0 :initform 3 :type xcb:-pad)
(num-client-specs :initarg :num-client-specs :type xcb:CARD32)
(num-ranges :initarg :num-ranges :type xcb:CARD32)
(client-specs~ :initform
'(name client-specs type xcb:record:ClientSpec size
(xcb:-fieldref 'num-client-specs))
:type xcb:-list)
(client-specs :initarg :client-specs :type xcb:-ignore)
(ranges~ :initform
'(name ranges type xcb:record:Range size
(xcb:-fieldref 'num-ranges))
:type xcb:-list)
(ranges :initarg :ranges :type xcb:-ignore)))
(defclass xcb:record:UnregisterClients
(xcb:-request)
((~opcode :initform 3 :type xcb:-u1)
(context :initarg :context :type xcb:record:CONTEXT)
(num-client-specs :initarg :num-client-specs :type xcb:CARD32)
(client-specs~ :initform
'(name client-specs type xcb:record:ClientSpec size
(xcb:-fieldref 'num-client-specs))
:type xcb:-list)
(client-specs :initarg :client-specs :type xcb:-ignore)))
(defclass xcb:record:GetContext
(xcb:-request)
((~opcode :initform 4 :type xcb:-u1)
(context :initarg :context :type xcb:record:CONTEXT)))
(defclass xcb:record:GetContext~reply
(xcb:-reply)
((enabled :initarg :enabled :type xcb:BOOL)
(~sequence :type xcb:CARD16)
(length :type xcb:CARD32)
(element-header :initarg :element-header :type xcb:record:ElementHeader)
(pad~0 :initform 3 :type xcb:-pad)
(num-intercepted-clients :initarg :num-intercepted-clients :type xcb:CARD32)
(pad~1 :initform 16 :type xcb:-pad)
(intercepted-clients~ :initform
'(name intercepted-clients type xcb:record:ClientInfo size
(xcb:-fieldref 'num-intercepted-clients))
:type xcb:-list)
(intercepted-clients :initarg :intercepted-clients :type xcb:-ignore)))
(defclass xcb:record:EnableContext
(xcb:-request)
((~opcode :initform 5 :type xcb:-u1)
(context :initarg :context :type xcb:record:CONTEXT)))
(defclass xcb:record:EnableContext~reply
(xcb:-reply)
((category :initarg :category :type xcb:CARD8)
(~sequence :type xcb:CARD16)
(length :type xcb:CARD32)
(element-header :initarg :element-header :type xcb:record:ElementHeader)
(client-swapped :initarg :client-swapped :type xcb:BOOL)
(pad~0 :initform 2 :type xcb:-pad)
(xid-base :initarg :xid-base :type xcb:CARD32)
(server-time :initarg :server-time :type xcb:CARD32)
(rec-sequence-num :initarg :rec-sequence-num :type xcb:CARD32)
(pad~1 :initform 8 :type xcb:-pad)
(data~ :initform
'(name data type xcb:BYTE size
(*
(xcb:-fieldref 'length)
4))
:type xcb:-list)
(data :initarg :data :type xcb:-ignore)))
(defclass xcb:record:DisableContext
(xcb:-request)
((~opcode :initform 6 :type xcb:-u1)
(context :initarg :context :type xcb:record:CONTEXT)))
(defclass xcb:record:FreeContext
(xcb:-request)
((~opcode :initform 7 :type xcb:-u1)
(context :initarg :context :type xcb:record:CONTEXT)))
(defconst xcb:record:error-number-class-alist
'((0 . xcb:record:BadContext))
"(error-number . error-class) alist.")
(provide 'xcb-record)
;;; xcb-record.el ends here