Line data Source code
1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM ../../../dist/idl/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 : class nsIXPCScriptable; /* forward declaration */
18 :
19 :
20 : /* starting interface: nsIClassInfo */
21 : #define NS_ICLASSINFO_IID_STR "a60569d7-d401-4677-ba63-2aa5971af25d"
22 :
23 : #define NS_ICLASSINFO_IID \
24 : {0xa60569d7, 0xd401, 0x4677, \
25 : { 0xba, 0x63, 0x2a, 0xa5, 0x97, 0x1a, 0xf2, 0x5d }}
26 :
27 11873 : class NS_NO_VTABLE nsIClassInfo : public nsISupports {
28 : public:
29 :
30 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_ICLASSINFO_IID)
31 :
32 : /* void getInterfaces (out uint32_t count, [array, size_is (count), retval] out nsIIDPtr array); */
33 : NS_IMETHOD GetInterfaces(uint32_t *count, nsIID ***array) = 0;
34 :
35 : /* nsIXPCScriptable getScriptableHelper (); */
36 : NS_IMETHOD GetScriptableHelper(nsIXPCScriptable * *_retval) = 0;
37 :
38 : /* readonly attribute string contractID; */
39 : NS_IMETHOD GetContractID(char * *aContractID) = 0;
40 :
41 : /* readonly attribute string classDescription; */
42 : NS_IMETHOD GetClassDescription(char * *aClassDescription) = 0;
43 :
44 : /* readonly attribute nsCIDPtr classID; */
45 : NS_IMETHOD GetClassID(nsCID **aClassID) = 0;
46 :
47 : enum {
48 : SINGLETON = 1U,
49 : THREADSAFE = 2U,
50 : MAIN_THREAD_ONLY = 4U,
51 : DOM_OBJECT = 8U,
52 : PLUGIN_OBJECT = 16U,
53 : SINGLETON_CLASSINFO = 32U,
54 : CONTENT_NODE = 64U,
55 : RESERVED = 2147483648U
56 : };
57 :
58 : /* readonly attribute uint32_t flags; */
59 : NS_IMETHOD GetFlags(uint32_t *aFlags) = 0;
60 :
61 : /* [noscript] readonly attribute nsCID classIDNoAlloc; */
62 : NS_IMETHOD GetClassIDNoAlloc(nsCID *aClassIDNoAlloc) = 0;
63 :
64 : };
65 :
66 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIClassInfo, NS_ICLASSINFO_IID)
67 :
68 : /* Use this macro when declaring classes that implement this interface. */
69 : #define NS_DECL_NSICLASSINFO \
70 : NS_IMETHOD GetInterfaces(uint32_t *count, nsIID ***array) override; \
71 : NS_IMETHOD GetScriptableHelper(nsIXPCScriptable * *_retval) override; \
72 : NS_IMETHOD GetContractID(char * *aContractID) override; \
73 : NS_IMETHOD GetClassDescription(char * *aClassDescription) override; \
74 : NS_IMETHOD GetClassID(nsCID **aClassID) override; \
75 : NS_IMETHOD GetFlags(uint32_t *aFlags) override; \
76 : NS_IMETHOD GetClassIDNoAlloc(nsCID *aClassIDNoAlloc) override;
77 :
78 : /* Use this macro when declaring the members of this interface when the
79 : class doesn't implement the interface. This is useful for forwarding. */
80 : #define NS_DECL_NON_VIRTUAL_NSICLASSINFO \
81 : nsresult GetInterfaces(uint32_t *count, nsIID ***array); \
82 : nsresult GetScriptableHelper(nsIXPCScriptable * *_retval); \
83 : nsresult GetContractID(char * *aContractID); \
84 : nsresult GetClassDescription(char * *aClassDescription); \
85 : nsresult GetClassID(nsCID **aClassID); \
86 : nsresult GetFlags(uint32_t *aFlags); \
87 : nsresult GetClassIDNoAlloc(nsCID *aClassIDNoAlloc);
88 :
89 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
90 : #define NS_FORWARD_NSICLASSINFO(_to) \
91 : NS_IMETHOD GetInterfaces(uint32_t *count, nsIID ***array) override { return _to GetInterfaces(count, array); } \
92 : NS_IMETHOD GetScriptableHelper(nsIXPCScriptable * *_retval) override { return _to GetScriptableHelper(_retval); } \
93 : NS_IMETHOD GetContractID(char * *aContractID) override { return _to GetContractID(aContractID); } \
94 : NS_IMETHOD GetClassDescription(char * *aClassDescription) override { return _to GetClassDescription(aClassDescription); } \
95 : NS_IMETHOD GetClassID(nsCID **aClassID) override { return _to GetClassID(aClassID); } \
96 : NS_IMETHOD GetFlags(uint32_t *aFlags) override { return _to GetFlags(aFlags); } \
97 : NS_IMETHOD GetClassIDNoAlloc(nsCID *aClassIDNoAlloc) override { 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_IMETHOD GetInterfaces(uint32_t *count, nsIID ***array) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInterfaces(count, array); } \
102 : NS_IMETHOD GetScriptableHelper(nsIXPCScriptable * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetScriptableHelper(_retval); } \
103 : NS_IMETHOD GetContractID(char * *aContractID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetContractID(aContractID); } \
104 : NS_IMETHOD GetClassDescription(char * *aClassDescription) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassDescription(aClassDescription); } \
105 : NS_IMETHOD GetClassID(nsCID **aClassID) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassID(aClassID); } \
106 : NS_IMETHOD GetFlags(uint32_t *aFlags) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetFlags(aFlags); } \
107 : NS_IMETHOD GetClassIDNoAlloc(nsCID *aClassIDNoAlloc) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetClassIDNoAlloc(aClassIDNoAlloc); }
108 :
109 : #if 0
110 : /* Use the code below as a template for the implementation class for this interface. */
111 :
112 : /* Header file */
113 : class nsClassInfo : public nsIClassInfo
114 : {
115 : public:
116 : NS_DECL_ISUPPORTS
117 : NS_DECL_NSICLASSINFO
118 :
119 : nsClassInfo();
120 :
121 : private:
122 : ~nsClassInfo();
123 :
124 : protected:
125 : /* additional members */
126 : };
127 :
128 : /* Implementation file */
129 : NS_IMPL_ISUPPORTS(nsClassInfo, nsIClassInfo)
130 :
131 : nsClassInfo::nsClassInfo()
132 : {
133 : /* member initializers and constructor code */
134 : }
135 :
136 : nsClassInfo::~nsClassInfo()
137 : {
138 : /* destructor code */
139 : }
140 :
141 : /* void getInterfaces (out uint32_t count, [array, size_is (count), retval] out nsIIDPtr array); */
142 : NS_IMETHODIMP nsClassInfo::GetInterfaces(uint32_t *count, nsIID ***array)
143 : {
144 : return NS_ERROR_NOT_IMPLEMENTED;
145 : }
146 :
147 : /* nsIXPCScriptable getScriptableHelper (); */
148 : NS_IMETHODIMP nsClassInfo::GetScriptableHelper(nsIXPCScriptable * *_retval)
149 : {
150 : return NS_ERROR_NOT_IMPLEMENTED;
151 : }
152 :
153 : /* readonly attribute string contractID; */
154 : NS_IMETHODIMP nsClassInfo::GetContractID(char * *aContractID)
155 : {
156 : return NS_ERROR_NOT_IMPLEMENTED;
157 : }
158 :
159 : /* readonly attribute string classDescription; */
160 : NS_IMETHODIMP nsClassInfo::GetClassDescription(char * *aClassDescription)
161 : {
162 : return NS_ERROR_NOT_IMPLEMENTED;
163 : }
164 :
165 : /* readonly attribute nsCIDPtr classID; */
166 : NS_IMETHODIMP nsClassInfo::GetClassID(nsCID **aClassID)
167 : {
168 : return NS_ERROR_NOT_IMPLEMENTED;
169 : }
170 :
171 : /* readonly attribute uint32_t flags; */
172 : NS_IMETHODIMP nsClassInfo::GetFlags(uint32_t *aFlags)
173 : {
174 : return NS_ERROR_NOT_IMPLEMENTED;
175 : }
176 :
177 : /* [noscript] readonly attribute nsCID classIDNoAlloc; */
178 : NS_IMETHODIMP nsClassInfo::GetClassIDNoAlloc(nsCID *aClassIDNoAlloc)
179 : {
180 : return NS_ERROR_NOT_IMPLEMENTED;
181 : }
182 :
183 : /* End of implementation class template. */
184 : #endif
185 :
186 :
187 : #endif /* __gen_nsIClassInfo_h__ */
|