record

package
v1.1.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 30, 2023 License: BSD-3-Clause, GooglePatentClause Imports: 2 Imported by: 0

Documentation

Overview

Package record is the X client API for the RECORD extension.

Index

Constants

View Source
const (
	CsCurrentClients = 1
	CsFutureClients  = 2
	CsAllClients     = 3
)
View Source
const (
	HTypeFromServerTime     = 1
	HTypeFromClientTime     = 2
	HTypeFromClientSequence = 4
)
View Source
const BadBadContext = 0

BadBadContext is the error number for a BadBadContext.

Variables

This section is empty.

Functions

func BadContextErrorNew

func BadContextErrorNew(buf []byte) xgb.Error

BadContextErrorNew constructs a BadContextError value that implements xgb.Error from a byte slice.

func ClientInfoListBytes

func ClientInfoListBytes(buf []byte, list []ClientInfo) int

ClientInfoListBytes writes a list of ClientInfo values to a byte slice.

func ClientInfoListSize

func ClientInfoListSize(list []ClientInfo) int

ClientInfoListSize computes the size (bytes) of a list of ClientInfo values.

func ClientInfoRead

func ClientInfoRead(buf []byte, v *ClientInfo) int

ClientInfoRead reads a byte slice into a ClientInfo value.

func ClientInfoReadList

func ClientInfoReadList(buf []byte, dest []ClientInfo) int

ClientInfoReadList reads a byte slice into a list of ClientInfo values.

func ExtRangeListBytes

func ExtRangeListBytes(buf []byte, list []ExtRange) int

ExtRangeListBytes writes a list of ExtRange values to a byte slice.

func ExtRangeRead

func ExtRangeRead(buf []byte, v *ExtRange) int

ExtRangeRead reads a byte slice into a ExtRange value.

func ExtRangeReadList

func ExtRangeReadList(buf []byte, dest []ExtRange) int

ExtRangeReadList reads a byte slice into a list of ExtRange values.

func Init

func Init(c *xgb.Conn) error

Init must be called before using the RECORD extension.

func Range16ListBytes

func Range16ListBytes(buf []byte, list []Range16) int

Range16ListBytes writes a list of Range16 values to a byte slice.

func Range16Read

func Range16Read(buf []byte, v *Range16) int

Range16Read reads a byte slice into a Range16 value.

func Range16ReadList

func Range16ReadList(buf []byte, dest []Range16) int

Range16ReadList reads a byte slice into a list of Range16 values.

func Range8ListBytes

func Range8ListBytes(buf []byte, list []Range8) int

Range8ListBytes writes a list of Range8 values to a byte slice.

func Range8Read

func Range8Read(buf []byte, v *Range8) int

Range8Read reads a byte slice into a Range8 value.

func Range8ReadList

func Range8ReadList(buf []byte, dest []Range8) int

Range8ReadList reads a byte slice into a list of Range8 values.

func RangeListBytes

func RangeListBytes(buf []byte, list []Range) int

RangeListBytes writes a list of Range values to a byte slice.

func RangeRead

func RangeRead(buf []byte, v *Range) int

RangeRead reads a byte slice into a Range value.

func RangeReadList

func RangeReadList(buf []byte, dest []Range) int

RangeReadList reads a byte slice into a list of Range values.

Types

type BadContextError

type BadContextError struct {
	Sequence      uint16
	NiceName      string
	InvalidRecord uint32
}

func (BadContextError) BadId

func (err BadContextError) BadId() uint32

BadId returns the 'BadValue' number if one exists for the BadBadContext error. If no bad value exists, 0 is returned.

func (BadContextError) Error

func (err BadContextError) Error() string

func (BadContextError) SequenceId

func (err BadContextError) SequenceId() uint16

SequenceId returns the sequence id attached to the BadBadContext error. This is mostly used internally.

type ClientInfo

type ClientInfo struct {
	ClientResource ClientSpec
	NumRanges      uint32
	Ranges         []Range // size: xgb.Pad((int(NumRanges) * 24))
}

func (ClientInfo) Bytes

func (v ClientInfo) Bytes() []byte

Bytes writes a ClientInfo value to a byte slice.

type ClientSpec

type ClientSpec uint32

type Context

type Context uint32

func NewContextId

func NewContextId(c *xgb.Conn) (Context, error)

type CreateContextCookie

type CreateContextCookie struct {
	*xgb.Cookie
}

CreateContextCookie is a cookie used only for CreateContext requests.

func CreateContext

func CreateContext(c *xgb.Conn, Context Context, ElementHeader ElementHeader, NumClientSpecs uint32, NumRanges uint32, ClientSpecs []ClientSpec, Ranges []Range) CreateContextCookie

