OLD | NEW |
(Empty) | |
| 1 /* |
| 2 * DO NOT EDIT. THIS FILE IS GENERATED FROM c:/builds/tinderbox/XR-Mozilla1.8.0
-Release/WINNT_5.2_Depend/mozilla/xpcom/base/nsISupports.idl |
| 3 */ |
| 4 |
| 5 #ifndef __gen_nsISupports_h__ |
| 6 #define __gen_nsISupports_h__ |
| 7 |
| 8 |
| 9 #ifndef __gen_nsrootidl_h__ |
| 10 #include "nsrootidl.h" |
| 11 #endif |
| 12 |
| 13 /* For IDL files that don't want to include root IDL files. */ |
| 14 #ifndef NS_NO_VTABLE |
| 15 #define NS_NO_VTABLE |
| 16 #endif |
| 17 /* |
| 18 * Start commenting out the C++ versions of the below in the output header |
| 19 */ |
| 20 #if 0 |
| 21 |
| 22 /* starting interface: nsISupports */ |
| 23 #define NS_ISUPPORTS_IID_STR "00000000-0000-0000-c000-000000000046" |
| 24 |
| 25 #define NS_ISUPPORTS_IID \ |
| 26 {0x00000000, 0x0000, 0x0000, \ |
| 27 { 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46 }} |
| 28 |
| 29 class NS_NO_VTABLE nsISupports { |
| 30 public: |
| 31 |
| 32 NS_DEFINE_STATIC_IID_ACCESSOR(NS_ISUPPORTS_IID) |
| 33 |
| 34 /* void QueryInterface (in nsIIDRef uuid, [iid_is (uuid), retval] out nsQIResu
lt result); */ |
| 35 NS_IMETHOD QueryInterface(const nsIID & uuid, void * *result) = 0; |
| 36 |
| 37 /* [noscript, notxpcom] nsrefcnt AddRef (); */ |
| 38 NS_IMETHOD_(nsrefcnt) AddRef(void) = 0; |
| 39 |
| 40 /* [noscript, notxpcom] nsrefcnt Release (); */ |
| 41 NS_IMETHOD_(nsrefcnt) Release(void) = 0; |
| 42 |
| 43 }; |
| 44 |
| 45 /* Use this macro when declaring classes that implement this interface. */ |
| 46 #define NS_DECL_NSISUPPORTS \ |
| 47 NS_IMETHOD QueryInterface(const nsIID & uuid, void * *result); \ |
| 48 NS_IMETHOD_(nsrefcnt) AddRef(void); \ |
| 49 NS_IMETHOD_(nsrefcnt) Release(void); |
| 50 |
| 51 /* Use this macro to declare functions that forward the behavior of this interfa
ce to another object. */ |
| 52 #define NS_FORWARD_NSISUPPORTS(_to) \ |
| 53 NS_IMETHOD QueryInterface(const nsIID & uuid, void * *result) { return _to Que
ryInterface(uuid, result); } \ |
| 54 NS_IMETHOD_(nsrefcnt) AddRef(void) { return _to AddRef(); } \ |
| 55 NS_IMETHOD_(nsrefcnt) Release(void) { return _to Release(); } |
| 56 |
| 57 /* Use this macro to declare functions that forward the behavior of this interfa
ce to another object in a safe way. */ |
| 58 #define NS_FORWARD_SAFE_NSISUPPORTS(_to) \ |
| 59 NS_IMETHOD QueryInterface(const nsIID & uuid, void * *result) { return !_to ?
NS_ERROR_NULL_POINTER : _to->QueryInterface(uuid, result); } \ |
| 60 NS_IMETHOD_(nsrefcnt) AddRef(void) { return !_to ? NS_ERROR_NULL_POINTER : _to
->AddRef(); } \ |
| 61 NS_IMETHOD_(nsrefcnt) Release(void) { return !_to ? NS_ERROR_NULL_POINTER : _t
o->Release(); } |
| 62 |
| 63 #if 0 |
| 64 /* Use the code below as a template for the implementation class for this interf
ace. */ |
| 65 |
| 66 /* Header file */ |
| 67 class nsSupports : public nsISupports |
| 68 { |
| 69 public: |
| 70 NS_DECL_ISUPPORTS |
| 71 NS_DECL_NSISUPPORTS |
| 72 |
| 73 nsSupports(); |
| 74 |
| 75 private: |
| 76 ~nsSupports(); |
| 77 |
| 78 protected: |
| 79 /* additional members */ |
| 80 }; |
| 81 |
| 82 /* Implementation file */ |
| 83 NS_IMPL_ISUPPORTS1(nsSupports, nsISupports) |
| 84 |
| 85 nsSupports::nsSupports() |
| 86 { |
| 87 /* member initializers and constructor code */ |
| 88 } |
| 89 |
| 90 nsSupports::~nsSupports() |
| 91 { |
| 92 /* destructor code */ |
| 93 } |
| 94 |
| 95 /* void QueryInterface (in nsIIDRef uuid, [iid_is (uuid), retval] out nsQIResult
result); */ |
| 96 NS_IMETHODIMP nsSupports::QueryInterface(const nsIID & uuid, void * *result) |
| 97 { |
| 98 return NS_ERROR_NOT_IMPLEMENTED; |
| 99 } |
| 100 |
| 101 /* [noscript, notxpcom] nsrefcnt AddRef (); */ |
| 102 NS_IMETHODIMP_(nsrefcnt) nsSupports::AddRef() |
| 103 { |
| 104 return NS_ERROR_NOT_IMPLEMENTED; |
| 105 } |
| 106 |
| 107 /* [noscript, notxpcom] nsrefcnt Release (); */ |
| 108 NS_IMETHODIMP_(nsrefcnt) nsSupports::Release() |
| 109 { |
| 110 return NS_ERROR_NOT_IMPLEMENTED; |
| 111 } |
| 112 |
| 113 /* End of implementation class template. */ |
| 114 #endif |
| 115 |
| 116 /* |
| 117 * End commenting out the C++ versions of the above in the output header |
| 118 */ |
| 119 #endif |
| 120 #include "nsISupportsBase.h" |
| 121 #include "nsISupportsUtils.h" |
| 122 |
| 123 #endif /* __gen_nsISupports_h__ */ |
OLD | NEW |