Line data Source code
1 : /*
2 : * DO NOT EDIT. THIS FILE IS GENERATED FROM ../../../dist/idl/nsIInterfaceInfoManager.idl
3 : */
4 :
5 : #ifndef __gen_nsIInterfaceInfoManager_h__
6 : #define __gen_nsIInterfaceInfoManager_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 nsIInterfaceInfo; /* forward declaration */
18 :
19 :
20 : /* starting interface: nsIInterfaceInfoManager */
21 : #define NS_IINTERFACEINFOMANAGER_IID_STR "1d53d8d9-1d92-428f-b5cc-198b55e897d7"
22 :
23 : #define NS_IINTERFACEINFOMANAGER_IID \
24 : {0x1d53d8d9, 0x1d92, 0x428f, \
25 : { 0xb5, 0xcc, 0x19, 0x8b, 0x55, 0xe8, 0x97, 0xd7 }}
26 :
27 3 : class NS_NO_VTABLE nsIInterfaceInfoManager : public nsISupports {
28 : public:
29 :
30 : NS_DECLARE_STATIC_IID_ACCESSOR(NS_IINTERFACEINFOMANAGER_IID)
31 :
32 : /* nsIInterfaceInfo getInfoForIID (in nsIIDPtr iid); */
33 : NS_IMETHOD GetInfoForIID(const nsIID *iid, nsIInterfaceInfo * *_retval) = 0;
34 :
35 : /* nsIInterfaceInfo getInfoForName (in string name); */
36 : NS_IMETHOD GetInfoForName(const char * name, nsIInterfaceInfo * *_retval) = 0;
37 :
38 : };
39 :
40 : NS_DEFINE_STATIC_IID_ACCESSOR(nsIInterfaceInfoManager, NS_IINTERFACEINFOMANAGER_IID)
41 :
42 : /* Use this macro when declaring classes that implement this interface. */
43 : #define NS_DECL_NSIINTERFACEINFOMANAGER \
44 : NS_IMETHOD GetInfoForIID(const nsIID *iid, nsIInterfaceInfo * *_retval) override; \
45 : NS_IMETHOD GetInfoForName(const char * name, nsIInterfaceInfo * *_retval) override;
46 :
47 : /* Use this macro when declaring the members of this interface when the
48 : class doesn't implement the interface. This is useful for forwarding. */
49 : #define NS_DECL_NON_VIRTUAL_NSIINTERFACEINFOMANAGER \
50 : nsresult GetInfoForIID(const nsIID *iid, nsIInterfaceInfo * *_retval); \
51 : nsresult GetInfoForName(const char * name, nsIInterfaceInfo * *_retval);
52 :
53 : /* Use this macro to declare functions that forward the behavior of this interface to another object. */
54 : #define NS_FORWARD_NSIINTERFACEINFOMANAGER(_to) \
55 : NS_IMETHOD GetInfoForIID(const nsIID *iid, nsIInterfaceInfo * *_retval) override { return _to GetInfoForIID(iid, _retval); } \
56 : NS_IMETHOD GetInfoForName(const char * name, nsIInterfaceInfo * *_retval) override { return _to GetInfoForName(name, _retval); }
57 :
58 : /* Use this macro to declare functions that forward the behavior of this interface to another object in a safe way. */
59 : #define NS_FORWARD_SAFE_NSIINTERFACEINFOMANAGER(_to) \
60 : NS_IMETHOD GetInfoForIID(const nsIID *iid, nsIInterfaceInfo * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInfoForIID(iid, _retval); } \
61 : NS_IMETHOD GetInfoForName(const char * name, nsIInterfaceInfo * *_retval) override { return !_to ? NS_ERROR_NULL_POINTER : _to->GetInfoForName(name, _retval); }
62 :
63 : #if 0
64 : /* Use the code below as a template for the implementation class for this interface. */
65 :
66 : /* Header file */
67 : class nsInterfaceInfoManager : public nsIInterfaceInfoManager
68 : {
69 : public:
70 : NS_DECL_ISUPPORTS
71 : NS_DECL_NSIINTERFACEINFOMANAGER
72 :
73 : nsInterfaceInfoManager();
74 :
75 : private:
76 : ~nsInterfaceInfoManager();
77 :
78 : protected:
79 : /* additional members */
80 : };
81 :
82 : /* Implementation file */
83 : NS_IMPL_ISUPPORTS(nsInterfaceInfoManager, nsIInterfaceInfoManager)
84 :
85 : nsInterfaceInfoManager::nsInterfaceInfoManager()
86 : {
87 : /* member initializers and constructor code */
88 : }
89 :
90 : nsInterfaceInfoManager::~nsInterfaceInfoManager()
91 : {
92 : /* destructor code */
93 : }
94 :
95 : /* nsIInterfaceInfo getInfoForIID (in nsIIDPtr iid); */
96 : NS_IMETHODIMP nsInterfaceInfoManager::GetInfoForIID(const nsIID *iid, nsIInterfaceInfo * *_retval)
97 : {
98 : return NS_ERROR_NOT_IMPLEMENTED;
99 : }
100 :
101 : /* nsIInterfaceInfo getInfoForName (in string name); */
102 : NS_IMETHODIMP nsInterfaceInfoManager::GetInfoForName(const char * name, nsIInterfaceInfo * *_retval)
103 : {
104 : return NS_ERROR_NOT_IMPLEMENTED;
105 : }
106 :
107 : /* End of implementation class template. */
108 : #endif
109 :
110 : #define NS_INTERFACEINFOMANAGER_SERVICE_CID \
111 : { /* 13bef784-f8e0-4f96-85c1-09f9ef4f9a19 */ \
112 : 0x13bef784, 0xf8e0, 0x4f96, \
113 : {0x85, 0xc1, 0x09, 0xf9, 0xef, 0x4f, 0x9a, 0x19} }
114 : #define NS_INTERFACEINFOMANAGER_SERVICE_CONTRACTID \
115 : "@mozilla.org/xpti/interfaceinfomanager-service;1"
116 :
117 : #endif /* __gen_nsIInterfaceInfoManager_h__ */
|