CreateContext sends an unchecked request. If an error occurs, it can only be retrieved using xgb.WaitForEvent or xgb.PollForEvent.

func CreateContextChecked

func CreateContextChecked(c *xgb.Conn, Context Context, ElementHeader ElementHeader, NumClientSpecs uint32, NumRanges uint32, ClientSpecs []ClientSpec, Ranges []Range) CreateContextCookie

CreateContextChecked sends a checked request. If an error occurs, it can be retrieved using CreateContextCookie.Check()

func (CreateContextCookie) Check

func (cook CreateContextCookie) Check() error

Check returns an error if one occurred for checked requests that are not expecting a reply. This cannot be called for requests expecting a reply, nor for unchecked requests.

type DisableContextCookie

type DisableContextCookie struct {
	*xgb.Cookie
}

DisableContextCookie is a cookie used only for DisableContext requests.

func DisableContext

func DisableContext(c *xgb.Conn, Context Context) DisableContextCookie

DisableContext sends an unchecked request. If an error occurs, it can only be retrieved using xgb.WaitForEvent or xgb.PollForEvent.

func DisableContextChecked

func DisableContextChecked(c *xgb.Conn, Context Context) DisableContextCookie

DisableContextChecked sends a checked request. If an error occurs, it can be retrieved using DisableContextCookie.Check()

func (DisableContextCookie) Check

func (cook DisableContextCookie) Check() error

Check returns an error if one occurred for checked requests that are not expecting a reply. This cannot be called for requests expecting a reply, nor for unchecked requests.

type ElementHeader

type ElementHeader byte

type EnableContextCookie

type EnableContextCookie struct {
	*xgb.Cookie
}

EnableContextCookie is a cookie used only for EnableContext requests.

func EnableContext

func EnableContext(c *xgb.Conn, Context Context) EnableContextCookie

EnableContext sends a checked request. If an error occurs, it will be returned with the reply by calling EnableContextCookie.Reply()

func EnableContextUnchecked

func EnableContextUnchecked(c *xgb.Conn, Context Context) EnableContextCookie

EnableContextUnchecked sends an unchecked request. If an error occurs, it can only be retrieved using xgb.WaitForEvent or xgb.PollForEvent.

func (EnableContextCookie) Reply

func (cook EnableContextCookie) Reply() (*EnableContextReply, error)

Reply blocks and returns the reply data for a EnableContext request.

type EnableContextReply

type EnableContextReply struct {
	Sequence      uint16 // sequence number of the request for this reply
	Length        uint32 // number of bytes in this reply
	Category      byte
	ElementHeader ElementHeader
	ClientSwapped bool
	// padding: 2 bytes
	XidBase        uint32
	ServerTime     uint32
	RecSequenceNum uint32
	// padding: 8 bytes
	Data []byte // size: xgb.Pad(((int(Length) * 4) * 1))
}

EnableContextReply represents the data returned from a EnableContext request.

type ExtRange

type ExtRange struct {
	Major Range8
	Minor Range16
}

func (ExtRange) Bytes

func (v ExtRange) Bytes() []byte

Bytes writes a ExtRange value to a byte slice.

type FreeContextCookie

type FreeContextCookie struct {
	*xgb.Cookie
}

FreeContextCookie is a cookie used only for FreeContext requests.

func FreeContext

func FreeContext(c *xgb.Conn, Context Context) FreeContextCookie

FreeContext sends an unchecked request. If an error occurs, it can only be retrieved using xgb.WaitForEvent or xgb.PollForEvent.

func FreeContextChecked

func FreeContextChecked(c *xgb.Conn, Context Context) FreeContextCookie

FreeContextChecked sends a checked request. If an error occurs, it can be retrieved using FreeContextCookie.Check()

func (FreeContextCookie) Check

func (cook FreeContextCookie) Check() error

Check returns an error if one occurred for checked requests that are not expecting a reply. This cannot be called for requests expecting a reply, nor for unchecked requests.

type GetContextCookie

type GetContextCookie struct {
	*xgb.Cookie
}

GetContextCookie is a cookie used only for GetContext requests.

func GetContext

func GetContext(c *xgb.Conn, Context Context) GetContextCookie

GetContext sends a checked request. If an error occurs, it will be returned with the reply by calling GetContextCookie.Reply()

func GetContextUnchecked

func GetContextUnchecked(c *xgb.Conn, Context Context) GetContextCookie

GetContextUnchecked sends an unchecked request. If an error occurs, it can only be retrieved using xgb.WaitForEvent or xgb.PollForEvent.

func (GetContextCookie) Reply

func (cook GetContextCookie) Reply() (*GetContextReply, error)

Reply blocks and returns the reply data for a GetContext request.

type GetContextReply

