IToiDlnaContentDirectoryService.idl
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015 #ifndef ITOIDLNACONTENTDIRECTORYSERVICE_IDL
00016 #define ITOIDLNACONTENTDIRECTORYSERVICE_IDL
00017
00018 #include "TToiInvalidArgumentException.idl"
00019 #include "TToiOperationNotSupportedException.idl"
00020 #include "TToiNoDataException.idl"
00021 #include "TToiNotEnoughResourcesException.idl"
00022 #include "TToiUnhandledValueException.idl"
00023 #include "IToiApplicationService.idl"
00024 #include "IToiOperationManager.idl"
00025
00026 #include "IToiApplicationService.idl"
00109
00110
00111 interface IToiDlnaContentDirectoryService {
00112
00119
00125 const IToiOperationManager::TToiOperationResult OP_RESULT_OBJECT = 1;
00126
00132 const IToiOperationManager::TToiOperationResult OP_RESULT_CAPABILITY = 2;
00133
00135
00142
00147 const IToiOperationManager::TToiOperationError OP_ERROR_INVALID_ARGUMENTS = -3;
00148
00153 const IToiOperationManager::TToiOperationError OP_ERROR_INVALID_ACTION = -4;
00154
00159 const IToiOperationManager::TToiOperationError OP_ERROR_UNSUPPORTED_SEARCH_CRITERIA = -5;
00160
00165 const IToiOperationManager::TToiOperationError OP_ERROR_UNSUPPORTED_SORT_CRITERIA = -6;
00166
00171 const IToiOperationManager::TToiOperationError OP_ERROR_NO_SUCH_CONTAINER = -7;
00172
00177 const IToiOperationManager::TToiOperationError OP_ERROR_RESTRICTED = -8;
00178
00183 const IToiOperationManager::TToiOperationError OP_ERROR_CAN_NOT_PROCESS_REQUEST = -9;
00184
00186
00188 typedef long TToiPropertyId;
00189
00191 typedef sequence < TToiPropertyId > TToiPropertyIdSequence;
00192
00194 struct TToiProperty {
00196 IToiDlnaContentDirectoryService::TToiPropertyId Id;
00204 long SubIndex;
00206 string Value;
00207 };
00208
00210 typedef sequence < TToiProperty > TToiPropertySequence;
00211
00216 typedef sequence < long > TToiSortIdSequence;
00217
00224
00229 const TToiPropertyId PROPERTY_OBJECT_ATTR_CHILD_COUNT = 11;
00230
00235 const TToiPropertyId PROPERTY_OBJECT_ATTR_SEARCHABLE = 12;
00236
00241 const TToiPropertyId PROPERTY_OBJECT_ATTR_REF_ID = 13;
00242
00247 const TToiPropertyId PROPERTY_OBJECT_ATTR_RESTRICTED = 14;
00248
00253 const TToiPropertyId PROPERTY_CREATE_CLASS = 20;
00254
00259 const TToiPropertyId PROPERTY_CREATE_CLASS_ATTR_INCLUDE_DERIVED = 21;
00260
00265 const TToiPropertyId PROPERTY_CREATE_CLASS_ATTR_NAME = 22;
00266
00271 const TToiPropertyId PROPERTY_CREATOR = 30;
00272
00277 const TToiPropertyId PROPERTY_DATE = 40;
00278
00283 const TToiPropertyId PROPERTY_DESCRIPTION = 50;
00284
00289 const TToiPropertyId PROPERTY_LANGUAGE = 60;
00290
00295 const TToiPropertyId PROPERTY_RES = 70;
00296
00301 const TToiPropertyId PROPERTY_RES_ATTR_BITRATE = 71;
00302
00307 const TToiPropertyId PROPERTY_RES_ATTR_BITS_PER_SAMPLE = 72;
00308
00313 const TToiPropertyId PROPERTY_RES_ATTR_COLOR_DEPTH = 73;
00314
00319 const TToiPropertyId PROPERTY_RES_ATTR_DURATION = 74;
00320
00325 const TToiPropertyId PROPERTY_RES_ATTR_IMPORT_URI = 75;
00326
00331 const TToiPropertyId PROPERTY_RES_ATTR_AUDIO_CHANNELS_COUNT = 76;
00332
00337 const TToiPropertyId PROPERTY_RES_ATTR_PROTOCOL_INFO = 77;
00338
00343 const TToiPropertyId PROPERTY_RES_ATTR_RESOLUTION = 78;
00344
00349 const TToiPropertyId PROPERTY_RES_ATTR_SAMPLE_FREQUENCY = 79;
00350
00356 const TToiPropertyId PROPERTY_RES_ATTR_SIZE = 80;
00357
00362 const TToiPropertyId PROPERTY_RES_ATTR_PROTECTION = 81;
00363
00369 const TToiPropertyId PROPERTY_RES_RENDER_SUPPORTED = 82;
00370
00375 const TToiPropertyId PROPERTY_SEARCH_CLASS = 90;
00376
00381 const TToiPropertyId PROPERTY_SEARCH_CLASS_ATTR_INCLUDE_DERIVED = 91;
00382
00387 const TToiPropertyId PROPERTY_SEARCH_CLASS_ATTR_NAME = 92;
00388
00393 const TToiPropertyId PROPERTY_ACTOR = 100;
00394
00399 const TToiPropertyId PROPERTY_ALBUM = 110;
00400
00405 const TToiPropertyId PROPERTY_ARTIST = 120;
00406
00411 const TToiPropertyId PROPERTY_AUTHOR = 130;
00412
00417 const TToiPropertyId PROPERTY_PRODUCER = 140;
00418
00423 const TToiPropertyId PROPERTY_DIRECTOR = 150;
00424
00429 const TToiPropertyId PROPERTY_PUBLISHER = 160;
00430
00435 const TToiPropertyId PROPERTY_CONTRIBUTOR = 170;
00436
00441 const TToiPropertyId PROPERTY_GENRE = 180;
00442
00447 const TToiPropertyId PROPERTY_ICON = 190;
00448
00453 const TToiPropertyId PROPERTY_ORIGINAL_TRACK_NUMBER = 200;
00454
00459 const TToiPropertyId PROPERTY_PLAYLIST = 210;
00460
00465 const TToiPropertyId PROPERTY_RATING = 220;
00466
00471 const TToiPropertyId PROPERTY_SCHEDULED_START_TIME = 230;
00472
00477 const TToiPropertyId PROPERTY_SCHEDULED_END_TIME = 240;
00478
00483 const TToiPropertyId PROPERTY_CHANNEL_NAME = 250;
00484
00489 const TToiPropertyId PROPERTY_CHANNEL_NR = 260;
00490
00495 const TToiPropertyId PROPERTY_STORAGE_FREE = 270;
00496
00501 const TToiPropertyId PROPERTY_STORAGE_MAX_PARTITION = 280;
00502
00507 const TToiPropertyId PROPERTY_STORAGE_MEDIUM = 290;
00508
00513 const TToiPropertyId PROPERTY_STORAGE_TOTAL = 300;
00514
00519 const TToiPropertyId PROPERTY_STORAGE_USED = 310;
00520
00525 const TToiPropertyId PROPERTY_WRITE_STATUS = 320;
00526
00531 const TToiPropertyId PROPERTY_REGION = 330;
00532
00537 const TToiPropertyId PROPERTY_LONG_DESCRIPTION = 340;
00538
00543 const TToiPropertyId PROPERTY_RADIO_CALL_SIGN = 350;
00544
00549 const TToiPropertyId PROPERTY_RADIO_STATION_ID = 360;
00550
00555 const TToiPropertyId PROPERTY_RADIO_BAND = 370;
00556
00561 const TToiPropertyId PROPERTY_USER_ANNOTATION = 380;
00562
00567 const TToiPropertyId PROPERTY_CLASS = 390;
00568
00573 const TToiPropertyId PROPERTY_TITLE = 400;
00574
00580 const TToiPropertyId PROPERTY_RES_PI_PROTOCOL = 410;
00581
00587 const TToiPropertyId PROPERTY_RES_PI_MIME_TYPE = 411;
00588
00594 const TToiPropertyId PROPERTY_RES_PI_PROFILE_NAME = 412;
00595
00601 const TToiPropertyId PROPERTY_RES_PI_OPERATIONS = 413;
00602
00608 const TToiPropertyId PROPERTY_RES_PI_PLAY_SPEED = 414;
00609
00615 const TToiPropertyId PROPERTY_RES_PI_CONVERSION_INDICATOR = 415;
00616
00622 const TToiPropertyId PROPERTY_RES_PI_FLAGS = 416;
00623
00629 const TToiPropertyId PROPERTY_RES_PI_MAX_RTSP_SPEED = 417;
00630
00632
00637 struct TToiCdsObject {
00639 string ObjectId;
00641 string ParentId;
00643 string ObjectClass;
00645 string Title;
00648 long ServerIndex;
00650 IToiDlnaContentDirectoryService::TToiPropertySequence Properties;
00651 };
00652
00654 typedef sequence < TToiCdsObject > TToiCdsObjectSequence;
00655
00658 enum TToiPropertyType
00659 {
00660
00663
00664 TYPE_STRING,
00665
00668
00669 TYPE_INTEGER,
00670
00673
00674 TYPE_BOOLEAN,
00675
00678
00679 TYPE_DATE,
00680
00684
00685 TYPE_RESOLUTION,
00686
00689
00690 TYPE_DURATION
00691 };
00693 struct TToiCdsCapabilities {
00695 IToiDlnaContentDirectoryService::TToiPropertyIdSequence SearchingCapabilities;
00697 IToiDlnaContentDirectoryService::TToiPropertyIdSequence SortingCapabilities;
00700 long ActionCapabilities;
00701 };
00702
00707 enum TToiCdsActionCapability
00708 {
00709
00713
00714 CDS_CAPABILITY_CREATE_OBJECT,
00715
00719
00720 CDS_CAPABILITY_DESTROY_OBJECT,
00721
00725
00726 CDS_CAPABILITY_SEARCH,
00727
00731
00732 CDS_CAPABILITY_IMPORT_RESOURCE,
00733
00737
00738 CDS_CAPABILITY_EXPORT_RESOURCE,
00739
00743
00744 CDS_CAPABILITY_STOP_TRANSFER_PROGRESS,
00745
00749
00750 CDS_CAPABILITY_GET_TRANSFER_PROGRESS,
00751
00755
00756 CDS_CAPABILITY_IMAGE_UPLOAD,
00757
00761
00762 CDS_CAPABILITY_AUDIO_UPLOAD,
00763
00767
00768 CDS_CAPABILITY_AV_UPLOAD,
00769
00773
00774 CDS_CAPABILITY_X_GET_DLNA_UPLOAD_PROFILES
00775 };
00783 void GetRootContainerId(out string objectId);
00784
00803 void GetCapabilities(in IToiOperationManager::TToiOperationId operationId)
00804 raises (TToiInvalidArgumentException, TToiOperationNotSupportedException);
00805
00852 void Browse(in IToiOperationManager::TToiOperationId operationId,
00853 in string containerId,
00854 in TToiPropertyIdSequence propertyFilter,
00855 in TToiSortIdSequence sortCriteria,
00856 in long startIndex,
00857 in long count)
00858 raises (TToiInvalidArgumentException, TToiOperationNotSupportedException);
00859
00883 void GetObjectById(in IToiOperationManager::TToiOperationId operationId,
00884 in string objectId,
00885 in TToiPropertyIdSequence propertyFilter)
00886 raises (TToiInvalidArgumentException, TToiOperationNotSupportedException);
00887
00939 void Search(in IToiOperationManager::TToiOperationId operationId,
00940 in string containerId,
00941 in string searchCriteria,
00942 in TToiPropertyIdSequence propertyFilter,
00943 in TToiSortIdSequence sortCriteria,
00944 in long startIndex,
00945 in long count)
00946 raises (TToiInvalidArgumentException, TToiOperationNotSupportedException);
00947
00961 void GetPropertyInfoById(in TToiPropertyId id,
00962 out string name,
00963 out TToiPropertyType type)
00964 raises (TToiInvalidArgumentException);
00965
00977 void GetPropertyIdByName(in string name,
00978 out TToiPropertyId id)
00979 raises (TToiInvalidArgumentException);
00980
01007 void GetOperationObjectResult(in IToiOperationManager::TToiOperationId operationId,
01008 in long maxCount,
01009 out TToiCdsObjectSequence objects,
01010 out boolean hasMore)
01011 raises (TToiInvalidArgumentException, TToiNoDataException);
01012
01031 void GetOperationCapabilityResult(in IToiOperationManager::TToiOperationId operationId,
01032 out TToiCdsCapabilities capabilities)
01033 raises (TToiInvalidArgumentException, TToiNoDataException);
01034
01053
01054
01055
01056 void GetCdsOperationManager(out string address);
01057
01064 void GetServerUuid(out string uuid);
01065
01070
01071
01072
01073 void ReleaseInstance();
01074
01075
01076
01089 void RegisterObserver(in IToiApplicationService::TToiApplicationId applicationId,
01090 in string address)
01091 raises (TToiInvalidArgumentException);
01092
01101 void ReleaseObserver(in string address)
01102 raises (TToiInvalidArgumentException);
01103
01104 };
01105
01106 #endif