FreeRDP
tsmf_ifman.h
1 
22 #ifndef FREERDP_CHANNEL_TSMF_CLIENT_IFMAN_H
23 #define FREERDP_CHANNEL_TSMF_CLIENT_IFMAN_H
24 
25 #include <freerdp/freerdp.h>
26 
27 typedef struct
28 {
29  IWTSVirtualChannelCallback* channel_callback;
30  const char* decoder_name;
31  const char* audio_name;
32  const char* audio_device;
33  BYTE presentation_id[16];
34  UINT32 stream_id;
35  UINT32 message_id;
36 
37  wStream* input;
38  UINT32 input_size;
39  wStream* output;
40  BOOL output_pending;
41  UINT32 output_interface_id;
42 } TSMF_IFMAN;
43 
44 UINT tsmf_ifman_rim_exchange_capability_request(TSMF_IFMAN* ifman);
45 UINT tsmf_ifman_exchange_capability_request(TSMF_IFMAN* ifman);
46 UINT tsmf_ifman_check_format_support_request(TSMF_IFMAN* ifman);
47 UINT tsmf_ifman_on_new_presentation(TSMF_IFMAN* ifman);
48 UINT tsmf_ifman_add_stream(TSMF_IFMAN* ifman, rdpContext* rdpcontext);
49 UINT tsmf_ifman_set_topology_request(TSMF_IFMAN* ifman);
50 UINT tsmf_ifman_remove_stream(TSMF_IFMAN* ifman);
51 UINT tsmf_ifman_set_source_video_rect(TSMF_IFMAN* ifman);
52 UINT tsmf_ifman_shutdown_presentation(TSMF_IFMAN* ifman);
53 UINT tsmf_ifman_on_stream_volume(TSMF_IFMAN* ifman);
54 UINT tsmf_ifman_on_channel_volume(TSMF_IFMAN* ifman);
55 UINT tsmf_ifman_set_video_window(TSMF_IFMAN* ifman);
56 UINT tsmf_ifman_update_geometry_info(TSMF_IFMAN* ifman);
57 UINT tsmf_ifman_set_allocator(TSMF_IFMAN* ifman);
58 UINT tsmf_ifman_notify_preroll(TSMF_IFMAN* ifman);
59 UINT tsmf_ifman_on_sample(TSMF_IFMAN* ifman);
60 UINT tsmf_ifman_on_flush(TSMF_IFMAN* ifman);
61 UINT tsmf_ifman_on_end_of_stream(TSMF_IFMAN* ifman);
62 UINT tsmf_ifman_on_playback_started(TSMF_IFMAN* ifman);
63 UINT tsmf_ifman_on_playback_paused(TSMF_IFMAN* ifman);
64 UINT tsmf_ifman_on_playback_restarted(TSMF_IFMAN* ifman);
65 UINT tsmf_ifman_on_playback_stopped(TSMF_IFMAN* ifman);
66 UINT tsmf_ifman_on_playback_rate_changed(TSMF_IFMAN* ifman);
67 
68 #endif /* FREERDP_CHANNEL_TSMF_CLIENT_IFMAN_H */