1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- /* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
- /* This Source Code Form is subject to the terms of the Mozilla Public
- * License, v. 2.0. If a copy of the MPL was not distributed with this
- * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- #include "nsISupports.idl"
- #include "nsIArray.idl"
- [scriptable, uuid(948A0023-E3A7-11d2-96CF-0060B0FB9956)]
- interface nsIFormatConverter : nsISupports
- {
- /**
- * Get the list of the "input" data flavors (mime types as nsISupportsCString),
- * in otherwords, the flavors that this converter can convert "from" (the
- * incoming data to the converter).
- */
- nsIArray getInputDataFlavors ( ) ;
- /**
- * Get the list of the "output" data flavors (mime types as nsISupportsCString),
- * in otherwords, the flavors that this converter can convert "to" (the
- * outgoing data to the converter).
- *
- * @param aDataFlavorList fills list with supported flavors
- */
- nsIArray getOutputDataFlavors ( ) ;
- /**
- * Determines whether a conversion from one flavor to another is supported
- *
- * @param aFromFormatConverter flavor to convert from
- * @param aFromFormatConverter flavor to convert to
- */
- boolean canConvert ( in string aFromDataFlavor, in string aToDataFlavor ) ;
- /**
- * Converts from one flavor to another.
- *
- * @param aFromFormatConverter flavor to convert from
- * @param aFromFormatConverter flavor to convert to (destination own the memory)
- * @returns returns NS_OK if it was converted
- */
- void convert ( in string aFromDataFlavor, in nsISupports aFromData, in unsigned long aDataLen,
- in string aToDataFlavor, out nsISupports aToData, out unsigned long aDataToLen ) ;
- };
- %{ C++
- %}
|