type GetContextReply struct {
	Sequence      uint16 // sequence number of the request for this reply
	Length        uint32 // number of bytes in this reply
	Enabled       bool
	ElementHeader ElementHeader
	// padding: 3 bytes
	NumInterceptedClients uint32
	// padding: 16 bytes
	InterceptedClients []ClientInfo // size: ClientInfoListSize(InterceptedClients)
}

GetContextReply represents the data returned from a GetContext request.

type QueryVersionCookie

type QueryVersionCookie struct {
	*xgb.Cookie
}

QueryVersionCookie is a cookie used only for QueryVersion requests.

func QueryVersion

func QueryVersion(c *xgb.Conn, MajorVersion uint16, MinorVersion uint16) QueryVersionCookie

QueryVersion sends a checked request. If an error occurs, it will be returned with the reply by calling QueryVersionCookie.Reply()

func QueryVersionUnchecked

func QueryVersionUnchecked(c *xgb.Conn, MajorVersion uint16, MinorVersion uint16) QueryVersionCookie

QueryVersionUnchecked sends an unchecked request. If an error occurs, it can only be retrieved using xgb.WaitForEvent or xgb.PollForEvent.

func (QueryVersionCookie) Reply

func (cook QueryVersionCookie) Reply() (*QueryVersionReply, error)

Reply blocks and returns the reply data for a QueryVersion request.

type QueryVersionReply

type QueryVersionReply struct {
	Sequence uint16 // sequence number of the request for this reply
	Length   uint32 // number of bytes in this reply
	// padding: 1 bytes
	MajorVersion uint16
	MinorVersion uint16
}

QueryVersionReply represents the data returned from a QueryVersion request.

type Range

type Range struct {
	CoreRequests    Range8
	CoreReplies     Range8
	ExtRequests     ExtRange
	ExtReplies      ExtRange
	DeliveredEvents Range8
	DeviceEvents    Range8
	Errors          Range8
	ClientStarted   bool
	ClientDied      bool
}

func (Range) Bytes

func (v Range) Bytes() []byte

Bytes writes a Range value to a byte slice.

type Range16

type Range16 struct {
	First uint16
	Last  uint16
}

func (Range16) Bytes

func (v Range16) Bytes() []byte

Bytes writes a Range16 value to a byte slice.

type Range8

type Range8 struct {
	First byte
	Last  byte
}

func (Range8) Bytes

func (v Range8) Bytes() []byte

Bytes writes a Range8 value to a byte slice.

type RegisterClientsCookie

type RegisterClientsCookie struct {
	*xgb.Cookie
}

RegisterClientsCookie is a cookie used only for RegisterClients requests.

func RegisterClients

func RegisterClients(c *xgb.Conn, Context Context, ElementHeader ElementHeader, NumClientSpecs uint32, NumRanges uint32, ClientSpecs []ClientSpec, Ranges []Range) RegisterClientsCookie

RegisterClients sends an unchecked request. If an error occurs, it can only be retrieved using xgb.WaitForEvent or xgb.PollForEvent.

func RegisterClientsChecked

func RegisterClientsChecked(c *xgb.Conn, Context Context, ElementHeader ElementHeader, NumClientSpecs uint32, NumRanges uint32, ClientSpecs []ClientSpec, Ranges []Range) RegisterClientsCookie

RegisterClientsChecked sends a checked request. If an error occurs, it can be retrieved using RegisterClientsCookie.Check()

func (RegisterClientsCookie) Check

func (cook RegisterClientsCookie) Check() error

Check returns an error if one occurred for checked requests that are not expecting a reply. This cannot be called for requests expecting a reply, nor for unchecked requests.

type UnregisterClientsCookie

type UnregisterClientsCookie struct {
	*xgb.Cookie
}

UnregisterClientsCookie is a cookie used only for UnregisterClients requests.

func UnregisterClients

func UnregisterClients(c *xgb.Conn, Context Context, NumClientSpecs uint32, ClientSpecs []ClientSpec) UnregisterClientsCookie

UnregisterClients sends an unchecked request. If an error occurs, it can only be retrieved using xgb.WaitForEvent or xgb.PollForEvent.

func UnregisterClientsChecked

func UnregisterClientsChecked(c *xgb.Conn, Context Context, NumClientSpecs uint32, ClientSpecs []ClientSpec) UnregisterClientsCookie

UnregisterClientsChecked sends a checked request. If an error occurs, it can be retrieved using UnregisterClientsCookie.Check()

func (UnregisterClientsCookie) Check

func (cook UnregisterClientsCookie) Check() error

Check returns an error if one occurred for checked requests that are not expecting a reply. This cannot be called for requests expecting a reply, nor for unchecked requests.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL