/* * DO NOT EDIT. THIS FILE IS GENERATED FROM nsIDOMSerializer.idl */ #ifndef __gen_nsIDOMSerializer_h__ #define __gen_nsIDOMSerializer_h__ #ifndef __gen_nsISupports_h__ #include "nsISupports.h" #endif /* For IDL files that don't want to include root IDL files. */ #ifndef NS_NO_VTABLE #define NS_NO_VTABLE #endif class nsIOutputStream; /* forward declaration */ class nsIDOMNode; /* forward declaration */ /* starting interface: nsIDOMSerializer */ #define NS_IDOMSERIALIZER_IID_STR "a6cf9123-15b3-11d2-932e-00805f8add32" #define NS_IDOMSERIALIZER_IID \ {0xa6cf9123, 0x15b3, 0x11d2, \ { 0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32 }} /** * The nsIDOMSerializer interface is really a placeholder till the W3C * DOM Working Group defines a mechanism for serializing DOM nodes. * An instance of this interface can be used to serialize a DOM document * or any DOM subtree. */ class NS_NO_VTABLE nsIDOMSerializer : public nsISupports { public: NS_DEFINE_STATIC_IID_ACCESSOR(NS_IDOMSERIALIZER_IID) /** * The subtree rooted by the specified element is serialized to * a string. * * @param root The root of the subtree to be serialized. This could * be any node, including a Document. * @returns The serialized subtree in the form of a Unicode string */ /* wstring serializeToString (in nsIDOMNode root); */ NS_IMETHOD SerializeToString(nsIDOMNode *root, PRUnichar **_retval) = 0; /** * The subtree rooted by the specified element is serialized to * a byte stream using the character set specified. * @param root The root of the subtree to be serialized. This could * be any node, including a Document. * @param stream The byte stream to which the subtree is serialized. * @param charset The name of the character set to use for the encoding * to a byte stream. */ /* void serializeToStream (in nsIDOMNode root, in nsIOutputStream stream, in string charset); */ NS_IMETHOD SerializeToStream(nsIDOMNode *root, nsIOutputStream *stream, const char *charset) = 0; }; /* Use this macro when declaring classes that implement this interface. */ #define NS_DECL_NSIDOMSERIALIZER \ NS_IMETHOD SerializeToString(nsIDOMNode *root, PRUnichar **_retval); \ NS_IMETHOD SerializeToStream(nsIDOMNode *root, nsIOutputStream *stream, const char *charset); /* Use this macro to declare functions that forward the behavior of this interface to another object. */ #define NS_FORWARD_NSIDOMSERIALIZER(_to) \ NS_IMETHOD SerializeToString(nsIDOMNode *root, PRUnichar **_retval) { return _to SerializeToString(root, _retval); } \ NS_IMETHOD SerializeToStream(nsIDOMNode *root, nsIOutputStream *stream, const char *charset) { return _to SerializeToStream(root, stream, charset); } /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ #define NS_FORWARD_SAFE_NSIDOMSERIALIZER(_to) \ NS_IMETHOD SerializeToString(nsIDOMNode *root, PRUnichar **_retval) { return !_to ? NS_ERROR_NULL_POINTER : _to->SerializeToString(root, _retval); } \ NS_IMETHOD SerializeToStream(nsIDOMNode *root, nsIOutputStream *stream, const char *charset) { return !_to ? NS_ERROR_NULL_POINTER : _to->SerializeToStream(root, stream, charset); } #if 0 /* Use the code below as a template for the implementation class for this interface. */ /* Header file */ class nsDOMSerializer : public nsIDOMSerializer { public: NS_DECL_ISUPPORTS NS_DECL_NSIDOMSERIALIZER nsDOMSerializer(); virtual ~nsDOMSerializer(); /* additional members */ }; /* Implementation file */ NS_IMPL_ISUPPORTS1(nsDOMSerializer, nsIDOMSerializer) nsDOMSerializer::nsDOMSerializer() { NS_INIT_ISUPPORTS(); /* member initializers and constructor code */ } nsDOMSerializer::~nsDOMSerializer() { /* destructor code */ } /* wstring serializeToString (in nsIDOMNode root); */ NS_IMETHODIMP nsDOMSerializer::SerializeToString(nsIDOMNode *root, PRUnichar **_retval) { return NS_ERROR_NOT_IMPLEMENTED; } /* void serializeToStream (in nsIDOMNode root, in nsIOutputStream stream, in string charset); */ NS_IMETHODIMP nsDOMSerializer::SerializeToStream(nsIDOMNode *root, nsIOutputStream *stream, const char *charset) { return NS_ERROR_NOT_IMPLEMENTED; } /* End of implementation class template. */ #endif #define NS_XMLSERIALIZER_CID \ { /* a6cf9124-15b3-11d2-932e-00805f8add32 */ \ 0xa6cf9124, 0x15b3, 0x11d2, \ {0x93, 0x2e, 0x00, 0x80, 0x5f, 0x8a, 0xdd, 0x32} } #define NS_XMLSERIALIZER_CONTRACTID \ "@mozilla.org/xmlextras/xmlserializer;1" #endif /* __gen_nsIDOMSerializer_h__ */ .