xref: /reactos/dll/win32/vssapi/main.c (revision 23a1f8d3)
1 /*
2  * Copyright 2014 Hans Leidekker for CodeWeavers
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 
19 #ifndef __REACTOS__
20 #include "config.h"
21 #endif
22 #include <stdarg.h>
23 #include "windef.h"
24 #include "winbase.h"
25 #include "vss.h"
26 #include "vswriter.h"
27 #include "vsbackup.h"
28 #include "wine/asm.h"
29 #include "wine/debug.h"
30 
31 #ifdef __REACTOS__
32 #ifdef _MSC_VER
33 #define __thiscall __stdcall
34 #endif
35 #endif
36 
37 WINE_DEFAULT_DEBUG_CHANNEL( vssapi );
38 
39 struct CVssWriter
40 {
41     void **vtable;
42 };
43 
44 /******************************************************************
45  *  ??0CVssWriter@@QAE@XZ (VSSAPI.@)
46  */
VSSAPI_CVssWriter_default_ctor(struct CVssWriter * writer)47 struct CVssWriter * __thiscall VSSAPI_CVssWriter_default_ctor( struct CVssWriter *writer )
48 {
49     FIXME( "%p\n", writer );
50     writer->vtable = NULL;
51     return writer;
52 }
53 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_default_ctor, 4 )
54 
55 /******************************************************************
56  *  ??1CVssWriter@@UAE@XZ (VSSAPI.@)
57  */
VSSAPI_CVssWriter_dtor(struct CVssWriter * writer)58 void __thiscall VSSAPI_CVssWriter_dtor( struct CVssWriter *writer )
59 {
60     FIXME( "%p\n", writer );
61 }
62 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_dtor, 4 )
63 
64 /******************************************************************
65  *  ?Initialize@CVssWriter@@QAGJU_GUID@@PBGW4VSS_USAGE_TYPE@@W4VSS_SOURCE_TYPE@@W4_VSS_APPLICATION_LEVEL@@KW4VSS_ALTERNATE_WRITER_STATE@@_N@Z
66  */
VSSAPI_CVssWriter_Initialize(struct CVssWriter * writer,VSS_ID id,LPCWSTR name,VSS_USAGE_TYPE usage_type,VSS_SOURCE_TYPE source_type,VSS_APPLICATION_LEVEL level,DWORD timeout,VSS_ALTERNATE_WRITER_STATE alt_writer_state,BOOL throttle,LPCWSTR instance)67 HRESULT __thiscall VSSAPI_CVssWriter_Initialize( struct CVssWriter *writer, VSS_ID id,
68     LPCWSTR name, VSS_USAGE_TYPE usage_type, VSS_SOURCE_TYPE source_type,
69     VSS_APPLICATION_LEVEL level, DWORD timeout, VSS_ALTERNATE_WRITER_STATE alt_writer_state,
70     BOOL throttle, LPCWSTR instance )
71 {
72     FIXME( "%p, %s, %s, %u, %u, %u, %u, %u, %d, %s\n", writer, debugstr_guid(&id),
73            debugstr_w(name), usage_type, source_type, level, timeout, alt_writer_state,
74            throttle, debugstr_w(instance) );
75     return S_OK;
76 }
77 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_Initialize, 52 )
78 
79 /******************************************************************
80  *  ?Subscribe@CVssWriter@@QAGJK@Z
81  */
VSSAPI_CVssWriter_Subscribe(struct CVssWriter * writer,DWORD flags)82 HRESULT __thiscall VSSAPI_CVssWriter_Subscribe( struct CVssWriter *writer, DWORD flags )
83 {
84     FIXME( "%p, %x\n", writer, flags );
85     return S_OK;
86 }
87 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_Subscribe, 8 )
88 
89 /******************************************************************
90  *  ?Unsubscribe@CVssWriter@@QAGJXZ
91  */
VSSAPI_CVssWriter_Unsubscribe(struct CVssWriter * writer)92 HRESULT __thiscall VSSAPI_CVssWriter_Unsubscribe( struct CVssWriter *writer )
93 {
94     FIXME( "%p\n", writer );
95     return S_OK;
96 }
97 DEFINE_THISCALL_WRAPPER( VSSAPI_CVssWriter_Unsubscribe, 4 )
98 
CreateVssBackupComponentsInternal(IVssBackupComponents ** backup)99 HRESULT WINAPI CreateVssBackupComponentsInternal(IVssBackupComponents **backup)
100 {
101     FIXME("%p\n", backup);
102     return E_NOTIMPL;
103 }
104 
105 /******************************************************************
106  *  ?CreateVssBackupComponents@@YGJPAPAVIVssBackupComponents@@@Z
107  */
VSSAPI_CreateVssBackupComponents(IVssBackupComponents ** backup)108 HRESULT WINAPI VSSAPI_CreateVssBackupComponents( IVssBackupComponents **backup )
109 {
110     FIXME( "%p\n", backup );
111 
112     return CreateVssBackupComponentsInternal(backup);
113 }
114