// BufferSwapCompleteEventNew constructs a BufferSwapCompleteEvent value that implements xgb.Event from a byte slice. func BufferSwapCompleteEventNew(buf []byte) xgb.Event { v := BufferSwapCompleteEvent{} b := 1 // don't read event number b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.EventType = xgb.Get16(buf[b:]) b += 2 b += 2 // padding v.Drawable = xproto.Drawable(xgb.Get32(buf[b:])) b += 4 v.UstHi = xgb.Get32(buf[b:]) b += 4 v.UstLo = xgb.Get32(buf[b:]) b += 4 v.MscHi = xgb.Get32(buf[b:]) b += 4 v.MscLo = xgb.Get32(buf[b:]) b += 4 v.Sbc = xgb.Get32(buf[b:]) b += 4 return v }
// getTimeoutsReply reads a byte slice into a GetTimeoutsReply value. func getTimeoutsReply(buf []byte) *GetTimeoutsReply { v := new(GetTimeoutsReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.StandbyTimeout = xgb.Get16(buf[b:]) b += 2 v.SuspendTimeout = xgb.Get16(buf[b:]) b += 2 v.OffTimeout = xgb.Get16(buf[b:]) b += 2 b += 18 // padding return v }
// createContextReply reads a byte slice into a CreateContextReply value. func createContextReply(buf []byte) *CreateContextReply { v := new(CreateContextReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.WidthActual = xgb.Get16(buf[b:]) b += 2 v.HeightActual = xgb.Get16(buf[b:]) b += 2 v.FlagsReturn = xgb.Get32(buf[b:]) b += 4 b += 20 // padding v.PrivData = make([]uint32, v.Length) for i := 0; i < int(v.Length); i++ { v.PrivData[i] = xgb.Get32(buf[b:]) b += 4 } b = xgb.Pad(b) return v }
// infoReply reads a byte slice into a InfoReply value. func infoReply(buf []byte) *InfoReply { v := new(InfoReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.PowerLevel = xgb.Get16(buf[b:]) b += 2 if buf[b] == 1 { v.State = true } else { v.State = false } b += 1 b += 21 // padding return v }
// CompletionEventNew constructs a CompletionEvent value that implements xgb.Event from a byte slice. func CompletionEventNew(buf []byte) xgb.Event { v := CompletionEvent{} b := 1 // don't read event number b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Drawable = xproto.Drawable(xgb.Get32(buf[b:])) b += 4 v.MinorEvent = xgb.Get16(buf[b:]) b += 2 v.MajorEvent = buf[b] b += 1 b += 1 // padding v.Shmseg = Seg(xgb.Get32(buf[b:])) b += 4 v.Offset = xgb.Get32(buf[b:]) b += 4 return v }
// Range16Read reads a byte slice into a Range16 value. func Range16Read(buf []byte, v *Range16) int { b := 0 v.First = xgb.Get16(buf[b:]) b += 2 v.Last = xgb.Get16(buf[b:]) b += 2 return b }
// queryExtentsReply reads a byte slice into a QueryExtentsReply value. func queryExtentsReply(buf []byte) *QueryExtentsReply { v := new(QueryExtentsReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 if buf[b] == 1 { v.BoundingShaped = true } else { v.BoundingShaped = false } b += 1 if buf[b] == 1 { v.ClipShaped = true } else { v.ClipShaped = false } b += 1 b += 2 // padding v.BoundingShapeExtentsX = int16(xgb.Get16(buf[b:])) b += 2 v.BoundingShapeExtentsY = int16(xgb.Get16(buf[b:])) b += 2 v.BoundingShapeExtentsWidth = xgb.Get16(buf[b:]) b += 2 v.BoundingShapeExtentsHeight = xgb.Get16(buf[b:]) b += 2 v.ClipShapeExtentsX = int16(xgb.Get16(buf[b:])) b += 2 v.ClipShapeExtentsY = int16(xgb.Get16(buf[b:])) b += 2 v.ClipShapeExtentsWidth = xgb.Get16(buf[b:]) b += 2 v.ClipShapeExtentsHeight = xgb.Get16(buf[b:]) b += 2 return v }
// getParamReply reads a byte slice into a GetParamReply value. func getParamReply(buf []byte) *GetParamReply { v := new(GetParamReply) b := 1 // skip reply determinant if buf[b] == 1 { v.IsParamRecognized = true } else { v.IsParamRecognized = false } b += 1 v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.ValueHi = xgb.Get32(buf[b:]) b += 4 v.ValueLo = xgb.Get32(buf[b:]) b += 4 return v }
// NotifyEventNew constructs a NotifyEvent value that implements xgb.Event from a byte slice. func NotifyEventNew(buf []byte) xgb.Event { v := NotifyEvent{} b := 1 // don't read event number v.Level = buf[b] b += 1 v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Drawable = xproto.Drawable(xgb.Get32(buf[b:])) b += 4 v.Damage = Damage(xgb.Get32(buf[b:])) b += 4 v.Timestamp = xproto.Timestamp(xgb.Get32(buf[b:])) b += 4 v.Area = xproto.Rectangle{} b += xproto.RectangleRead(buf[b:], &v.Area) v.Geometry = xproto.Rectangle{} b += xproto.RectangleRead(buf[b:], &v.Geometry) return v }
// NotifyEventNew constructs a NotifyEvent value that implements xgb.Event from a byte slice. func NotifyEventNew(buf []byte) xgb.Event { v := NotifyEvent{} b := 1 // don't read event number v.State = buf[b] b += 1 v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Time = xproto.Timestamp(xgb.Get32(buf[b:])) b += 4 v.Root = xproto.Window(xgb.Get32(buf[b:])) b += 4 v.Window = xproto.Window(xgb.Get32(buf[b:])) b += 4 v.Kind = buf[b] b += 1 if buf[b] == 1 { v.Forced = true } else { v.Forced = false } b += 1 b += 14 // padding return v }
// queryInfoReply reads a byte slice into a QueryInfoReply value. func queryInfoReply(buf []byte) *QueryInfoReply { v := new(QueryInfoReply) b := 1 // skip reply determinant v.State = buf[b] b += 1 v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.SaverWindow = xproto.Window(xgb.Get32(buf[b:])) b += 4 v.MsUntilServer = xgb.Get32(buf[b:]) b += 4 v.MsSinceUserInput = xgb.Get32(buf[b:]) b += 4 v.EventMask = xgb.Get32(buf[b:]) b += 4 v.Kind = buf[b] b += 1 b += 7 // padding return v }
// waitSBCReply reads a byte slice into a WaitSBCReply value. func waitSBCReply(buf []byte) *WaitSBCReply { v := new(WaitSBCReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.UstHi = xgb.Get32(buf[b:]) b += 4 v.UstLo = xgb.Get32(buf[b:]) b += 4 v.MscHi = xgb.Get32(buf[b:]) b += 4 v.MscLo = xgb.Get32(buf[b:]) b += 4 v.SbcHi = xgb.Get32(buf[b:]) b += 4 v.SbcLo = xgb.Get32(buf[b:]) b += 4 return v }
// getBuffersWithFormatReply reads a byte slice into a GetBuffersWithFormatReply value. func getBuffersWithFormatReply(buf []byte) *GetBuffersWithFormatReply { v := new(GetBuffersWithFormatReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.Width = xgb.Get32(buf[b:]) b += 4 v.Height = xgb.Get32(buf[b:]) b += 4 v.Count = xgb.Get32(buf[b:]) b += 4 b += 12 // padding v.Buffers = make([]DRI2Buffer, v.Count) b += DRI2BufferReadList(buf[b:], v.Buffers) return v }
// getClientDriverNameReply reads a byte slice into a GetClientDriverNameReply value. func getClientDriverNameReply(buf []byte) *GetClientDriverNameReply { v := new(GetClientDriverNameReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.ClientDriverMajorVersion = xgb.Get32(buf[b:]) b += 4 v.ClientDriverMinorVersion = xgb.Get32(buf[b:]) b += 4 v.ClientDriverPatchVersion = xgb.Get32(buf[b:]) b += 4 v.ClientDriverNameLen = xgb.Get32(buf[b:]) b += 4 b += 8 // padding { byteString := make([]byte, v.ClientDriverNameLen) copy(byteString[:v.ClientDriverNameLen], buf[b:]) v.ClientDriverName = string(byteString) b += xgb.Pad(int(v.ClientDriverNameLen)) } return v }
// getContextReply reads a byte slice into a GetContextReply value. func getContextReply(buf []byte) *GetContextReply { v := new(GetContextReply) b := 1 // skip reply determinant if buf[b] == 1 { v.Enabled = true } else { v.Enabled = false } b += 1 v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.ElementHeader = ElementHeader(buf[b]) b += 1 b += 3 // padding v.NumInterceptedClients = xgb.Get32(buf[b:]) b += 4 b += 16 // padding v.InterceptedClients = make([]ClientInfo, v.NumInterceptedClients) b += ClientInfoReadList(buf[b:], v.InterceptedClients) return v }
// getScreenSizeReply reads a byte slice into a GetScreenSizeReply value. func getScreenSizeReply(buf []byte) *GetScreenSizeReply { v := new(GetScreenSizeReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.Width = xgb.Get32(buf[b:]) b += 4 v.Height = xgb.Get32(buf[b:]) b += 4 v.Window = xproto.Window(xgb.Get32(buf[b:])) b += 4 v.Screen = xgb.Get32(buf[b:]) b += 4 return v }
// getXIDListReply reads a byte slice into a GetXIDListReply value. func getXIDListReply(buf []byte) *GetXIDListReply { v := new(GetXIDListReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.IdsLen = xgb.Get32(buf[b:]) b += 4 b += 20 // padding v.Ids = make([]uint32, v.IdsLen) for i := 0; i < int(v.IdsLen); i++ { v.Ids[i] = xgb.Get32(buf[b:]) b += 4 } return v }
// openConnectionReply reads a byte slice into a OpenConnectionReply value. func openConnectionReply(buf []byte) *OpenConnectionReply { v := new(OpenConnectionReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.SareaHandleLow = xgb.Get32(buf[b:]) b += 4 v.SareaHandleHigh = xgb.Get32(buf[b:]) b += 4 v.BusIdLen = xgb.Get32(buf[b:]) b += 4 b += 12 // padding { byteString := make([]byte, v.BusIdLen) copy(byteString[:v.BusIdLen], buf[b:]) v.BusId = string(byteString) b += xgb.Pad(int(v.BusIdLen)) } return v }
// DrmClipRectRead reads a byte slice into a DrmClipRect value. func DrmClipRectRead(buf []byte, v *DrmClipRect) int { b := 0 v.X1 = int16(xgb.Get16(buf[b:])) b += 2 v.Y1 = int16(xgb.Get16(buf[b:])) b += 2 v.X2 = int16(xgb.Get16(buf[b:])) b += 2 v.X3 = int16(xgb.Get16(buf[b:])) b += 2 return b }
// ScreenInfoRead reads a byte slice into a ScreenInfo value. func ScreenInfoRead(buf []byte, v *ScreenInfo) int { b := 0 v.XOrg = int16(xgb.Get16(buf[b:])) b += 2 v.YOrg = int16(xgb.Get16(buf[b:])) b += 2 v.Width = xgb.Get16(buf[b:]) b += 2 v.Height = xgb.Get16(buf[b:]) b += 2 return b }
// getVersionReply reads a byte slice into a GetVersionReply value. func getVersionReply(buf []byte) *GetVersionReply { v := new(GetVersionReply) b := 1 // skip reply determinant v.MajorVersion = buf[b] b += 1 v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.MinorVersion = xgb.Get16(buf[b:]) b += 2 return v }
// queryVersionReply reads a byte slice into a QueryVersionReply value. func queryVersionReply(buf []byte) *QueryVersionReply { v := new(QueryVersionReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.MajorVersion = xgb.Get16(buf[b:]) b += 2 v.MinorVersion = xgb.Get16(buf[b:]) b += 2 return v }
// BadDamageErrorNew constructs a BadDamageError value that implements xgb.Error from a byte slice. func BadDamageErrorNew(buf []byte) xgb.Error { v := BadDamageError{} v.NiceName = "BadDamage" b := 1 // skip error determinant b += 1 // don't read error number v.Sequence = xgb.Get16(buf[b:]) b += 2 return v }
// SurfaceInfoRead reads a byte slice into a SurfaceInfo value. func SurfaceInfoRead(buf []byte, v *SurfaceInfo) int { b := 0 v.Id = Surface(xgb.Get32(buf[b:])) b += 4 v.ChromaFormat = xgb.Get16(buf[b:]) b += 2 v.Pad0 = xgb.Get16(buf[b:]) b += 2 v.MaxWidth = xgb.Get16(buf[b:]) b += 2 v.MaxHeight = xgb.Get16(buf[b:]) b += 2 v.SubpictureMaxWidth = xgb.Get16(buf[b:]) b += 2 v.SubpictureMaxHeight = xgb.Get16(buf[b:]) b += 2 v.McType = xgb.Get32(buf[b:]) b += 4 v.Flags = xgb.Get32(buf[b:]) b += 4 return b }
// createSubpictureReply reads a byte slice into a CreateSubpictureReply value. func createSubpictureReply(buf []byte) *CreateSubpictureReply { v := new(CreateSubpictureReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.WidthActual = xgb.Get16(buf[b:]) b += 2 v.HeightActual = xgb.Get16(buf[b:]) b += 2 v.NumPaletteEntries = xgb.Get16(buf[b:]) b += 2 v.EntryBytes = xgb.Get16(buf[b:]) b += 2 v.ComponentOrder = make([]byte, 4) copy(v.ComponentOrder[:4], buf[b:]) b += xgb.Pad(int(4)) b += 12 // padding v.PrivData = make([]uint32, v.Length) for i := 0; i < int(v.Length); i++ { v.PrivData[i] = xgb.Get32(buf[b:]) b += 4 } b = xgb.Pad(b) return v }
// NotifyEventNew constructs a NotifyEvent value that implements xgb.Event from a byte slice. func NotifyEventNew(buf []byte) xgb.Event { v := NotifyEvent{} b := 1 // don't read event number v.ShapeKind = Kind(buf[b]) b += 1 v.Sequence = xgb.Get16(buf[b:]) b += 2 v.AffectedWindow = xproto.Window(xgb.Get32(buf[b:])) b += 4 v.ExtentsX = int16(xgb.Get16(buf[b:])) b += 2 v.ExtentsY = int16(xgb.Get16(buf[b:])) b += 2 v.ExtentsWidth = xgb.Get16(buf[b:]) b += 2 v.ExtentsHeight = xgb.Get16(buf[b:]) b += 2 v.ServerTime = xproto.Timestamp(xgb.Get32(buf[b:])) b += 4 if buf[b] == 1 { v.Shaped = true } else { v.Shaped = false } b += 1 b += 11 // padding return v }
// copyRegionReply reads a byte slice into a CopyRegionReply value. func copyRegionReply(buf []byte) *CopyRegionReply { v := new(CopyRegionReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 return v }
// InvalidateBuffersEventNew constructs a InvalidateBuffersEvent value that implements xgb.Event from a byte slice. func InvalidateBuffersEventNew(buf []byte) xgb.Event { v := InvalidateBuffersEvent{} b := 1 // don't read event number b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Drawable = xproto.Drawable(xgb.Get32(buf[b:])) b += 4 return v }
// getDrawableInfoReply reads a byte slice into a GetDrawableInfoReply value. func getDrawableInfoReply(buf []byte) *GetDrawableInfoReply { v := new(GetDrawableInfoReply) b := 1 // skip reply determinant b += 1 // padding v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.DrawableTableIndex = xgb.Get32(buf[b:]) b += 4 v.DrawableTableStamp = xgb.Get32(buf[b:]) b += 4 v.DrawableOriginX = int16(xgb.Get16(buf[b:])) b += 2 v.DrawableOriginY = int16(xgb.Get16(buf[b:])) b += 2 v.DrawableSizeW = int16(xgb.Get16(buf[b:])) b += 2 v.DrawableSizeH = int16(xgb.Get16(buf[b:])) b += 2 v.NumClipRects = xgb.Get32(buf[b:]) b += 4 v.BackX = int16(xgb.Get16(buf[b:])) b += 2 v.BackY = int16(xgb.Get16(buf[b:])) b += 2 v.NumBackClipRects = xgb.Get32(buf[b:]) b += 4 v.ClipRects = make([]DrmClipRect, v.NumClipRects) b += DrmClipRectReadList(buf[b:], v.ClipRects) b = (b + 3) & ^3 // alignment gap v.BackClipRects = make([]DrmClipRect, v.NumBackClipRects) b += DrmClipRectReadList(buf[b:], v.BackClipRects) return v }
// queryVersionReply reads a byte slice into a QueryVersionReply value. func queryVersionReply(buf []byte) *QueryVersionReply { v := new(QueryVersionReply) b := 1 // skip reply determinant if buf[b] == 1 { v.SharedPixmaps = true } else { v.SharedPixmaps = false } b += 1 v.Sequence = xgb.Get16(buf[b:]) b += 2 v.Length = xgb.Get32(buf[b:]) // 4-byte units b += 4 v.MajorVersion = xgb.Get16(buf[b:]) b += 2 v.MinorVersion = xgb.Get16(buf[b:]) b += 2 v.Uid = xgb.Get16(buf[b:]) b += 2 v.Gid = xgb.Get16(buf[b:]) b += 2 v.PixmapFormat = buf[b] b += 1 b += 15 // padding return v }