aa24ddee2289a26750e496bdf6a7e1fc1bc0b6e3
[reactos.git] / reactos / dll / win32 / scrrun / scrrun_private.h
1 /*
2 * Copyright 2012 Alistair Leslie-Hughes
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
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17 */
18 #ifndef _SCRRUN_PRIVATE_H_
19 #define _SCRRUN_PRIVATE_H
20
21 extern HRESULT WINAPI FileSystem_CreateInstance(IClassFactory*,IUnknown*,REFIID,void**) DECLSPEC_HIDDEN;
22 extern HRESULT WINAPI Dictionary_CreateInstance(IClassFactory*,IUnknown*,REFIID,void**) DECLSPEC_HIDDEN;
23
24 typedef enum tid_t
25 {
26 NULL_tid,
27 IDictionary_tid,
28 IFileSystem3_tid,
29 IFolder_tid,
30 ITextStream_tid,
31 IFile_tid,
32 LAST_tid
33 } tid_t;
34
35 HRESULT get_typeinfo(tid_t tid, ITypeInfo **typeinfo) DECLSPEC_HIDDEN;
36
37 static inline void *heap_alloc(size_t len)
38 {
39 return HeapAlloc(GetProcessHeap(), 0, len);
40 }
41
42 static inline BOOL heap_free(void *mem)
43 {
44 return HeapFree(GetProcessHeap(), 0, mem);
45 }
46
47 #endif