aboutsummaryrefslogtreecommitdiff
path: root/nexgb/auto_ge.go
diff options
context:
space:
mode:
authorAndrew Gallant (Ocelot) <Andrew.Gallant@tufts.edu>2012-05-06 03:06:48 -0400
committerAndrew Gallant (Ocelot) <Andrew.Gallant@tufts.edu>2012-05-06 03:06:48 -0400
commit135cee57610cccd10009b264cce7fbcd5af367cb (patch)
treeaa4bb450d28eff241e35978233613436edafe045 /nexgb/auto_ge.go
parent70ebcf5178018a31378367f67542fc89980e62a2 (diff)
downloadhaven-135cee57610cccd10009b264cce7fbcd5af367cb.tar.gz
haven-135cee57610cccd10009b264cce7fbcd5af367cb.tar.xz
haven-135cee57610cccd10009b264cce7fbcd5af367cb.zip
auto-generated Go code ftw. ~65,000 lines. woooheee
Diffstat (limited to 'nexgb/auto_ge.go')
-rw-r--r--nexgb/auto_ge.go125
1 files changed, 125 insertions, 0 deletions
diff --git a/nexgb/auto_ge.go b/nexgb/auto_ge.go
new file mode 100644
index 0000000..d9f52c1
--- /dev/null
+++ b/nexgb/auto_ge.go
@@ -0,0 +1,125 @@
+package xgb
+
+/*
+ This file was generated by ge.xml on May 6 2012 3:00:44am EDT.
+ This file is automatically generated. Edit at your peril!
+*/
+
+// Skipping definition for base type 'Id'
+
+// Skipping definition for base type 'Card8'
+
+// Skipping definition for base type 'Int16'
+
+// Skipping definition for base type 'Int32'
+
+// Skipping definition for base type 'Void'
+
+// Skipping definition for base type 'Byte'
+
+// Skipping definition for base type 'Int8'
+
+// Skipping definition for base type 'Card16'
+
+// Skipping definition for base type 'Char'
+
+// Skipping definition for base type 'Card32'
+
+// Skipping definition for base type 'Double'
+
+// Skipping definition for base type 'Bool'
+
+// Skipping definition for base type 'Float'
+
+// Request GeQueryVersion
+// size: 8
+type GeQueryVersionCookie struct {
+ *cookie
+}
+
+func (c *Conn) GeQueryVersion(ClientMajorVersion uint16, ClientMinorVersion uint16) GeQueryVersionCookie {
+ cookie := c.newCookie(true, true)
+ c.newRequest(c.geQueryVersionRequest(ClientMajorVersion, ClientMinorVersion), cookie)
+ return GeQueryVersionCookie{cookie}
+}
+
+func (c *Conn) GeQueryVersionUnchecked(ClientMajorVersion uint16, ClientMinorVersion uint16) GeQueryVersionCookie {
+ cookie := c.newCookie(false, true)
+ c.newRequest(c.geQueryVersionRequest(ClientMajorVersion, ClientMinorVersion), cookie)
+ return GeQueryVersionCookie{cookie}
+}
+
+// Request reply for GeQueryVersion
+// size: 32
+type GeQueryVersionReply struct {
+ Sequence uint16
+ Length uint32
+ // padding: 1 bytes
+ MajorVersion uint16
+ MinorVersion uint16
+ // padding: 20 bytes
+}
+
+// Waits and reads reply data from request GeQueryVersion
+func (cook GeQueryVersionCookie) Reply() (*GeQueryVersionReply, error) {
+ buf, err := cook.reply()
+ if err != nil {
+ return nil, err
+ }
+ if buf == nil {
+ return nil, nil
+ }
+ return geQueryVersionReply(buf), nil
+}
+
+// Read reply into structure from buffer for GeQueryVersion
+func geQueryVersionReply(buf []byte) *GeQueryVersionReply {
+ v := new(GeQueryVersionReply)
+ b := 1 // skip reply determinant
+
+ b += 1 // padding
+
+ v.Sequence = Get16(buf[b:])
+ b += 2
+
+ v.Length = Get32(buf[b:]) // 4-byte units
+ b += 4
+
+ v.MajorVersion = Get16(buf[b:])
+ b += 2
+
+ v.MinorVersion = Get16(buf[b:])
+ b += 2
+
+ b += 20 // padding
+
+ return v
+}
+
+func (cook GeQueryVersionCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for GeQueryVersion
+func (c *Conn) geQueryVersionRequest(ClientMajorVersion uint16, ClientMinorVersion uint16) []byte {
+ size := 8
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["GENERIC EVENT EXTENSION"]
+ b += 1
+
+ buf[b] = 0 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ Put16(buf[b:], ClientMajorVersion)
+ b += 2
+
+ Put16(buf[b:], ClientMinorVersion)
+ b += 2
+
+ return buf
+}