1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM /builds/slave/m-beta-lnx-codecoverage/build/xpcom/components/nsIClassInfo.idl
3 : */
4 :
5 : #ifndef __gen_nsIClassInfo_h__
6 : #define __gen_nsIClassInfo_h__
7 :
8 :
9 : #ifndef __gen_nsISupports_h__
10 : #include "nsISupports.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 : * Calling QueryInterface with this special IID will return a null-terminated
19 : * table of QITableEntry's. Not all objects support this.
20 : * Note that this breaks XPCOM rules a bit (the table doesn't derive from
21 : * nsISupports).
22 : */
23 : #define NS_THISPTROFFSETS_SID \
24 : { 0x23e017cc, 0x5d6f, 0x430c, \
25 : { 0xb3, 0xe6, 0x9d, 0x32, 0x65, 0x70, 0xd6, 0xb8 } }
26 :
27 : /* starting interface: nsIClassInfo */
28 : #define NS_ICLASSINFO_IID_STR "986c11d0-f340-11d4-9075-0010a4e73d9a"
29 :
30 : #define NS_ICLASSINFO_IID \
31 : {0x986c11d0, 0xf340, 0x11d4, \
32 : { 0x90, 0x75, 0x00, 0x10, 0xa4, 0xe7, 0x3d, 0x9a }}
33 :
34 412594 : class NS_NO_VTABLE NS_SCRIPTABLE nsIClassInfo : public nsISupports {
35 : public:
36 :
37 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_ICLASSINFO_IID)
38 :
39 : /* void getInterfaces (out PRUint32 count, [array, size_is (count), retval] out nsIIDPtr array); */
40 : NS_SCRIPTABLE NS_IMETHOD GetInterfaces(PRUint32 *count NS_OUTPARAM, nsIID ***array NS_OUTPARAM) = 0;
41 :
42 : /* nsISupports getHelperForLanguage (in PRUint32 language); */
43 : NS_SCRIPTABLE NS_IMETHOD GetHelperForLanguage(PRUint32 language, nsISupports * *_retval NS_OUTPARAM) = 0;
44 :
45 : /* readonly attribute string contractID; */
46 : NS_SCRIPTABLE NS_IMETHOD GetContractID(char * *aContractID) = 0;
47 :
48 : /* readonly attribute string classDescription; */
49 : NS_SCRIPTABLE NS_IMETHOD GetClassDescription(char * *aClassDescription) = 0;
50 :
51 : /* readonly attribute nsCIDPtr classID; */
52 : NS_SCRIPTABLE NS_IMETHOD GetClassID(nsCID **aClassID) = 0;
53 :
54 : /* readonly attribute PRUint32 implementationLanguage; */
55 : NS_SCRIPTABLE NS_IMETHOD GetImplementationLanguage(PRUint32 *aImplementationLanguage) = 0;
56 :
57 : enum {
58 : SINGLETON = 1U,
59 : THREADSAFE = 2U,
60 : MAIN_THREAD_ONLY = 4U,
61 : DOM_OBJECT = 8U,
62 : PLUGIN_OBJECT = 16U,
63 : CONTENT_NODE = 64U,
64 : RESERVED = 2147483648U
65 : };
66 :
67 : /* readonly attribute PRUint32 flags; */
68 : NS_SCRIPTABLE NS_IMETHOD GetFlags(PRUint32 *aFlags) = 0;
69 :
70 : /* [notxpcom] readonly attribute nsCID classIDNoAlloc; */
71 : NS_IMETHOD GetClassIDNoAlloc(nsCID *aClassIDNoAlloc) = 0;
72 :
73 : };
74 :
75 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIClassInfo, NS_ICLASSINFO_IID)
76 :
77 : /* Use this macro when declaring classes that implement this interface. */
78 : #define NS_DECL_NSICLASSINFO \
79 : NS_SCRIPTABLE NS_IMETHOD GetInterfaces(PRUint32 *count NS_OUTPARAM, nsIID ***array NS_OUTPARAM); \
80 : NS_SCRIPTABLE NS_IMETHOD GetHelperForLanguage(PRUint32 language, nsISupports * *_retval NS_OUTPARAM); \
81 : NS_SCRIPTABLE NS_IMETHOD GetContractID(char * *aContractID); \
82 : NS_SCRIPTABLE NS_IMETHOD GetClassDescription(char * *aClassDescription); \
83 : NS_SCRIPTABLE NS_IMETHOD GetClassID(nsCID **aClassID); \
84 : NS_SCRIPTABLE NS_IMETHOD GetImplementationLanguage(PRUint32 *aImplementationLanguage); \
85 : NS_SCRIPTABLE NS_IMETHOD GetFlags(PRUint32 *aFlags); \
86 : NS_IMETHOD GetClassIDNoAlloc(nsCID *aClassIDNoAlloc);
87 :
88 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
89 : #define NS_FORWARD_NSICLASSINFO(_to) \
90 : NS_SCRIPTABLE NS_IMETHOD GetInterfaces(PRUint32 *count NS_OUTPARAM, nsIID ***array NS_OUTPARAM) { return _to GetInterfaces(count, array); } \
91 : NS_SCRIPTABLE NS_IMETHOD GetHelperForLanguage(PRUint32 language, nsISupports * *_retval NS_OUTPARAM) { return _to GetHelperForLanguage(language, _retval); } \
92 : NS_SCRIPTABLE NS_IMETHOD GetContractID(char * *aContractID) { return _to GetContractID(aContractID); } \
93 : NS_SCRIPTABLE NS_IMETHOD GetClassDescription(char * *aClassDescription) { return _to GetClassDescription(aClassDescription); } \
94 : NS_SCRIPTABLE NS_IMETHOD GetClassID(nsCID **aClassID) { return _to GetClassID(aClassID); } \
95 : NS_SCRIPTABLE NS_IMETHOD GetImplementationLanguage(PRUint32 *aImplementationLanguage) { return _to GetImplementationLanguage(aImplementationLanguage); } \
96 : NS_SCRIPTABLE NS_IMETHOD GetFlags(PRUint32 *aFlags) { return _to GetFlags(aFlags); } \
97 : NS_IMETHOD GetClassIDNoAlloc(nsCID *aClassIDNoAlloc) { return _to GetClassIDNoAlloc(aClassIDNoAlloc); }
98 :
99 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
100 : #define NS_FORWARD_SAFE_NSICLASSINFO(_to) \
101 : NS_SCRIPTABLE NS_IMETHOD GetInterfaces(PRUint32 *count NS_OUTPARAM, nsIID ***array NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInterfaces(count, array); } \
102 : NS_SCRIPTABLE NS_IMETHOD GetHelperForLanguage(PRUint32 language, nsISupports * *_retval NS_OUTPARAM) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetHelperForLanguage(language, _retval); } \
103 : NS_SCRIPTABLE NS_IMETHOD GetContractID(char * *aContractID) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetContractID(aContractID); } \
104 : NS_SCRIPTABLE NS_IMETHOD GetClassDescription(char * *aClassDescription) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassDescription(aClassDescription); } \
105 : NS_SCRIPTABLE NS_IMETHOD GetClassID(nsCID **aClassID) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassID(aClassID); } \
106 : NS_SCRIPTABLE NS_IMETHOD GetImplementationLanguage(PRUint32 *aImplementationLanguage) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetImplementationLanguage(aImplementationLanguage); } \
107 : NS_SCRIPTABLE NS_IMETHOD GetFlags(PRUint32 *aFlags) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFlags(aFlags); } \
108 : NS_IMETHOD GetClassIDNoAlloc(nsCID *aClassIDNoAlloc) { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassIDNoAlloc(aClassIDNoAlloc); }
109 :
110 : #if 0
111 : /* Use the code below as a template for the implementation class for this interface. */
112 :
113 : /* Header file */
114 : class nsClassInfo : public nsIClassInfo
115 : {
116 : public:
117 : NS_DECL_ISUPPORTS
118 : NS_DECL_NSICLASSINFO
119 :
120 : nsClassInfo();
121 :
122 : private:
123 : ~nsClassInfo();
124 :
125 : protected:
126 : /* additional members */
127 : };
128 :
129 : /* Implementation file */
130 : NS_IMPL_ISUPPORTS1(nsClassInfo, nsIClassInfo)
131 :
132 : nsClassInfo::nsClassInfo()
133 : {
134 : /* member initializers and constructor code */
135 : }
136 :
137 : nsClassInfo::~nsClassInfo()
138 : {
139 : /* destructor code */
140 : }
141 :
142 : /* void getInterfaces (out PRUint32 count, [array, size_is (count), retval] out nsIIDPtr array); */
143 : NS_IMETHODIMP nsClassInfo::GetInterfaces(PRUint32 *count NS_OUTPARAM, nsIID ***array NS_OUTPARAM)
144 : {
145 : return NS_ERROR_NOT_IMPLEMENTED;
146 : }
147 :
148 : /* nsISupports getHelperForLanguage (in PRUint32 language); */
149 : NS_IMETHODIMP nsClassInfo::GetHelperForLanguage(PRUint32 language, nsISupports * *_retval NS_OUTPARAM)
150 : {
151 : return NS_ERROR_NOT_IMPLEMENTED;
152 : }
153 :
154 : /* readonly attribute string contractID; */
155 : NS_IMETHODIMP nsClassInfo::GetContractID(char * *aContractID)
156 : {
157 : return NS_ERROR_NOT_IMPLEMENTED;
158 : }
159 :
160 : /* readonly attribute string classDescription; */
161 : NS_IMETHODIMP nsClassInfo::GetClassDescription(char * *aClassDescription)
162 : {
163 : return NS_ERROR_NOT_IMPLEMENTED;
164 : }
165 :
166 : /* readonly attribute nsCIDPtr classID; */
167 : NS_IMETHODIMP nsClassInfo::GetClassID(nsCID **aClassID)
168 : {
169 : return NS_ERROR_NOT_IMPLEMENTED;
170 : }
171 :
172 : /* readonly attribute PRUint32 implementationLanguage; */
173 : NS_IMETHODIMP nsClassInfo::GetImplementationLanguage(PRUint32 *aImplementationLanguage)
174 : {
175 : return NS_ERROR_NOT_IMPLEMENTED;
176 : }
177 :
178 : /* readonly attribute PRUint32 flags; */
179 : NS_IMETHODIMP nsClassInfo::GetFlags(PRUint32 *aFlags)
180 : {
181 : return NS_ERROR_NOT_IMPLEMENTED;
182 : }
183 :
184 : /* [notxpcom] readonly attribute nsCID classIDNoAlloc; */
185 : NS_IMETHODIMP nsClassInfo::GetClassIDNoAlloc(nsCID *aClassIDNoAlloc)
186 : {
187 : return NS_ERROR_NOT_IMPLEMENTED;
188 : }
189 :
190 : /* End of implementation class template. */
191 : #endif
192 :
193 :
194 : #endif /* __gen_nsIClassInfo_h__ */
|