Alexander Larsson
140cf2aa79
Update client and protocol to support the new SpiceClipRects
2012-03-20 15:25:46 +01:00
Alexander Larsson
13f8149daf
demarshaller: Support @c_ptr attributes for pointers
...
A @c_ptr pointer is stored in memory as a real pointer rather than a
SPICE_ADDRESS. This is a temporary thing that will be removed again
when all SPICE_ADDRESSes have been converted to real pointer.
2012-03-20 15:25:46 +01:00
Alexander Larsson
dcaba909d3
demarshaller: Don't parse @zero members
...
These just write zeros at the right place in the network protocol
typically for old back-compat things. We don't want to read these
back in.
2012-03-20 15:25:46 +01:00
Gerd Hoffmann
f2d7fbdb19
qxl abi: parse QXLCopy + QXLBlend.
...
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
2012-03-20 15:25:46 +01:00
Gerd Hoffmann
54fc0642e1
qxl abi: parse QXLOpaque.
...
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
2012-03-20 15:25:45 +01:00
Gerd Hoffmann
435b1515a7
qxl abi: parse QXLFill.
...
Also adapt to tyops fix (s/rop_decriptor/rop_descriptor/).
2012-03-20 15:25:45 +01:00
Alexander Larsson
144b2fbd75
Fix build error due to member "SpiceMsgEmpty" same name as type
2012-03-20 15:25:45 +01:00
Alexander Larsson
302788f147
spice.proto: surface_create.format is of type surface_fmt
2012-03-20 15:25:45 +01:00
Alexander Larsson
8b4ab9026d
Use smaller size for enums and flags on the network
...
This makes the protocol more compact. This was mainly done for the commonly
used types. Some seldom used ones are still 32bit for future compatibility.
2012-03-20 15:25:45 +01:00
Alexander Larsson
7578be4a23
Remove support for clip by path
...
This is not supported currently anyway and was not generated before.
2012-03-20 15:25:45 +01:00
Alexander Larsson
fc30c38a94
spice.proto: No need for @ptr32 as that is now the default
2012-03-20 15:25:45 +01:00
Alexander Larsson
baa0718cec
spice.proto: Don't use @fixedsize for Brush
...
There is no reason to send the maximum size on the network, that is just
a waste of space most of the time.
2012-03-20 15:25:45 +01:00
Alexander Larsson
31fd48e773
Don't send zero data item for clips with no data
2012-03-20 15:25:45 +01:00
Alexander Larsson
1d5d5272e2
Make pointers 32bit in new protocol format
2012-03-20 15:25:45 +01:00
Alexander Larsson
db5b8fa673
marshaller: Correctly determine if switches are fixed size
...
Switches are fixed size only if all cases have the same size *and*
it has a default case or all the valid cases are listed.
2012-03-20 15:25:45 +01:00
Alexander Larsson
32dbd8a6a5
Fix handling of @ptr32 network size
2012-03-20 15:25:45 +01:00
Alexander Larsson
2ef7116925
Remove minor markup in unstable protocol as we're resetting minor to 0
2012-03-20 15:25:45 +01:00
Alexander Larsson
fbf883085f
Add spice1.proto describing the 0.4 version of the network protocolx
2012-03-20 15:25:44 +01:00
Alexander Larsson
ee944c8314
Add support for @virtual markup in spice protocol
...
This means the member is not sent on the network at all.
Instead its initialized to the attribute argument when demarshalled.
This is useful for backwards compatibility support.
2012-03-20 15:25:44 +01:00
Alexander Larsson
9f3a36f3f9
Make internal generated marshaller functions static
2012-03-20 15:25:44 +01:00
Alexander Larsson
2523cec8c4
Support extra prefix in code generators
...
This is require when we add a new spice.proto for the old (major 1)
protocol description.
2012-03-20 15:25:44 +01:00
Alexander Larsson
38412df9aa
Support creating marshallers that are called indirectly
...
This is needed if we want to switch marshallers depending on what
major version the remote side has.
2012-03-20 15:25:44 +01:00
Alexander Larsson
f9610c1a65
Add destructor for demarshalled messages
...
This is required because we don't want to free messages that just
refer to the unparsed message (like SpiceMsgData).
Also, in the future we might need it for more complex demarshalling.
2012-03-20 15:25:44 +01:00
Yonit Halperin
1f3c193ceb
Lossy compression of RGBA images (on WAN connection)
...
The RGB channels are compressed using JPEG.
The alpha channel is compressed using LZ.
2012-03-20 15:25:44 +01:00
Yonit Halperin
e8ee21132b
applying zlib compression over glz on WAN connection
2012-03-20 15:25:44 +01:00
Alexander Larsson
b49b77d8e9
Make generated marshallers build on win32
2012-03-20 15:25:44 +01:00
Alexander Larsson
a0a1907716
Make sound data @as_ptr to avoid copying data
2012-03-20 15:25:44 +01:00
Alexander Larsson
4b670111a0
Make ping data @as_ptr to avoid copying data
2012-03-20 15:25:44 +01:00
Alexander Larsson
98d3b1d5c3
Make cursor data @as_ptr to avoid copying data
2012-03-20 15:25:44 +01:00
Alexander Larsson
41c07b938b
Support @as_ptr in demarshaller to avoid copying data unnecessary
2012-03-20 15:25:44 +01:00
Alexander Larsson
405900c4a2
Allow multiple --include args
2012-03-20 15:25:43 +01:00
Alexander Larsson
d802d7e7f8
Make tunnel_service_add members be of cstring array size
2012-03-20 15:25:43 +01:00
Alexander Larsson
3114699378
Use @ptr32 for 32bit offsets in spice.proto
2012-03-20 15:25:43 +01:00
Alexander Larsson
27238241f0
Add @nomarshal in a few places where we're marshalling manually
2012-03-20 15:25:43 +01:00
Alexander Larsson
a4cb48f1ba
spice.proto: add @outvar markup
...
With this we can reference pointer member with no naming conflicts
2012-03-20 15:25:43 +01:00
Alexander Larsson
79bd3284c6
Add support for generating message and structure marshallers
2012-03-20 15:25:43 +01:00
Alexander Larsson
809524ac5d
Add python code to automake system
2012-03-20 15:25:43 +01:00
Alexander Larsson
b1dc7fae2a
Initial import of spice protocol description and demarshall generator
...
The "spice.proto" file describes in detail the networking prototcol
that spice uses and spice_codegen.py can parse this and generate
demarshallers for such network messages.
2012-03-20 15:25:43 +01:00