const ( CsCurrentClients = 1 CsFutureClients = 2 CsAllClients = 3 )
const ( HTypeFromServerTime = 1 HTypeFromClientTime = 2 HTypeFromClientSequence = 4 )
BadBadContext is the error number for a BadBadContext.
const BadBadContext = 0
func BadContextErrorNew(buf []byte) xgb.Error
BadContextErrorNew constructs a BadContextError value that implements xgb.Error from a byte slice.
func ClientInfoListBytes(buf []byte, list []ClientInfo) int
ClientInfoListBytes writes a list of ClientInfo values to a byte slice.
func ClientInfoListSize(list []ClientInfo) int
ClientInfoListSize computes the size (bytes) of a list of ClientInfo values.
func ClientInfoRead(buf []byte, v *ClientInfo) int
ClientInfoRead reads a byte slice into a ClientInfo value.
func ClientInfoReadList(buf []byte, dest []ClientInfo) int
ClientInfoReadList reads a byte slice into a list of ClientInfo values.
func ExtRangeListBytes(buf []byte, list []ExtRange) int
ExtRangeListBytes writes a list of ExtRange values to a byte slice.
func ExtRangeRead(buf []byte, v *ExtRange) int
ExtRangeRead reads a byte slice into a ExtRange value.
func ExtRangeReadList(buf []byte, dest []ExtRange) int
ExtRangeReadList reads a byte slice into a list of ExtRange values.
func Init(c *xgb.Conn) error
Init must be called before using the RECORD extension.
func Range16ListBytes(buf []byte, list []Range16) int
Range16ListBytes writes a list of Range16 values to a byte slice.
func Range16Read(buf []byte, v *Range16) int
Range16Read reads a byte slice into a Range16 value.
func Range16ReadList(buf []byte, dest []Range16) int
Range16ReadList reads a byte slice into a list of Range16 values.
func Range8ListBytes(buf []byte, list []Range8) int
Range8ListBytes writes a list of Range8 values to a byte slice.
func Range8Read(buf []byte, v *Range8) int
Range8Read reads a byte slice into a Range8 value.
func Range8ReadList(buf []byte, dest []Range8) int
Range8ReadList reads a byte slice into a list of Range8 values.
func RangeListBytes(buf []byte, list []Range) int
RangeListBytes writes a list of Range values to a byte slice.
func RangeRead(buf []byte, v *Range) int
RangeRead reads a byte slice into a Range value.
func RangeReadList(buf []byte, dest []Range) int
RangeReadList reads a byte slice into a list of Range values.
type BadContextError struct { Sequence uint16 NiceName string InvalidRecord uint32 }
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 (err BadContextError) Error() string
func (err BadContextError) SequenceId() uint16
SequenceId returns the sequence id attached to the BadBadContext error. This is mostly used internally.
type ClientInfo struct { ClientResource ClientSpec NumRanges uint32 Ranges []Range // size: xgb.Pad((int(NumRanges) * 24)) }
func (v ClientInfo) Bytes() []byte
Bytes writes a ClientInfo value to a byte slice.
type ClientSpec uint32
type Context uint32
func NewContextId(c *xgb.Conn) (Context, error)
CreateContextCookie is a cookie used only for CreateContext requests.
type CreateContextCookie struct { *xgb.Cookie }
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(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 (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.
DisableContextCookie is a cookie used only for DisableContext requests.
type DisableContextCookie struct { *xgb.Cookie }
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(c *xgb.Conn, Context Context) DisableContextCookie
DisableContextChecked sends a checked request. If an error occurs, it can be retrieved using 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 byte
EnableContextCookie is a cookie used only for EnableContext requests.
type EnableContextCookie struct { *xgb.Cookie }
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(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 (cook EnableContextCookie) Reply() (*EnableContextReply, error)
Reply blocks and returns the reply data for a EnableContext request.
EnableContextReply represents the data returned from a EnableContext request.
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)) }
type ExtRange struct { Major Range8 Minor Range16 }
func (v ExtRange) Bytes() []byte
Bytes writes a ExtRange value to a byte slice.
FreeContextCookie is a cookie used only for FreeContext requests.
type FreeContextCookie struct { *xgb.Cookie }
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(c *xgb.Conn, Context Context) FreeContextCookie
FreeContextChecked sends a checked request. If an error occurs, it can be retrieved using 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.
GetContextCookie is a cookie used only for GetContext requests.
type GetContextCookie struct { *xgb.Cookie }
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(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 (cook GetContextCookie) Reply() (*GetContextReply, error)
Reply blocks and returns the reply data for a GetContext request.
GetContextReply represents the data returned from a GetContext request.
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) }
QueryVersionCookie is a cookie used only for QueryVersion requests.
type QueryVersionCookie struct { *xgb.Cookie }
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(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 (cook QueryVersionCookie) Reply() (*QueryVersionReply, error)
Reply blocks and returns the reply data for a QueryVersion request.
QueryVersionReply represents the data returned from a QueryVersion request.
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 }
type Range struct { CoreRequests Range8 CoreReplies Range8 ExtRequests ExtRange ExtReplies ExtRange DeliveredEvents Range8 DeviceEvents Range8 Errors Range8 ClientStarted bool ClientDied bool }
func (v Range) Bytes() []byte
Bytes writes a Range value to a byte slice.
type Range16 struct { First uint16 Last uint16 }
func (v Range16) Bytes() []byte
Bytes writes a Range16 value to a byte slice.
type Range8 struct { First byte Last byte }
func (v Range8) Bytes() []byte
Bytes writes a Range8 value to a byte slice.
RegisterClientsCookie is a cookie used only for RegisterClients requests.
type RegisterClientsCookie struct { *xgb.Cookie }
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(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 (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.
UnregisterClientsCookie is a cookie used only for UnregisterClients requests.
type UnregisterClientsCookie struct { *xgb.Cookie }
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(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 (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.