00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #include "nsISupports.idl"
00028
00029 interface nsIArray;
00030 interface sbIDevice;
00031
00037 [scriptable, uuid(54d42a87-9031-4928-991e-e66f4916a90b)]
00038 interface sbIDeviceCapabilities : nsISupports
00039 {
00040
00046 void setFunctionTypes([array, size_is(aFunctionTypesCount)]
00047 in PRUint32 aFunctionTypes,
00048 in unsigned long aFunctionTypesCount);
00049
00055 void setEventTypes([array, size_is(aEventTypesCount)]
00056 in unsigned long aEventTypes,
00057 in unsigned long aEventTypesCount);
00058
00065 void addContentTypes(in PRUint32 aFunctionType,
00066 [array, size_is(aContentTypesCount)] in unsigned long aContentTypes,
00067 in unsigned long aContentTypesCount);
00068
00075 void addFormats(in PRUint32 aContentType,
00076 [array, size_is(aFormatsCount)] in string aFormats,
00077 in unsigned long aFormatsCount);
00078
00083 void initDone();
00084
00085
00086
00090 const PRUint32 FUNCTION_UNKNOWN = 0x00;
00091 const PRUint32 FUNCTION_DEVICE = 0x01;
00092 const PRUint32 FUNCTION_AUDIO_PLAYBACK = 0x02;
00093 const PRUint32 FUNCTION_AUDIO_CAPTURE = 0x03;
00094 const PRUint32 FUNCTION_IMAGE_DISPLAY = 0x04;
00095 const PRUint32 FUNCTION_IMAGE_CAPTURE = 0x05;
00096 const PRUint32 FUNCTION_VIDEO_PLAYBACK = 0x06;
00097 const PRUint32 FUNCTION_VIDEO_CAPTURE = 0x07;
00098
00102 const PRUint32 FUNCTION_CLIENT_DEFINED = 0x80000000;
00103
00107
00108 void getSupportedFunctionTypes(out unsigned long aArrayCount,
00109 [retval, array, size_is(aArrayCount)]
00110 out PRUint32 aFunctionTypes);
00111
00115 const PRUint32 CONTENT_UNKNOWN = 0x00;
00116 const PRUint32 CONTENT_FILE = 0x01;
00117 const PRUint32 CONTENT_FOLDER = 0x02;
00118 const PRUint32 CONTENT_AUDIO = 0x03;
00119 const PRUint32 CONTENT_IMAGE = 0x04;
00120 const PRUint32 CONTENT_VIDEO = 0x05;
00121 const PRUint32 CONTENT_PLAYLIST = 0x06;
00122 const PRUint32 CONTENT_ALBUM = 0x07;
00123
00127 const PRUint32 CONTENT_CLIENT_DEFINED = 0x80000000;
00128
00132 void getSupportedContentTypes(in PRUint32 aFunctionType,
00133 out unsigned long aArrayCount,
00134 [retval, array, size_is(aArrayCount)]
00135 out PRUint32 aContentTypes);
00136
00140 void getSupportedFormats(in PRUint32 aContentType,
00141 out unsigned long aArrayCount,
00142 [retval, array, size_is(aArrayCount)]
00143 out string aSupportedFormats);
00144
00148 void getSupportedEvents(out unsigned long aArrayCount,
00149 [retval, array, size_is(aArrayCount)]
00150 out unsigned long aSupportedEvents);
00151 };