Commit | Line | Data |
---|---|---|
0df7b24b OK |
1 | /* |
2 | * Copyright 2002 Ove Kaaven | |
3 | * | |
4 | * This library is free software; you can redistribute it and/or | |
5 | * modify it under the terms of the GNU Lesser General Public | |
6 | * License as published by the Free Software Foundation; either | |
7 | * version 2.1 of the License, or (at your option) any later version. | |
8 | * | |
9 | * This library is distributed in the hope that it will be useful, | |
10 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
12 | * Lesser General Public License for more details. | |
13 | * | |
14 | * You should have received a copy of the GNU Lesser General Public | |
15 | * License along with this library; if not, write to the Free Software | |
360a3f91 | 16 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA |
0df7b24b OK |
17 | */ |
18 | ||
9719bcaf | 19 | #ifndef DO_NO_IMPORTS |
0df7b24b | 20 | import "wtypes.idl"; |
9719bcaf | 21 | #endif |
0df7b24b | 22 | |
0df7b24b OK |
23 | /* Interfaces */ |
24 | ||
25 | [ | |
26 | local, | |
27 | object, | |
28 | uuid(00000000-0000-0000-C000-000000000046), | |
29 | pointer_default(unique) | |
30 | ] | |
31 | interface IUnknown | |
32 | { | |
33 | typedef [unique] IUnknown *LPUNKNOWN; | |
34 | ||
35 | HRESULT QueryInterface( | |
36 | [in] REFIID riid, | |
37 | [out, iid_is(riid)] void **ppvObject); | |
38 | ULONG AddRef(); | |
39 | ULONG Release(); | |
40 | } | |
41 | ||
42 | [ | |
43 | object, | |
44 | uuid(00000001-0000-0000-C000-000000000046), | |
45 | pointer_default(unique) | |
46 | ] | |
47 | interface IClassFactory : IUnknown | |
48 | { | |
49 | typedef [unique] IClassFactory *LPCLASSFACTORY; | |
50 | ||
51 | [local] | |
52 | HRESULT CreateInstance( | |
53 | [in, unique] IUnknown *pUnkOuter, | |
54 | [in] REFIID riid, | |
55 | [out, iid_is(riid)] void **ppvObject); | |
56 | ||
57 | [call_as(CreateInstance)] | |
58 | HRESULT RemoteCreateInstance( | |
59 | [in] REFIID riid, | |
60 | [out, iid_is(riid)] IUnknown **ppvObject); | |
61 | ||
62 | [local] | |
63 | HRESULT LockServer( | |
64 | [in] BOOL fLock); | |
65 | ||
66 | [call_as(LockServer)] | |
67 | HRESULT RemoteLockServer( | |
68 | [in] BOOL fLock); | |
69 | } |