⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 nsisupportsimpl.h

📁 gcj java applet的web browser 插件
💻 H
📖 第 1 页 / 共 5 页
字号:
    NS_INTERFACE_MAP_ENTRY(_i1)                                               \    NS_INTERFACE_MAP_ENTRY(_i2)                                               \    NS_INTERFACE_MAP_ENTRY(_i3)                                               \    NS_INTERFACE_MAP_ENTRY(_i4)                                               \    NS_INTERFACE_MAP_ENTRY(_i5)                                               \    NS_INTERFACE_MAP_ENTRY(_i6)                                               \    NS_INTERFACE_MAP_ENTRY(_i7)                                               \    NS_INTERFACE_MAP_ENTRY(_i8)                                               \    NS_INTERFACE_MAP_ENTRY(_i9)                                               \    NS_INTERFACE_MAP_ENTRY(_i10)                                              \    NS_INTERFACE_MAP_ENTRY(_i11)                                              \    NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, _i1)                        \  NS_INTERFACE_MAP_END#define NS_IMPL_THREADSAFE_QUERY_INTERFACE0  NS_IMPL_QUERY_INTERFACE0#define NS_IMPL_THREADSAFE_QUERY_INTERFACE1  NS_IMPL_QUERY_INTERFACE1#define NS_IMPL_THREADSAFE_QUERY_INTERFACE2  NS_IMPL_QUERY_INTERFACE2#define NS_IMPL_THREADSAFE_QUERY_INTERFACE3  NS_IMPL_QUERY_INTERFACE3#define NS_IMPL_THREADSAFE_QUERY_INTERFACE4  NS_IMPL_QUERY_INTERFACE4#define NS_IMPL_THREADSAFE_QUERY_INTERFACE5  NS_IMPL_QUERY_INTERFACE5#define NS_IMPL_THREADSAFE_QUERY_INTERFACE6  NS_IMPL_QUERY_INTERFACE6#define NS_IMPL_THREADSAFE_QUERY_INTERFACE7  NS_IMPL_QUERY_INTERFACE7#define NS_IMPL_THREADSAFE_QUERY_INTERFACE8  NS_IMPL_QUERY_INTERFACE8#define NS_IMPL_THREADSAFE_QUERY_INTERFACE9  NS_IMPL_QUERY_INTERFACE9#define NS_IMPL_THREADSAFE_QUERY_INTERFACE10  NS_IMPL_QUERY_INTERFACE10#define NS_IMPL_THREADSAFE_QUERY_INTERFACE11  NS_IMPL_QUERY_INTERFACE11/** * Declare that you're going to inherit from something that already * implements nsISupports, but also implements an additional interface, thus * causing an ambiguity. In this case you don't need another mRefCnt, you * just need to forward the definitions to the appropriate superclass. E.g. * * class Bar : public Foo, public nsIBar {  // both provide nsISupports * public: *   NS_DECL_ISUPPORTS_INHERITED *   ...other nsIBar and Bar methods... * }; */#define NS_DECL_ISUPPORTS_INHERITED                                           \public:                                                                       \  NS_IMETHOD QueryInterface(REFNSIID aIID,                                    \                            void** aInstancePtr);                             \  NS_IMETHOD_(nsrefcnt) AddRef(void);                                         \  NS_IMETHOD_(nsrefcnt) Release(void);                                        \/** * These macros can be used in conjunction with NS_DECL_ISUPPORTS_INHERITED * to implement the nsISupports methods, forwarding the invocations to a * superclass that already implements nsISupports. * * Note that I didn't make these inlined because they're virtual methods. */#define NS_IMPL_ADDREF_INHERITED(Class, Super)                                \NS_IMETHODIMP_(nsrefcnt) Class::AddRef(void)                                  \{                                                                             \  return Super::AddRef();                                                     \}                                                                             \#define NS_IMPL_RELEASE_INHERITED(Class, Super)                               \NS_IMETHODIMP_(nsrefcnt) Class::Release(void)                                 \{                                                                             \  return Super::Release();                                                    \}                                                                             \#define NS_IMPL_QUERY_INTERFACE_INHERITED0(Class, Super)                      \  NS_IMPL_QUERY_HEAD(Class)                                                   \  NS_IMPL_QUERY_TAIL_INHERITING(Super)                                        \#define NS_IMPL_QUERY_INTERFACE_INHERITED1(Class, Super, i1)                  \  NS_IMPL_QUERY_HEAD(Class)                                                   \  NS_IMPL_QUERY_BODY(i1)                                                      \  NS_IMPL_QUERY_TAIL_INHERITING(Super)                                        \#define NS_IMPL_QUERY_INTERFACE_INHERITED2(Class, Super, i1, i2)              \  NS_IMPL_QUERY_HEAD(Class)                                                   \  NS_IMPL_QUERY_BODY(i1)                                                      \  NS_IMPL_QUERY_BODY(i2)                                                      \  NS_IMPL_QUERY_TAIL_INHERITING(Super)                                        \#define NS_IMPL_QUERY_INTERFACE_INHERITED3(Class, Super, i1, i2, i3)          \  NS_IMPL_QUERY_HEAD(Class)                                                   \  NS_IMPL_QUERY_BODY(i1)                                                      \  NS_IMPL_QUERY_BODY(i2)                                                      \  NS_IMPL_QUERY_BODY(i3)                                                      \  NS_IMPL_QUERY_TAIL_INHERITING(Super)                                        \#define NS_IMPL_QUERY_INTERFACE_INHERITED4(Class, Super, i1, i2, i3, i4)      \  NS_IMPL_QUERY_HEAD(Class)                                                   \  NS_IMPL_QUERY_BODY(i1)                                                      \  NS_IMPL_QUERY_BODY(i2)                                                      \  NS_IMPL_QUERY_BODY(i3)                                                      \  NS_IMPL_QUERY_BODY(i4)                                                      \  NS_IMPL_QUERY_TAIL_INHERITING(Super)                                        \#define NS_IMPL_QUERY_INTERFACE_INHERITED5(Class,Super,i1,i2,i3,i4,i5)        \  NS_IMPL_QUERY_HEAD(Class)                                                   \  NS_IMPL_QUERY_BODY(i1)                                                      \  NS_IMPL_QUERY_BODY(i2)                                                      \  NS_IMPL_QUERY_BODY(i3)                                                      \  NS_IMPL_QUERY_BODY(i4)                                                      \  NS_IMPL_QUERY_BODY(i5)                                                      \  NS_IMPL_QUERY_TAIL_INHERITING(Super)                                        \#define NS_IMPL_QUERY_INTERFACE_INHERITED6(Class,Super,i1,i2,i3,i4,i5,i6)     \  NS_IMPL_QUERY_HEAD(Class)                                                   \  NS_IMPL_QUERY_BODY(i1)                                                      \  NS_IMPL_QUERY_BODY(i2)                                                      \  NS_IMPL_QUERY_BODY(i3)                                                      \  NS_IMPL_QUERY_BODY(i4)                                                      \  NS_IMPL_QUERY_BODY(i5)                                                      \  NS_IMPL_QUERY_BODY(i6)                                                      \  NS_IMPL_QUERY_TAIL_INHERITING(Super)                                        \/** * Convenience macros for implementing all nsISupports methods for * a simple class. * @param _class The name of the class implementing the method * @param _classiiddef The name of the #define symbol that defines the IID * for the class (e.g. NS_ISUPPORTS_IID) */#define NS_IMPL_ISUPPORTS0(_class)                                            \  NS_IMPL_ADDREF(_class)                                                      \  NS_IMPL_RELEASE(_class)                                                     \  NS_IMPL_QUERY_INTERFACE0(_class)#define NS_IMPL_ISUPPORTS1(_class, _interface)                                \  NS_IMPL_ADDREF(_class)                                                      \  NS_IMPL_RELEASE(_class)                                                     \  NS_IMPL_QUERY_INTERFACE1(_class, _interface)#define NS_IMPL_ISUPPORTS2(_class, _i1, _i2)                                  \  NS_IMPL_ADDREF(_class)                                                      \  NS_IMPL_RELEASE(_class)                                                     \  NS_IMPL_QUERY_INTERFACE2(_class, _i1, _i2)#define NS_IMPL_ISUPPORTS3(_class, _i1, _i2, _i3)                             \  NS_IMPL_ADDREF(_class)                                                      \  NS_IMPL_RELEASE(_class)                                                     \  NS_IMPL_QUERY_INTERFACE3(_class, _i1, _i2, _i3)#define NS_IMPL_ISUPPORTS4(_class, _i1, _i2, _i3, _i4)                        \  NS_IMPL_ADDREF(_class)                                                      \  NS_IMPL_RELEASE(_class)                                                     \  NS_IMPL_QUERY_INTERFACE4(_class, _i1, _i2, _i3, _i4)#define NS_IMPL_ISUPPORTS5(_class, _i1, _i2, _i3, _i4, _i5)                   \  NS_IMPL_ADDREF(_class)                                                      \  NS_IMPL_RELEASE(_class)                                                     \  NS_IMPL_QUERY_INTERFACE5(_class, _i1, _i2, _i3, _i4, _i5)#define NS_IMPL_ISUPPORTS6(_class, _i1, _i2, _i3, _i4, _i5, _i6)              \  NS_IMPL_ADDREF(_class)                                                      \  NS_IMPL_RELEASE(_class)                                                     \  NS_IMPL_QUERY_INTERFACE6(_class, _i1, _i2, _i3, _i4, _i5, _i6)#define NS_IMPL_ISUPPORTS7(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7)         \  NS_IMPL_ADDREF(_class)                                                      \  NS_IMPL_RELEASE(_class)                                                     \  NS_IMPL_QUERY_INTERFACE7(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7)#define NS_IMPL_ISUPPORTS8(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8)    \  NS_IMPL_ADDREF(_class)                                                      \  NS_IMPL_RELEASE(_class)                                                     \  NS_IMPL_QUERY_INTERFACE8(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8)#define NS_IMPL_ISUPPORTS9(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8,    \                           _i9)                                               \  NS_IMPL_ADDREF(_class)                                                      \  NS_IMPL_RELEASE(_class)                                                     \  NS_IMPL_QUERY_INTERFACE9(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8, _i9)#define NS_IMPL_ISUPPORTS10(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8,   \                            _i9, _i10)                                        \  NS_IMPL_ADDREF(_class)                                                      \  NS_IMPL_RELEASE(_class)                                                     \  NS_IMPL_QUERY_INTERFACE10(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8,   \                            _i9, _i10)#define NS_IMPL_ISUPPORTS11(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8,   \                            _i9, _i10, _i11)                                  \  NS_IMPL_ADDREF(_class)                                                      \  NS_IMPL_RELEASE(_class)                                                     \  NS_IMPL_QUERY_INTERFACE11(_class, _i1, _i2, _i3, _i4, _i5, _i6, _i7, _i8,   \                            _i9, _i10, _i11)#define NS_IMPL_ISUPPORTS_INHERITED0(Class, Super)                            \    NS_IMPL_QUERY_INTERFACE_INHERITED0(Class, Super)                          \    NS_IMPL_ADDREF_INHERITED(Class, Super)                                    \    NS_IMPL_RELEASE_INHERITED(Class, Super)                                   \#define NS_IMPL_ISUPPORTS_INHERITED1(Class, Super, i1)                        \    NS_IMPL_QUERY_INTERFACE_INHERITED1(Class, Super, i1)                      \    NS_IMPL_ADDREF_INHERITED(Class, Super)                                    \    NS_IMPL_RELEASE_INHERITED(Class, Super)                                   \#define NS_IMPL_ISUPPORTS_INHERITED2(Class, Super, i1, i2)                    \    NS_IMPL_QUERY_INTERFACE_INHERITED2(Class, Super, i1, i2)                  \    NS_IMPL_ADDREF_INHERITED(Class, Super)                                    \    NS_IMPL_RELEASE_INHERITED(Class, Super)                                   \#define NS_IMPL_ISUPPORTS_INHERITED3(Class, Super, i1, i2, i3)                \    NS_IMPL_QUERY_INTERFACE_INHERITED3(Class, Super, i1, i2, i3)              \    NS_IMPL_ADDREF_INHERITED(Class, Super)                                    \    NS_IMPL_RELEASE_INHERITED(Class, Super)                                   \#define NS_IMPL_ISUPPORTS_INHERITED4(Class, Super, i1, i2, i3, i4)            \    NS_IMPL_QUERY_INTERFACE_INHERITED4(Class, Super, i1, i2, i3, i4)          \    NS_IMPL_ADDREF_INHERITED(Class, Super)                                    \    NS_IMPL_RELEASE_INHERITED(Class, Super)                                   \#define NS_IMPL_ISUPPORTS_INHERITED5(Class, Super, i1, i2, i3, i4, i5)        \    NS_IMPL_QUERY_INTERFACE_INHERITED5(Class, Super, i1, i2, i3, i4, i5)      \    NS_IMPL_ADDREF_INHERITED(Class, Super)                                    \    NS_IMPL_RELEASE_INHERITED(Class, Super)                                   \#define NS_IMPL_ISUPPORTS_INHERITED6(Class, Super, i1, i2, i3, i4, i5, i6)    \    NS_IMPL_QUERY_INTERFACE_INHERITED6(Class, Super, i1, i2, i3, i4, i5, i6)  \    NS_IMPL_ADDREF_INHERITED(Class, Super)                                    \    NS_IMPL_RELEASE_INHERITED(Class, Super)                                   \///////////////////////////////////////////////////////////////////////////////

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -