1/* vim:set expandtab ts=4 sw=4 sts=4 cin: */ 2/* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this 4 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ 5 6#include "nsIUnicharOutputStream.idl" 7 8interface nsIOutputStream; 9 10/** 11 * This interface allows writing strings to a stream, doing automatic 12 * character encoding conversion. 13 */ 14[scriptable, uuid(4b71113a-cb0d-479f-8ed5-01daeba2e8d4)] 15interface nsIConverterOutputStream : nsIUnicharOutputStream 16{ 17 /** 18 * Initialize this stream. Must be called before any other method on this 19 * interface, or you will crash. The output stream passed to this method 20 * must not be null, or you will crash. 21 * 22 * @param aOutStream 23 * The underlying output stream to which the converted strings will 24 * be written. 25 * @param aCharset 26 * The character set to use for encoding the characters. A null 27 * charset will be interpreted as UTF-8. 28 */ 29 void init(in nsIOutputStream aOutStream, in string aCharset); 30}; 31