00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef CG_UPNP_AV_CCDSCONTROLPOINT_H
00010 #define CG_UPNP_AV_CCDSCONTROLPOINT_H
00011
00012 #include <cybergarage/upnp/cdevice.h>
00013 #include <cybergarage/contentdirectory/ccdsactionarguments.h>
00014
00035 int cg_upnp_av_cds_control_invokeaction(CgUpnpDevice* upnpDevice,
00036 char* actionName,
00037 char** errorString,
00038 ...);
00039
00047 BOOL cg_upnp_av_cds_create_cg_xml(char* xmldoc, CgXmlNodeList* nodelist);
00048
00058 #define cg_upnp_av_cds_control_getsearchcaps(upnpDevice, \
00059 errorString, \
00060 searchCaps) \
00061 \
00062 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00063 CG_UPNP_CDS_ACTION_GETSEARCHCAPABILITIES, \
00064 errorString, \
00065 CG_UPNP_CDS_ARG_SEARCHCAPS, searchCaps, \
00066 NULL)
00067
00077 #define cg_upnp_av_cds_control_getsortcaps(upnpDevice, \
00078 errorString, \
00079 sortCaps) \
00080 \
00081 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00082 CG_UPNP_CDS_ACTION_GETSORTCAPABILITIES, \
00083 errorString, \
00084 CG_UPNP_CDS_ARG_SORTCAPS, sortCaps, \
00085 NULL)
00086
00096 #define cg_upnp_av_cds_control_getsystemupdateid(upnpDevice, \
00097 errorString, \
00098 id) \
00099 \
00100 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00101 CG_UPNP_CDS_ACTION_GETSYSTEMUPDATEID, \
00102 errorString, \
00103 CG_UPNP_CDS_ARG_ID, id, \
00104 NULL)
00105
00106
00124 #define cg_upnp_av_cds_control_browse(upnpDevice, \
00125 errorString, \
00126 objectID, \
00127 browseFlag, \
00128 filter, \
00129 startingIndex, \
00130 requestedCount, \
00131 sortCriteria, \
00132 result, \
00133 numberReturned, \
00134 totalMatches, \
00135 updateID) \
00136 \
00137 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00138 CG_UPNP_CDS_ACTION_BROWSE, \
00139 errorString, \
00140 CG_UPNP_CDS_ARG_OBJECTID, \
00141 objectID, \
00142 CG_UPNP_CDS_ARG_BROWSEFLAG, \
00143 browseFlag, \
00144 CG_UPNP_CDS_ARG_FILTER, \
00145 filter, \
00146 CG_UPNP_CDS_ARG_STARTINGINDEX, \
00147 startingIndex, \
00148 CG_UPNP_CDS_ARG_REQUESTEDCOUNT, \
00149 requestedCount, \
00150 CG_UPNP_CDS_ARG_SORTCRITERIA, \
00151 sortCriteria, \
00152 CG_UPNP_CDS_ARG_RESULT, \
00153 result, \
00154 CG_UPNP_CDS_ARG_NUMBERRETURNED, \
00155 numberReturned, \
00156 CG_UPNP_CDS_ARG_TOTALMATCHES, \
00157 totalMatches, \
00158 CG_UPNP_CDS_ARG_UPDATEID, \
00159 updateID, \
00160 NULL)
00161
00179 #define cg_upnp_av_cds_control_search(upnpDevice, \
00180 errorString, \
00181 containerID, \
00182 searchCriteria, \
00183 filter, \
00184 startingIndex, \
00185 requestedCount, \
00186 sortCriteria, \
00187 result, \
00188 numberReturned, \
00189 totalMatches, \
00190 updateID) \
00191 \
00192 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00193 CG_UPNP_CDS_ACTION_SEARCH, \
00194 errorString, \
00195 CG_UPNP_CDS_ARG_CONTAINERID, \
00196 containerID, \
00197 CG_UPNP_CDS_ARG_SEARCHCRITERIA, \
00198 searchCriteria, \
00199 CG_UPNP_CDS_ARG_FILTER, \
00200 filter, \
00201 CG_UPNP_CDS_ARG_STARTINGINDEX, \
00202 startingIndex, \
00203 CG_UPNP_CDS_ARG_REQUESTEDCOUNT, \
00204 requestedCount, \
00205 CG_UPNP_CDS_ARG_SORTCRITERIA, \
00206 sortCriteria, \
00207 CG_UPNP_CDS_ARG_RESULT, \
00208 result, \
00209 CG_UPNP_CDS_ARG_NUMBERRETURNED, \
00210 numberReturned, \
00211 CG_UPNP_CDS_ARG_TOTALMATCHES, \
00212 totalMatches, \
00213 CG_UPNP_CDS_ARG_UPDATEID, \
00214 updateID, \
00215 NULL)
00216
00228 #define cg_upnp_av_cds_control_createobject(upnpDevice, \
00229 errorString, \
00230 containerID, \
00231 elements, \
00232 objectID, \
00233 result) \
00234 \
00235 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00236 CG_UPNP_CDS_ACTION_CREATEOBJECT, \
00237 errorString, \
00238 CG_UPNP_CDS_ARG_CONTAINERID, \
00239 containerID, \
00240 CG_UPNP_CDS_ARG_ELEMENTS, \
00241 elements, \
00242 CG_UPNP_CDS_ARG_OBJECTID, \
00243 objectID, \
00244 CG_UPNP_CDS_ARG_RESULT, \
00245 result, \
00246 NULL)
00247
00256 #define cg_upnp_av_cds_control_destroyobject(upnpDevice, \
00257 errorString, \
00258 objectID) \
00259 \
00260 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00261 CG_UPNP_CDS_ACTION_DESTROYOBJECT, \
00262 errorString, \
00263 CG_UPNP_CDS_ARG_OBJECTID, \
00264 objectID, \
00265 NULL)
00266
00278 #define cg_upnp_av_cds_control_updateobject(upnpDevice, \
00279 errorString, \
00280 objectID, \
00281 currentTagValue, \
00282 newTagValue) \
00283 \
00284 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00285 CG_UPNP_CDS_ACTION_UPDATEOBJECT, \
00286 errorString, \
00287 CG_UPNP_CDS_ARG_OBJECTID, \
00288 objectID, \
00289 CG_UPNP_CDS_ARG_CURRENTTAGVALUE, \
00290 currentTagValue, \
00291 CG_UPNP_CDS_ARG_NEWTAGVALUE, \
00292 NULL)
00293
00304 #define cg_upnp_av_cds_control_importresource(upnpDevice, \
00305 errorString, \
00306 sourceURI, \
00307 destinationURI, \
00308 transferID) \
00309 \
00310 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00311 CG_UPNP_CDS_ACTION_IMPORTRESOURCE, \
00312 CG_UPNP_CDS_ARG_SOURCEURI, \
00313 sourceURI, \
00314 CG_UPNP_CDS_ARG_DESTINATIONURI, \
00315 destinationURI, \
00316 CG_UPNP_CDS_ARG_TRANSFERID, \
00317 transferID, \
00318 NULL)
00319
00330 #define cg_upnp_av_cds_control_exportresource(upnpDevice, \
00331 sourceURI, \
00332 destinationURI, \
00333 transferID) \
00334 \
00335 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00336 CG_UPNP_CDS_ACTION_EXPORTRESOURCE, \
00337 errorString, \
00338 CG_UPNP_CDS_ARG_SOURCEURI, \
00339 sourceURI, \
00340 CG_UPNP_CDS_ARG_DESTINATIONURI, \
00341 destinationURI, \
00342 CG_UPNP_CDS_ARG_TRANSFERID, \
00343 transferID, \
00344 NULL)
00345
00354 #define cg_upnp_av_cds_control_stoptransferresource(upnpDevice, \
00355 errorString, \
00356 transferID) \
00357 \
00358 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00359 CG_UPNP_CDS_ACTION_STOPTRANSFERRESOURCE, \
00360 errorString, \
00361 CG_UPNP_CDS_ARG_TRANSFERID, \
00362 transferID, \
00363 NULL)
00364
00374 #define cg_upnp_av_cds_control_gettransferprogress(upnpDevice, \
00375 errorString, \
00376 transferID, \
00377 transferStatus, \
00378 transferLength, \
00379 transferTotal) \
00380 \
00381 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00382 CG_UPNP_CDS_ACTION_GETTRANSFERPROGRESS, \
00383 errorString, \
00384 CG_UPNP_CDS_ARG_TRANSFERID, \
00385 transferID, \
00386 CG_UPNP_CDS_ARG_TRANSFERSTATUS, \
00387 transferStatus, \
00388 CG_UPNP_CDS_ARG_TRANSFERLENGTH, \
00389 transferLength, \
00390 CG_UPNP_CDS_ARG_TRANSFERTOTAL, \
00391 transferTotal, \
00392 NULL)
00393
00405 #define cg_upnp_av_cds_control_deleteresource(upnpDevice, \
00406 errorString, \
00407 resourceURI) \
00408 \
00409 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00410 CG_UPNP_CDS_ACTION_DELETERESOURCE, \
00411 errorString, \
00412 CG_UPNP_CDS_ARG_RESOURCEURI, \
00413 resourceURI, \
00414 NULL)
00415
00424 #define cg_upnp_av_cds_control_createreference(upnpDevice, \
00425 errorString, \
00426 containerID, \
00427 objectID, \
00428 newID) \
00429 \
00430 cg_upnp_av_cds_control_invokeaction(upnpDevice, \
00431 CG_UPNP_CDS_ACTION_CREATEREFERENCE, \
00432 errorString, \
00433 CG_UPNP_CDS_ARG_CONTAINERID, \
00434 containerID, \
00435 CG_UPNP_CDS_ARG_OBJECTID, \
00436 objectID, \
00437 CG_UPNP_CDS_ARG_NEWID, \
00438 newID, \
00439 NULL)
00440
00441 #endif