[Spice-devel] [PATCH v2 0/4] Protocol file syntax documentation
Pavel Grunt
pgrunt at redhat.com
Mon Oct 17 06:32:26 UTC 2016
Hi Victor,
On Sat, 2016-10-15 at 15:38 +0200, Victor Toso wrote:
> Hi,
>
> On Thu, Sep 29, 2016 at 12:28:44PM +0100, Frediano Ziglio wrote:
> > Small update for this patchset:
> > - fix headers in "Extended protocol documentation";
> > - added some more documentation on attributes.
> >
> > Frediano Ziglio (4):
> > Start adding protocol file documentation
> > Start writing some documentation on protocol
> > Extended protocol documentation
> > More work on attribute protocol documentation
>
> Ah, I thought this was in already, I was going to add some infom.
> Let's have this, we can do more improvements or move it somewhere
> else
> if necessary later on.
>
> Acked-by: Victor Toso <victortoso at redhat.com>
>
> About what I was going to include is how the order of the messages
> in
> spice.proto need to be in the same order of what is declared in the
> protocol itself otherwise the (de)marshalling could be using the
> wrong
> function to (un)serialize.
>
> - full explanation just for reference
>
> I'm playing with a new message to tell (or choose) the preferred
> video
> codecs for streams. So I've included a new enum.h like:
> (note that message is after gl-draw-done here)
Not sure if I understand you correctly - but you should not modify
enums.h by yourself. As the first line of the file says, it should be
generated by spice_codegen.py (spice-common repository), eg:
./spice_codegen.py -e spice.proto ../spice-protocol/spice/enums.h
Pavel
>
> --- a/spice/enums.h
> +++ b/spice/enums.h
> @@ -529,6 +529,7 @@ enum {
> SPICE_MSGC_DISPLAY_STREAM_REPORT,
> SPICE_MSGC_DISPLAY_PREFERRED_COMPRESSION,
> SPICE_MSGC_DISPLAY_GL_DRAW_DONE,
> + SPICE_MSGC_DISPLAY_PREFERRED_VIDEO_CODEC_TYPE,
>
> SPICE_MSGC_END_DISPLAY
> };
>
> But what I did on spice.proto was:
> (the message is before gl-draw-done)
>
> --- a/spice.proto
> +++ b/spice.proto
> @@ -984,6 +984,10 @@ channel DisplayChannel : BaseChannel {
> } preferred_compression;
>
> message {
> + video_codec_type codec_type;
> + } preferred_video_codec_type;
> +
> + message {
> } gl_draw_done;
> };
>
> The outcome in common/generated_server_demarshallers.c is
>
> (...)
> static parse_msg_func_t funcs2[5] = {
> parse_msgc_display_init,
> parse_msgc_display_stream_report,
> parse_msgc_display_preferred_compression,
> parse_msgc_display_preferred_video_codec_type
> parse_msgc_display_gl_draw_done,
> };
>
> The handlers follow the order of spice.proto, meaning that on
> demarshalling it was using parse_msgc_display_gl_draw_done()
> function
> for SPICE_MSGC_DISPLAY_PREFERRED_VIDEO_CODEC_TYPE message.
>
> ;)
>
> Cheers,
> toso
>
> >
> > Makefile.am | 2 +-
> > configure.ac | 2 +
> > docs/Makefile.am | 17 ++
> > docs/spice_protocol.txt | 423
> > ++++++++++++++++++++++++++++++++++++++++++++++++
> > m4/spice_manual.m4 | 32 ++++
> > 5 files changed, 475 insertions(+), 1 deletion(-)
> > create mode 100644 docs/Makefile.am
> > create mode 100644 docs/spice_protocol.txt
> > create mode 100644 m4/spice_manual.m4
> >
> > --
> > 2.7.4
> >
> > _______________________________________________
> > Spice-devel mailing list
> > Spice-devel at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/spice-devel
>
> _______________________________________________
> Spice-devel mailing list
> Spice-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/spice-devel
More information about the Spice-devel
mailing list