/* this is a file autogenerated by spice_codegen.py */
/*
  Copyright (C) 2013 Red Hat, Inc.

  This library is free software; you can redistribute it and/or
  modify it under the terms of the GNU Lesser General Public
  License as published by the Free Software Foundation; either
  version 2.1 of the License, or (at your option) any later version.

  This library is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  Lesser General Public License for more details.

  You should have received a copy of the GNU Lesser General Public
  License along with this library; if not, see <http://www.gnu.org/licenses/>.
*/

#include "common/messages.h"
#include <spice/protocol.h>
#include "common/marshaller.h"

#ifndef _H_GENERATED_SERVER_MARSHALLERS
#define _H_GENERATED_SERVER_MARSHALLERS

SPICE_BEGIN_DECLS

void spice_marshall_msg_migrate(SpiceMarshaller *m, const SpiceMsgMigrate *msg);
void spice_marshall_SpiceMsgData(SpiceMarshaller *m, const SpiceMsgData *msg);
void spice_marshall_msg_set_ack(SpiceMarshaller *m, const SpiceMsgSetAck *msg);
void spice_marshall_msg_ping(SpiceMarshaller *m, const SpiceMsgPing *msg);
void spice_marshall_msg_wait_for_channels(SpiceMarshaller *m, const SpiceMsgWaitForChannels *msg);
void spice_marshall_msg_disconnecting(SpiceMarshaller *m, const SpiceMsgDisconnect *msg);
void spice_marshall_msg_notify(SpiceMarshaller *m, const SpiceMsgNotify *msg);
void spice_marshall_SpiceMsgEmpty(SpiceMarshaller *m, const SpiceMsgEmpty *msg);
void spice_marshall_msg_main_migrate_begin(SpiceMarshaller *m, const SpiceMsgMainMigrationBegin *msg);
void spice_marshall_msg_main_init(SpiceMarshaller *m, const SpiceMsgMainInit *msg);
void spice_marshall_msg_main_channels_list(SpiceMarshaller *m, const SpiceMsgChannels *msg);
void spice_marshall_msg_main_mouse_mode(SpiceMarshaller *m, const SpiceMsgMainMouseMode *msg);
void spice_marshall_msg_main_multi_media_time(SpiceMarshaller *m, const SpiceMsgMainMultiMediaTime *msg);
void spice_marshall_msg_main_agent_disconnected(SpiceMarshaller *m, const SpiceMsgMainAgentDisconnect *msg);
void spice_marshall_msg_main_agent_token(SpiceMarshaller *m, const SpiceMsgMainAgentTokens *msg);
void spice_marshall_msg_main_migrate_switch_host(SpiceMarshaller *m, const SpiceMsgMainMigrationSwitchHost *msg);
void spice_marshall_msg_main_name(SpiceMarshaller *m, const SpiceMsgMainName *msg);
void spice_marshall_msg_main_uuid(SpiceMarshaller *m, const SpiceMsgMainUuid *msg);
void spice_marshall_msg_main_agent_connected_tokens(SpiceMarshaller *m, const SpiceMsgMainAgentConnectedTokens *msg);
void spice_marshall_msg_main_migrate_begin_seamless(SpiceMarshaller *m, const SpiceMsgMainMigrateBeginSeamless *msg);
void spice_marshall_msg_display_mode(SpiceMarshaller *m, const SpiceMsgDisplayMode *msg);
void spice_marshall_msg_display_copy_bits(SpiceMarshaller *m, const SpiceMsgDisplayCopyBits *msg);
void spice_marshall_msg_display_inval_list(SpiceMarshaller *m, const SpiceResourceList *msg);
void spice_marshall_msg_display_inval_all_pixmaps(SpiceMarshaller *m, const SpiceMsgWaitForChannels *msg);
void spice_marshall_msg_display_inval_palette(SpiceMarshaller *m, const SpiceMsgDisplayInvalOne *msg);
void spice_marshall_msg_display_stream_create(SpiceMarshaller *m, const SpiceMsgDisplayStreamCreate *msg);
void spice_marshall_msg_display_stream_data(SpiceMarshaller *m, const SpiceMsgDisplayStreamData *msg);
void spice_marshall_msg_display_stream_clip(SpiceMarshaller *m, const SpiceMsgDisplayStreamClip *msg);
void spice_marshall_msg_display_stream_destroy(SpiceMarshaller *m, const SpiceMsgDisplayStreamDestroy *msg);
void spice_marshall_msg_display_draw_fill(SpiceMarshaller *m, const SpiceMsgDisplayDrawFill *msg, SpiceMarshaller **brush_pat_out, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_msg_display_draw_opaque(SpiceMarshaller *m, const SpiceMsgDisplayDrawOpaque *msg, SpiceMarshaller **src_bitmap_out, SpiceMarshaller **pat_out, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_msg_display_draw_copy(SpiceMarshaller *m, const SpiceMsgDisplayDrawCopy *msg, SpiceMarshaller **src_bitmap_out, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_Image(SpiceMarshaller *m, const SpiceImage *msg, SpiceMarshaller **bitmap_palette_out, SpiceMarshaller **lzplt_palette_out);
void spice_marshall_Palette(SpiceMarshaller *m, const SpicePalette *msg);
void spice_marshall_msg_display_draw_blend(SpiceMarshaller *m, const SpiceMsgDisplayDrawCopy *msg, SpiceMarshaller **src_bitmap_out, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_msg_display_draw_blackness(SpiceMarshaller *m, const SpiceMsgDisplayDrawBlackness *msg, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_msg_display_draw_whiteness(SpiceMarshaller *m, const SpiceMsgDisplayDrawWhiteness *msg, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_msg_display_draw_invers(SpiceMarshaller *m, const SpiceMsgDisplayDrawInvers *msg, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_msg_display_draw_rop3(SpiceMarshaller *m, const SpiceMsgDisplayDrawRop3 *msg, SpiceMarshaller **src_bitmap_out, SpiceMarshaller **pat_out, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_msg_display_draw_stroke(SpiceMarshaller *m, const SpiceMsgDisplayDrawStroke *msg, SpiceMarshaller **style_out, SpiceMarshaller **pat_out);
void spice_marshall_msg_display_draw_text(SpiceMarshaller *m, const SpiceMsgDisplayDrawText *msg, SpiceMarshaller **fore_brush_pat_out, SpiceMarshaller **back_brush_pat_out);
void spice_marshall_msg_display_draw_transparent(SpiceMarshaller *m, const SpiceMsgDisplayDrawTransparent *msg, SpiceMarshaller **src_bitmap_out);
void spice_marshall_msg_display_draw_alpha_blend(SpiceMarshaller *m, const SpiceMsgDisplayDrawAlphaBlend *msg, SpiceMarshaller **src_bitmap_out);
void spice_marshall_msg_display_surface_create(SpiceMarshaller *m, const SpiceMsgSurfaceCreate *msg);
void spice_marshall_msg_display_surface_destroy(SpiceMarshaller *m, const SpiceMsgSurfaceDestroy *msg);
void spice_marshall_msg_display_stream_data_sized(SpiceMarshaller *m, const SpiceMsgDisplayStreamDataSized *msg);
void spice_marshall_msg_display_monitors_config(SpiceMarshaller *m, const SpiceMsgDisplayMonitorsConfig *msg);
void spice_marshall_msg_display_draw_composite(SpiceMarshaller *m, const SpiceMsgDisplayDrawComposite *msg, SpiceMarshaller **src_bitmap_out, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_msg_display_stream_activate_report(SpiceMarshaller *m, const SpiceMsgDisplayStreamActivateReport *msg);
void spice_marshall_msg_display_gl_scanout_unix(SpiceMarshaller *m, const SpiceMsgDisplayGlScanoutUnix *msg);
void spice_marshall_msg_display_gl_draw(SpiceMarshaller *m, const SpiceMsgDisplayGlDraw *msg);
void spice_marshall_msg_display_gl_scanout2_unix(SpiceMarshaller *m, const SpiceMsgDisplayGlScanout2Unix *msg);
void spice_marshall_msg_inputs_init(SpiceMarshaller *m, const SpiceMsgInputsInit *msg);
void spice_marshall_msg_inputs_key_modifiers(SpiceMarshaller *m, const SpiceMsgInputsKeyModifiers *msg);
void spice_marshall_msg_cursor_init(SpiceMarshaller *m, const SpiceMsgCursorInit *msg);
void spice_marshall_msg_cursor_set(SpiceMarshaller *m, const SpiceMsgCursorSet *msg);
void spice_marshall_msg_cursor_move(SpiceMarshaller *m, const SpiceMsgCursorMove *msg);
void spice_marshall_msg_cursor_trail(SpiceMarshaller *m, const SpiceMsgCursorTrail *msg);
void spice_marshall_msg_cursor_inval_one(SpiceMarshaller *m, const SpiceMsgDisplayInvalOne *msg);
void spice_marshall_msg_playback_data(SpiceMarshaller *m, const SpiceMsgPlaybackPacket *msg);
void spice_marshall_msg_playback_mode(SpiceMarshaller *m, const SpiceMsgPlaybackMode *msg);
void spice_marshall_msg_playback_start(SpiceMarshaller *m, const SpiceMsgPlaybackStart *msg);
void spice_marshall_SpiceMsgAudioVolume(SpiceMarshaller *m, const SpiceMsgAudioVolume *msg);
void spice_marshall_SpiceMsgAudioMute(SpiceMarshaller *m, const SpiceMsgAudioMute *msg);
void spice_marshall_msg_playback_latency(SpiceMarshaller *m, const SpiceMsgPlaybackLatency *msg);
void spice_marshall_msg_record_start(SpiceMarshaller *m, const SpiceMsgRecordStart *msg);
#ifdef USE_SMARTCARD
void spice_marshall_msg_smartcard_data(SpiceMarshaller *m, const SpiceMsgSmartcard *msg);
#endif /* USE_SMARTCARD */
void spice_marshall_SpiceMsgCompressedData(SpiceMarshaller *m, const SpiceMsgCompressedData *msg);
void spice_marshall_msg_port_init(SpiceMarshaller *m, const SpiceMsgPortInit *msg);
void spice_marshall_msg_port_event(SpiceMarshaller *m, const SpiceMsgPortEvent *msg);
void spice_marshall_String(SpiceMarshaller *m, const SpiceString *msg);
void spice_marshall_Rect(SpiceMarshaller *m, const SpiceRect *msg);
void spice_marshall_Point(SpiceMarshaller *m, const SpicePoint *msg);
void spice_marshall_DisplayBase(SpiceMarshaller *m, const SpiceMsgDisplayBase *msg);
void spice_marshall_Fill(SpiceMarshaller *m, const SpiceFill *msg, SpiceMarshaller **brush_pat_out, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_Opaque(SpiceMarshaller *m, const SpiceOpaque *msg, SpiceMarshaller **src_bitmap_out, SpiceMarshaller **pat_out, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_Copy(SpiceMarshaller *m, const SpiceCopy *msg, SpiceMarshaller **src_bitmap_out, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_Blend(SpiceMarshaller *m, const SpiceCopy *msg, SpiceMarshaller **src_bitmap_out, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_Blackness(SpiceMarshaller *m, const SpiceBlackness *msg, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_Whiteness(SpiceMarshaller *m, const SpiceWhiteness *msg, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_Invers(SpiceMarshaller *m, const SpiceInvers *msg, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_Rop3(SpiceMarshaller *m, const SpiceRop3 *msg, SpiceMarshaller **src_bitmap_out, SpiceMarshaller **pat_out, SpiceMarshaller **mask_bitmap_out);
void spice_marshall_Stroke(SpiceMarshaller *m, const SpiceStroke *msg, SpiceMarshaller **style_out, SpiceMarshaller **pat_out);
void spice_marshall_Path(SpiceMarshaller *m, const SpicePath *msg);
void spice_marshall_Text(SpiceMarshaller *m, const SpiceText *msg, SpiceMarshaller **fore_brush_pat_out, SpiceMarshaller **back_brush_pat_out);
void spice_marshall_Transparent(SpiceMarshaller *m, const SpiceTransparent *msg, SpiceMarshaller **src_bitmap_out);
void spice_marshall_AlphaBlend(SpiceMarshaller *m, const SpiceAlphaBlend *msg, SpiceMarshaller **src_bitmap_out);
void spice_marshall_Composite(SpiceMarshaller *m, const SpiceComposite *msg, SpiceMarshaller **src_bitmap_out, SpiceMarshaller **mask_bitmap_out);

SPICE_END_DECLS

#endif
