aboutsummaryrefslogtreecommitdiff
path: root/nexgb/auto_bigreq.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_bigreq.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_bigreq.go')
-rw-r--r--nexgb/auto_bigreq.go112
1 files changed, 112 insertions, 0 deletions
diff --git a/nexgb/auto_bigreq.go b/nexgb/auto_bigreq.go
new file mode 100644
index 0000000..d008bce
--- /dev/null
+++ b/nexgb/auto_bigreq.go
@@ -0,0 +1,112 @@
+package xgb
+
+/*
+ This file was generated by bigreq.xml on May 6 2012 3:00:43am EDT.
+ This file is automatically generated. Edit at your peril!
+*/
+
+// Skipping definition for base type 'Float'
+
+// 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'
+
+// Request BigreqEnable
+// size: 4
+type BigreqEnableCookie struct {
+ *cookie
+}
+
+func (c *Conn) BigreqEnable() BigreqEnableCookie {
+ cookie := c.newCookie(true, true)
+ c.newRequest(c.bigreqEnableRequest(), cookie)
+ return BigreqEnableCookie{cookie}
+}
+
+func (c *Conn) BigreqEnableUnchecked() BigreqEnableCookie {
+ cookie := c.newCookie(false, true)
+ c.newRequest(c.bigreqEnableRequest(), cookie)
+ return BigreqEnableCookie{cookie}
+}
+
+// Request reply for BigreqEnable
+// size: 12
+type BigreqEnableReply struct {
+ Sequence uint16
+ Length uint32
+ // padding: 1 bytes
+ MaximumRequestLength uint32
+}
+
+// Waits and reads reply data from request BigreqEnable
+func (cook BigreqEnableCookie) Reply() (*BigreqEnableReply, error) {
+ buf, err := cook.reply()
+ if err != nil {
+ return nil, err
+ }
+ if buf == nil {
+ return nil, nil
+ }
+ return bigreqEnableReply(buf), nil
+}
+
+// Read reply into structure from buffer for BigreqEnable
+func bigreqEnableReply(buf []byte) *BigreqEnableReply {
+ v := new(BigreqEnableReply)
+ 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.MaximumRequestLength = Get32(buf[b:])
+ b += 4
+
+ return v
+}
+
+func (cook BigreqEnableCookie) Check() error {
+ return cook.check()
+}
+
+// Write request to wire for BigreqEnable
+func (c *Conn) bigreqEnableRequest() []byte {
+ size := 4
+ b := 0
+ buf := make([]byte, size)
+
+ buf[b] = c.extensions["BIG-REQUESTS"]
+ b += 1
+
+ buf[b] = 0 // request opcode
+ b += 1
+
+ Put16(buf[b:], uint16(size/4)) // write request size in 4-byte units
+ b += 2
+
+ return buf
+}