97ff080229c91ef587c87d566b6f6be192ba4e5e
[profile/ivi/GUPnP-AV.git] / libgupnp-av / gupnp-dlna.c
1 /*
2  * Copyright (C) 2009 Nokia Corporation.
3  *
4  * Authors: Zeeshan Ali <zeeshanak@gnome.org>
5  *                      <zeeshan.ali@nokia.com>
6  *
7  * This library is free software; you can redistribute it and/or
8  * modify it under the terms of the GNU Library General Public
9  * License as published by the Free Software Foundation; either
10  * version 2 of the License, or (at your option) any later version.
11  *
12  * This library is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
15  * Library General Public License for more details.
16  *
17  * You should have received a copy of the GNU Library General Public
18  * License along with this library; if not, write to the
19  * Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
20  * Boston, MA 02110-1301, USA.
21  */
22
23 #include "gupnp-dlna.h"
24
25 GType
26 gupnp_dlna_conversion_get_type (void)
27 {
28         static GType type = 0;
29
30         if (type == 0) {
31                 static const GFlagsValue values[] = {
32                         { GUPNP_DLNA_CONVERSION_NONE,
33                           "GUPNP_DLNA_CONVERSION_NONE",
34                           "none" },
35                         { GUPNP_DLNA_CONVERSION_TRANSCODED,
36                           "GUPNP_DLNA_CONVERSION_TRANSCODED",
37                           "transcoded" },
38                         { 0, NULL, NULL }
39                 };
40
41                 type = g_flags_register_static
42                                 (g_intern_static_string ("GUPnPDLNAConversion"),
43                                  values);
44         }
45
46         return type;
47 }
48
49 GType
50 gupnp_dlna_operation_get_type (void)
51 {
52         static GType type = 0;
53
54         if (type == 0) {
55                 static const GFlagsValue values[] = {
56                         { GUPNP_DLNA_OPERATION_NONE,
57                           "GUPNP_DLNA_OPERATION_NONE",
58                           "none" },
59                         { GUPNP_DLNA_OPERATION_RANGE,
60                           "GUPNP_DLNA_OPERATION_RANGE",
61                           "range" },
62                         { GUPNP_DLNA_OPERATION_TIMESEEK,
63                           "GUPNP_DLNA_OPERATION_TIMESEEK",
64                           "timeseek" },
65                         { 0, NULL, NULL }
66                 };
67
68                 type = g_flags_register_static
69                                 (g_intern_static_string ("GUPnPDLNAOperation"),
70                                  values);
71         }
72
73         return type;
74 }
75
76 GType
77 gupnp_dlna_flags_get_type (void)
78 {
79         static GType type = 0;
80
81         if (type == 0) {
82                 static const GFlagsValue values[] = {
83                         { GUPNP_DLNA_FLAGS_NONE,
84                           "GUPNP_DLNA_FLAGS_NONE",
85                           "none" },
86                         { GUPNP_DLNA_FLAGS_SENDER_PACED,
87                           "GUPNP_DLNA_FLAGS_SENDER_PACED",
88                           "sender-paced" },
89                         { GUPNP_DLNA_FLAGS_TIME_BASED_SEEK,
90                           "GUPNP_DLNA_FLAGS_TIME_BASED_SEEK",
91                           "time-based-seek" },
92                         { GUPNP_DLNA_FLAGS_BYTE_BASED_SEEK,
93                           "GUPNP_DLNA_FLAGS_BYTE_BASED_SEEK",
94                           "byte-based-seek" },
95                         { GUPNP_DLNA_FLAGS_PLAY_CONTAINER,
96                           "GUPNP_DLNA_FLAGS_PLAY_CONTAINER",
97                           "play-container" },
98                         { GUPNP_DLNA_FLAGS_S0_INCREASE,
99                           "GUPNP_DLNA_FLAGS_S0_INCREASE",
100                           "s0-increase" },
101                         { GUPNP_DLNA_FLAGS_SN_INCREASE,
102                           "GUPNP_DLNA_FLAGS_SN_INCREASE",
103                           "sn-increase" },
104                         { GUPNP_DLNA_FLAGS_RTSP_PAUSE,
105                           "GUPNP_DLNA_FLAGS_RTSP_PAUSE",
106                           "rtsp-pause" },
107                         { GUPNP_DLNA_FLAGS_STREAMING_TRANSFER_MODE,
108                           "GUPNP_DLNA_FLAGS_STREAMING_TRANSFER_MODE",
109                           "streaming-transfer-mode" },
110                         { GUPNP_DLNA_FLAGS_INTERACTIVE_TRANSFER_MODE,
111                           "GUPNP_DLNA_FLAGS_INTERACTIVE_TRANSFER_MODE",
112                           "interactive-transfer-mode" },
113                         { GUPNP_DLNA_FLAGS_BACKGROUND_TRANSFER_MODE,
114                           "GUPNP_DLNA_FLAGS_BACKGROUND_TRANSFER_MODE",
115                           "background-transfer-mode" },
116                         { GUPNP_DLNA_FLAGS_CONNECTION_STALL,
117                           "GUPNP_DLNA_FLAGS_CONNECTION_STALL",
118                           "connection-stall" },
119                         { GUPNP_DLNA_FLAGS_DLNA_V15,
120                           "GUPNP_DLNA_FLAGS_DLNA_V15",
121                           "dlna-v15" },
122                         { 0, NULL, NULL }
123                 };
124
125                 type = g_flags_register_static
126                                 (g_intern_static_string ("GUPnPDLNAFlags"),
127                                  values);
128         }
129
130         return type;
131 }
132
133 GType
134 gupnp_ocm_flags_get_type (void)
135 {
136         static GType type = 0;
137
138         if (type == 0) {
139                 static const GFlagsValue values[] = {
140                         { GUPNP_OCM_FLAGS_NONE,
141                           "GUPNP_OCM_FLAGS_NONE",
142                           "none" },
143                         { GUPNP_OCM_FLAGS_UPLOAD,
144                           "GUPNP_OCM_FLAGS_UPLOAD",
145                           "upload" },
146                         { GUPNP_OCM_FLAGS_CREATE_CONTAINER,
147                           "GUPNP_OCM_FLAGS_CREATE_CONTAINER",
148                           "create-container" },
149                         { GUPNP_OCM_FLAGS_DESTROYABLE,
150                           "GUPNP_OCM_FLAGS_DESTROYABLE",
151                           "destroyable" },
152                         { GUPNP_OCM_FLAGS_UPLOAD_DESTROYABLE,
153                           "GUPNP_OCM_FLAGS_UPLOAD_DESTROYABLE",
154                           "upload-destroyable" },
155                         { GUPNP_OCM_FLAGS_CHANGE_METADATA,
156                           "GUPNP_OCM_FLAGS_CHANGE_METADATA",
157                           "change-metadata" },
158                         { 0, NULL, NULL }
159                 };
160
161                 type = g_flags_register_static
162                                 (g_intern_static_string ("GUPnPOCMFlags"),
163                                  values);
164         }
165
166         return type;
167 }