| /* |
| * DO NOT EDIT. THIS FILE IS GENERATED FROM e:/builds/tinderbox/XR-Trunk/WINNT_5.2_Depend/mozilla/modules/plugin/base/public/nsIPluginTagInfo.idl |
| */ |
| |
| #ifndef __gen_nsIPluginTagInfo_h__ |
| #define __gen_nsIPluginTagInfo_h__ |
| |
| |
| #ifndef __gen_nsISupports_h__ |
| #include "nsISupports.h" |
| #endif |
| |
| #ifndef __gen_nspluginroot_h__ |
| #include "nspluginroot.h" |
| #endif |
| |
| /* For IDL files that don't want to include root IDL files. */ |
| #ifndef NS_NO_VTABLE |
| #define NS_NO_VTABLE |
| #endif |
| #include "nsplugindefs.h" |
| class nsIDOMElement; /* forward declaration */ |
| |
| |
| /* starting interface: nsIPluginTagInfo */ |
| #define NS_IPLUGINTAGINFO_IID_STR "5f1ec1d0-019b-11d2-815b-006008119d7a" |
| |
| #define NS_IPLUGINTAGINFO_IID \ |
| {0x5f1ec1d0, 0x019b, 0x11d2, \ |
| { 0x81, 0x5b, 0x00, 0x60, 0x08, 0x11, 0x9d, 0x7a }} |
| |
| /** |
| * Plugin Tag Info Interface |
| * This interface provides information about the HTML tag on the page. |
| * Some day this might get superseded by a DOM API. |
| */ |
| class NS_NO_VTABLE nsIPluginTagInfo : public nsISupports { |
| public: |
| |
| NS_DECLARE_STATIC_IID_ACCESSOR(NS_IPLUGINTAGINFO_IID) |
| |
| /** |
| * QueryInterface on nsIPluginInstancePeer to get this. |
| * |
| * (Corresponds to NPP_New's argc, argn, and argv arguments.) |
| * Get a ptr to the paired list of attribute names and values, |
| * returns the length of the array. |
| * |
| * Each name or value is a null-terminated string. |
| */ |
| /* void getAttributes (in PRUint16Ref aCount, in constCharStarConstStar aNames, in constCharStarConstStar aValues); */ |
| NS_IMETHOD GetAttributes(PRUint16 & aCount, const char* const* & aNames, const char* const* & aValues) = 0; |
| |
| /** |
| * Gets the value for the named attribute. |
| * |
| * @param aName - the name of the attribute to find |
| * @param aResult - the resulting attribute |
| * @result - NS_OK if this operation was successful, NS_ERROR_FAILURE if |
| * this operation failed. result is set to NULL if the attribute is not found |
| * else to the found value. |
| */ |
| /* void getAttribute (in string aName, out constCharPtr aResult); */ |
| NS_IMETHOD GetAttribute(const char *aName, const char * *aResult) = 0; |
| |
| }; |
| |
| NS_DEFINE_STATIC_IID_ACCESSOR(nsIPluginTagInfo, NS_IPLUGINTAGINFO_IID) |
| |
| /* Use this macro when declaring classes that implement this interface. */ |
| #define NS_DECL_NSIPLUGINTAGINFO \ |
| NS_IMETHOD GetAttributes(PRUint16 & aCount, const char* const* & aNames, const char* const* & aValues); \ |
| NS_IMETHOD GetAttribute(const char *aName, const char * *aResult); |
| |
| /* Use this macro to declare functions that forward the behavior of this interface to another object. */ |
| #define NS_FORWARD_NSIPLUGINTAGINFO(_to) \ |
| NS_IMETHOD GetAttributes(PRUint16 & aCount, const char* const* & aNames, const char* const* & aValues) { return _to GetAttributes(aCount, aNames, aValues); } \ |
| NS_IMETHOD GetAttribute(const char *aName, const char * *aResult) { return _to GetAttribute(aName, aResult); } |
| |
| /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */ |
| #define NS_FORWARD_SAFE_NSIPLUGINTAGINFO(_to) \ |
| NS_IMETHOD GetAttributes(PRUint16 & aCount, const char* const* & aNames, const char* const* & aValues) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAttributes(aCount, aNames, aValues); } \ |
| NS_IMETHOD GetAttribute(const char *aName, const char * *aResult) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetAttribute(aName, aResult); } |
| |
| #if 0 |
| /* Use the code below as a template for the implementation class for this interface. */ |
| |
| /* Header file */ |
| class nsPluginTagInfo : public nsIPluginTagInfo |
| { |
| public: |
| NS_DECL_ISUPPORTS |
| NS_DECL_NSIPLUGINTAGINFO |
| |
| nsPluginTagInfo(); |
| |
| private: |
| ~nsPluginTagInfo(); |
| |
| protected: |
| /* additional members */ |
| }; |
| |
| /* Implementation file */ |
| NS_IMPL_ISUPPORTS1(nsPluginTagInfo, nsIPluginTagInfo) |
| |
| nsPluginTagInfo::nsPluginTagInfo() |
| { |
| /* member initializers and constructor code */ |
| } |
| |
| nsPluginTagInfo::~nsPluginTagInfo() |
| { |
| /* destructor code */ |
| } |
| |
| /* void getAttributes (in PRUint16Ref aCount, in constCharStarConstStar aNames, in constCharStarConstStar aValues); */ |
| NS_IMETHODIMP nsPluginTagInfo::GetAttributes(PRUint16 & aCount, const char* const* & aNames, const char* const* & aValues) |
| { |
| return NS_ERROR_NOT_IMPLEMENTED; |
| } |
| |
| /* void getAttribute (in string aName, out constCharPtr aResult); */ |
| NS_IMETHODIMP nsPluginTagInfo::GetAttribute(const char *aName, const char * *aResult) |
| { |
| return NS_ERROR_NOT_IMPLEMENTED; |
| } |
| |
| /* End of implementation class template. */ |
| #endif |
| |
| |
| #endif /* __gen_nsIPluginTagInfo_h__ */ |