27 #ifndef __SBDEVICECAPABILITIES_H__
28 #define __SBDEVICECAPABILITIES_H__
30 #include <sbIDeviceCapabilities.h>
33 #include <nsIClassInfo.h>
35 #include <nsClassHashtable.h>
36 #include <nsInterfaceHashtable.h>
39 #include <nsIVariant.h>
40 #include <nsVoidArray.h>
48 NS_DECL_SBIDEVICECAPABILITIES
54 ~sbDeviceCapabilities();
59 typedef nsClassHashtable<nsUint32HashKey, nsTArray<PRUint32> >
ContentTypes;
61 typedef nsClassHashtable<nsStringHashKey, nsTArray<nsCOMPtr<nsISupports> > >
FormatTypes;
98 NS_DECL_SBIDEVCAPRANGE
112 nsTArray<PRInt32> mValues;
122 NS_DECL_SBIDEVCAPFRACTION
132 PRUint32 mDenominator;
142 NS_DECL_SBIFORMATTYPECONSTRAINT
148 typedef nsCOMPtr<nsIVariant> Value;
150 nsString mConstraintName;
162 NS_DECL_SBIIMAGEFORMATTYPE
168 typedef nsCOMPtr<nsIArray> Sizes;
169 typedef nsCOMPtr<sbIDevCapRange> Widths;
170 typedef nsCOMPtr<sbIDevCapRange> Heights;
172 nsCString mImageFormat;
173 Sizes mSupportedExplicitSizes;
174 Widths mSupportedWidths;
175 Heights mSupportedHeights;
185 NS_DECL_SBIAUDIOFORMATTYPE
191 typedef nsCOMPtr<sbIDevCapRange> Bitrates;
192 typedef nsCOMPtr<sbIDevCapRange> SampleRates;
193 typedef nsCOMPtr<sbIDevCapRange> SupportedChannels;
194 typedef nsCOMPtr<nsIArray> FormatConstraints;
196 nsCString mContainerFormat;
197 nsCString mAudioCodec;
198 Bitrates mSupportedBitrates;
199 SampleRates mSupportedSampleRates;
200 SupportedChannels mSupportedChannels;
201 FormatConstraints mFormatSpecificConstraints;
211 NS_DECL_SBIDEVCAPVIDEOSTREAM
217 ~sbDevCapVideoStream();
220 nsCOMPtr<nsIArray> mExplicitSizes;
221 nsCOMPtr<sbIDevCapRange> mWidths;
222 nsCOMPtr<sbIDevCapRange> mHeights;
224 nsCOMPtr<nsIArray> mVideoPARs;
225 PRBool mIsFrameRatesRange;
226 nsCOMPtr<nsIArray> mVideoFrameRates;
227 nsCOMPtr<sbIDevCapRange> mBitRates;
237 NS_DECL_SBIDEVCAPAUDIOSTREAM
243 ~sbDevCapAudioStream();
246 nsCOMPtr<sbIDevCapRange> mBitRates;
247 nsCOMPtr<sbIDevCapRange> mSampleRates;
248 nsCOMPtr<sbIDevCapRange> mChannels;
258 NS_DECL_SBIVIDEOFORMATTYPE
264 ~sbVideoFormatType();
266 nsCString mContainerType;
267 nsCOMPtr<sbIDevCapVideoStream> mVideoStream;
268 nsCOMPtr<sbIDevCapAudioStream> mAudioStream;
278 NS_DECL_SBIPLAYLISTFORMATTYPE
284 virtual ~sbPlaylistFormatType();
286 nsCString mPathSeparator;
nsTArray< PRUint32 > mSupportedEvents
[UNIMPLEMENTED UNTIL AFTER 0.3]
NS_DECL_ISUPPORTS NS_DECL_SBIDEVICECAPABILITIES NS_DECL_NSICLASSINFO sbDeviceCapabilities()
NS_DECL_ISUPPORTS NS_DECL_SBIDEVCAPAUDIOSTREAM NS_DECL_NSICLASSINFO sbDevCapAudioStream()
NS_DECL_ISUPPORTS NS_DECL_SBIDEVCAPRANGE NS_DECL_NSICLASSINFO sbDevCapRange()
nsVoidArray mContentPreferredFormatTypes
nsClassHashtable< nsUint32HashKey, nsTArray< PRUint32 > > ContentTypes
nsClassHashtable< nsUint32HashKey, nsTArray< nsCString > > SupportedMimeTypes
nsVoidArray mContentFormatTypes
nsClassHashtable< nsStringHashKey, nsTArray< nsCOMPtr< nsISupports > > > FormatTypes
SupportedMimeTypes mSupportedMimeTypes
ContentTypes mContentTypes
NS_DECL_ISUPPORTS NS_DECL_SBIIMAGESIZE NS_DECL_NSICLASSINFO sbImageSize()
nsTArray< PRUint32 > mFunctionTypes
NS_DECL_ISUPPORTS NS_DECL_SBIDEVCAPVIDEOSTREAM NS_DECL_NSICLASSINFO sbDevCapVideoStream()
NS_DECL_ISUPPORTS NS_DECL_SBIDEVCAPFRACTION NS_DECL_NSICLASSINFO sbDevCapFraction()
Interface for storing a fractional value.