summaryrefslogtreecommitdiffstats
path: root/gst/librfb/rfbdecoder.h
diff options
context:
space:
mode:
authorDavid Schleef <ds@schleef.org>2005-05-17 07:11:56 +0000
committerDavid Schleef <ds@schleef.org>2005-05-17 07:11:56 +0000
commit9bc18a9a15e8ea20bf3fde066294b2866b751f6f (patch)
tree74e9875d5a45976fb5e7b4c6ef7ad1b651979949 /gst/librfb/rfbdecoder.h
parent1be79923f04722ba0cd3538bc9d80a2c5c509910 (diff)
downloadgst-plugins-bad-9bc18a9a15e8ea20bf3fde066294b2866b751f6f.tar.gz
gst-plugins-bad-9bc18a9a15e8ea20bf3fde066294b2866b751f6f.tar.bz2
gst-plugins-bad-9bc18a9a15e8ea20bf3fde066294b2866b751f6f.zip
gst/librfb/: Some much needed hackage. Fixed #171659, but then went on to actually make it work with Vino, get timin...
Original commit message from CVS: * gst/librfb/Makefile.am: * gst/librfb/gstrfbsrc.c: * gst/librfb/rfb.h: * gst/librfb/rfbbuffer.c: * gst/librfb/rfbbuffer.h: * gst/librfb/rfbbytestream.c: * gst/librfb/rfbbytestream.h: * gst/librfb/rfbdecoder.c: * gst/librfb/rfbdecoder.h: Some much needed hackage. Fixed #171659, but then went on to actually make it work with Vino, get timing correct, make sure it doesn't leak, etc.
Diffstat (limited to 'gst/librfb/rfbdecoder.h')
-rw-r--r--gst/librfb/rfbdecoder.h19
1 files changed, 14 insertions, 5 deletions
diff --git a/gst/librfb/rfbdecoder.h b/gst/librfb/rfbdecoder.h
index db16cb2c..dd73ac44 100644
--- a/gst/librfb/rfbdecoder.h
+++ b/gst/librfb/rfbdecoder.h
@@ -3,18 +3,25 @@
#define _LIBRFB_DECODER_H_
#include <glib.h>
-#include <librfb/rfbbytestream.h>
+#include <rfbbuffer.h>
G_BEGIN_DECLS
+#define GST_CAT_DEFAULT gst_debug_rfbsrc
+
typedef struct _RfbDecoder RfbDecoder;
+typedef enum {
+ RFB_DECODER_IMAGE_UNKNOWN = 0,
+ RFB_DECODER_IMAGE_RGB332,
+ RFB_DECODER_IMAGE_xRGB
+} RfbDecoderImageFormat;
+
struct _RfbDecoder
{
- int (*send_data) (guint8 *buffer, int length, gpointer user_data);
- gpointer buffer_handler_data;
+ int fd;
- RfbBytestream *bytestream;
+ RfbBufferQueue *queue;
gpointer decoder_private;
@@ -28,6 +35,7 @@ struct _RfbDecoder
/* readable properties */
gboolean inited;
+ gboolean busy;
int protocol_major;
int protocol_minor;
@@ -45,8 +53,10 @@ struct _RfbDecoder
unsigned int red_shift;
unsigned int green_shift;
unsigned int blue_shift;
+ RfbDecoderImageFormat image_format;
char *name;
+ char *error_msg;
/* state information */
gboolean (*state) (RfbDecoder *decoder);
@@ -70,7 +80,6 @@ typedef struct _RfbRect
RfbDecoder *rfb_decoder_new (void);
-void rfb_decoder_use_file_descriptor (RfbDecoder * decoder, int fd);
void rfb_decoder_connect_tcp (RfbDecoder *decoder, char * addr, unsigned int port);
void rfb_decoder_set_peer (RfbDecoder * decoder);
gboolean rfb_decoder_iterate (RfbDecoder * decoder);