author | rosfran |
Fri Oct 27 23:42:34 2006 +0100 (2006-10-27) | |
branch | trunk |
changeset 62 | 2a552f003c4e |
parent 52 | 67e72eadeef2 |
child 63 | 957b55b3f630 |
permissions | -rwxr-xr-x |
leo_sobral@2 | 1 |
/* vim: set sw=2: -*- Mode: C; tab-width: 2; indent-tabs-mode: t; c-basic-offset: 2; c-indent-level: 2 -*- */ |
leo_sobral@2 | 2 |
/* GStreamer |
leo_sobral@2 | 3 |
* Copyright (C) <2006> Rosfran Borges <rosfran.borges@indt.org.br> |
leo_sobral@2 | 4 |
* |
leo_sobral@2 | 5 |
* This library is free software; you can redistribute it and/or |
leo_sobral@2 | 6 |
* modify it under the terms of the GNU Library General Public |
leo_sobral@2 | 7 |
* License as published by the Free Software Foundation; either |
leo_sobral@2 | 8 |
* version 2 of the License, or (at your option) any later version. |
leo_sobral@2 | 9 |
* |
leo_sobral@2 | 10 |
* This library is distributed in the hope that it will be useful, |
leo_sobral@2 | 11 |
* but WITHOUT ANY WARRANTY; without even the implied warranty of |
leo_sobral@2 | 12 |
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
leo_sobral@2 | 13 |
* Library General Public License for more |
leo_sobral@2 | 14 |
*/ |
leo_sobral@2 | 15 |
|
leo_sobral@2 | 16 |
#ifndef __GST_MYTHTV_SRC_H__ |
leo_sobral@2 | 17 |
#define __GST_MYTHTV_SRC_H__ |
leo_sobral@2 | 18 |
|
leo_sobral@2 | 19 |
#include <gst/gst.h> |
leo_sobral@2 | 20 |
#include <gst/base/gstpushsrc.h> |
leo_sobral@2 | 21 |
#include <stdio.h> |
leo_sobral@2 | 22 |
|
leo_sobral@2 | 23 |
#include <gmyth/gmyth_socket.h> |
rosfran@52 | 24 |
#include <gmyth/gmyth_file_transfer.h> |
rosfran@52 | 25 |
#include <gmyth/gmyth_livetv.h> |
leo_sobral@2 | 26 |
|
leo_sobral@2 | 27 |
G_BEGIN_DECLS |
leo_sobral@2 | 28 |
|
leo_sobral@2 | 29 |
#define GST_TYPE_MYTHTV_SRC \ |
leo_sobral@2 | 30 |
(gst_mythtv_src_get_type()) |
leo_sobral@2 | 31 |
#define GST_MYTHTV_SRC(obj) \ |
leo_sobral@2 | 32 |
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_MYTHTV_SRC,GstMythtvSrc)) |
leo_sobral@2 | 33 |
#define GST_MYTHTV_SRC_CLASS(klass) \ |
leo_sobral@2 | 34 |
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_MYTHTV_SRC,GstMythtvSrcClass)) |
leo_sobral@2 | 35 |
#define GST_IS_MYTHTV_SRC(obj) \ |
leo_sobral@2 | 36 |
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_MYTHTV_SRC)) |
leo_sobral@2 | 37 |
#define GST_IS_MYTHTV_SRC_CLASS(klass) \ |
leo_sobral@2 | 38 |
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_MYTHTV_SRC)) |
leo_sobral@2 | 39 |
|
leo_sobral@2 | 40 |
typedef struct _GstMythtvSrc GstMythtvSrc; |
leo_sobral@2 | 41 |
typedef struct _GstMythtvSrcClass GstMythtvSrcClass; |
leo_sobral@2 | 42 |
|
leo_sobral@2 | 43 |
struct _GstMythtvSrc { |
leo_sobral@2 | 44 |
GstBaseSrc element; |
leo_sobral@2 | 45 |
|
leo_sobral@2 | 46 |
/* MythFileTransfer */ |
rosfran@40 | 47 |
GMythFileTransfer *file_transfer; |
leo_sobral@2 | 48 |
|
rosfran@40 | 49 |
GMythLiveTV *spawn_livetv; |
leo_sobral@2 | 50 |
|
leo_sobral@2 | 51 |
gchar *uri_name; |
leo_sobral@2 | 52 |
gchar *user_agent; |
leo_sobral@2 | 53 |
|
leo_sobral@2 | 54 |
gchar *live_chain_id; |
leo_sobral@2 | 55 |
|
leo_sobral@2 | 56 |
gint mythtv_version; |
leo_sobral@2 | 57 |
|
rosfran@52 | 58 |
gint64 content_size; |
leo_sobral@2 | 59 |
|
rosfran@61 | 60 |
gint64 content_size_last; |
rosfran@61 | 61 |
|
leo_sobral@2 | 62 |
guint64 bytes_read; |
leo_sobral@2 | 63 |
|
rosfran@52 | 64 |
gint64 read_offset; |
leo_sobral@2 | 65 |
|
leo_sobral@2 | 66 |
gboolean eos; |
leo_sobral@2 | 67 |
|
leo_sobral@2 | 68 |
gboolean do_start; |
leo_sobral@2 | 69 |
|
leo_sobral@2 | 70 |
gboolean unique_setup; |
leo_sobral@2 | 71 |
|
leo_sobral@2 | 72 |
gboolean live_tv; |
rosfran@52 | 73 |
|
rosfran@52 | 74 |
gboolean enable_timing_position; |
leo_sobral@2 | 75 |
|
leo_sobral@2 | 76 |
gint live_tv_id; |
leo_sobral@2 | 77 |
|
leo_sobral@2 | 78 |
/* MythTV capabilities */ |
leo_sobral@2 | 79 |
GstCaps *mythtv_caps; |
leo_sobral@2 | 80 |
|
leo_sobral@2 | 81 |
/* enable Myth TV debug messages */ |
leo_sobral@2 | 82 |
gboolean mythtv_msgs_dbg; |
rosfran@40 | 83 |
|
rosfran@40 | 84 |
gboolean update_prog_chain; |
leo_sobral@2 | 85 |
}; |
leo_sobral@2 | 86 |
|
leo_sobral@2 | 87 |
struct _GstMythtvSrcClass { |
leo_sobral@2 | 88 |
GstBaseSrcClass parent_class; |
leo_sobral@2 | 89 |
}; |
leo_sobral@2 | 90 |
|
leo_sobral@2 | 91 |
GType gst_mythtv_src_get_type (void); |
leo_sobral@2 | 92 |
|
leo_sobral@2 | 93 |
G_END_DECLS |
leo_sobral@2 | 94 |
|
leo_sobral@2 | 95 |
#endif /* __GST_MYTHTV_SRC_H__ */ |