include: Add IOpcFactory and related definitions.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
b62d4ea6ed
commit
d504b02aca
|
@ -399,6 +399,7 @@ SOURCES = \
|
||||||
msident.idl \
|
msident.idl \
|
||||||
msinkaut.idl \
|
msinkaut.idl \
|
||||||
msiquery.h \
|
msiquery.h \
|
||||||
|
msopc.idl \
|
||||||
mssip.h \
|
mssip.h \
|
||||||
msstkppg.h \
|
msstkppg.h \
|
||||||
mstask.idl \
|
mstask.idl \
|
||||||
|
@ -493,6 +494,9 @@ SOURCES = \
|
||||||
oledberr.h \
|
oledberr.h \
|
||||||
oledlg.h \
|
oledlg.h \
|
||||||
oleidl.idl \
|
oleidl.idl \
|
||||||
|
opcbase.idl \
|
||||||
|
opcobjectmodel.idl \
|
||||||
|
opcparturi.idl \
|
||||||
opnrst.idl \
|
opnrst.idl \
|
||||||
optary.idl \
|
optary.idl \
|
||||||
patchapi.h \
|
patchapi.h \
|
||||||
|
|
|
@ -0,0 +1,89 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2018 Nikolay Sivov for CodeWeavers
|
||||||
|
*
|
||||||
|
* This library is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
* License as published by the Free Software Foundation; either
|
||||||
|
* version 2.1 of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This library is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with this library; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||||
|
*/
|
||||||
|
|
||||||
|
import "unknwn.idl";
|
||||||
|
import "ocidl.idl";
|
||||||
|
|
||||||
|
#include "opcbase.idl"
|
||||||
|
#include "opcobjectmodel.idl"
|
||||||
|
#include "opcparturi.idl"
|
||||||
|
|
||||||
|
#ifndef __WIDL__
|
||||||
|
#define threading(model)
|
||||||
|
#endif
|
||||||
|
|
||||||
|
interface IOpcUri;
|
||||||
|
interface IOpcPartUri;
|
||||||
|
interface IOpcPackage;
|
||||||
|
interface IOpcDigitalSignatureManager;
|
||||||
|
|
||||||
|
[
|
||||||
|
object,
|
||||||
|
uuid(6d0b4446-cd73-4ab3-94f4-8ccdf6116154),
|
||||||
|
pointer_default(ref)
|
||||||
|
]
|
||||||
|
interface IOpcFactory : IUnknown
|
||||||
|
{
|
||||||
|
HRESULT CreatePackageRootUri(
|
||||||
|
[out, retval] IOpcUri **uri
|
||||||
|
);
|
||||||
|
|
||||||
|
HRESULT CreatePartUri(
|
||||||
|
[in, string] LPCWSTR uri,
|
||||||
|
[out, retval] IOpcPartUri **part_uri
|
||||||
|
);
|
||||||
|
|
||||||
|
[local]
|
||||||
|
HRESULT CreateStreamOnFile(
|
||||||
|
[in, string] LPCWSTR filename,
|
||||||
|
[in] OPC_STREAM_IO_MODE io_mode,
|
||||||
|
[in, unique] SECURITY_ATTRIBUTES *sa,
|
||||||
|
[in] DWORD flags,
|
||||||
|
[out, retval] IStream **stream
|
||||||
|
);
|
||||||
|
|
||||||
|
HRESULT CreatePackage(
|
||||||
|
[out, retval] IOpcPackage **package
|
||||||
|
);
|
||||||
|
|
||||||
|
HRESULT ReadPackageFromStream(
|
||||||
|
[in] IStream *stream,
|
||||||
|
[in] OPC_READ_FLAGS flags,
|
||||||
|
[out, retval] IOpcPackage **package
|
||||||
|
);
|
||||||
|
|
||||||
|
HRESULT WritePackageToStream(
|
||||||
|
[in] IOpcPackage *package,
|
||||||
|
[in] OPC_WRITE_FLAGS flags,
|
||||||
|
[in] IStream *stream
|
||||||
|
);
|
||||||
|
|
||||||
|
HRESULT CreateDigitalSignatureManager(
|
||||||
|
[in] IOpcPackage *package,
|
||||||
|
[out, retval] IOpcDigitalSignatureManager **signature_manager
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
[
|
||||||
|
threading(both),
|
||||||
|
uuid(6b2d6Ba0-9f3e-4f27-920b-313cc426a39e)
|
||||||
|
]
|
||||||
|
coclass OpcFactory
|
||||||
|
{
|
||||||
|
interface IOpcFactory;
|
||||||
|
};
|
|
@ -0,0 +1,27 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2018 Nikolay Sivov for CodeWeavers
|
||||||
|
*
|
||||||
|
* This library is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
* License as published by the Free Software Foundation; either
|
||||||
|
* version 2.1 of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This library is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with this library; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
#pragma makedep install
|
||||||
|
#endif
|
||||||
|
|
||||||
|
typedef [v1_enum] enum
|
||||||
|
{
|
||||||
|
OPC_STREAM_IO_READ = 1,
|
||||||
|
OPC_STREAM_IO_WRITE = 2,
|
||||||
|
} OPC_STREAM_IO_MODE;
|
|
@ -0,0 +1,34 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2018 Nikolay Sivov for CodeWeavers
|
||||||
|
*
|
||||||
|
* This library is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
* License as published by the Free Software Foundation; either
|
||||||
|
* version 2.1 of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This library is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with this library; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||||
|
*/
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
#pragma makedep install
|
||||||
|
#endif
|
||||||
|
|
||||||
|
typedef [v1_enum] enum
|
||||||
|
{
|
||||||
|
OPC_READ_DEFAULT = 0,
|
||||||
|
OPC_VALIDATE_ON_LOAD = 1,
|
||||||
|
OPC_CACHE_ON_ACCESS = 2,
|
||||||
|
} OPC_READ_FLAGS;
|
||||||
|
|
||||||
|
typedef [v1_enum] enum
|
||||||
|
{
|
||||||
|
OPC_WRITE_DEFAULT = 0,
|
||||||
|
OPC_WRITE_FORCE_ZIP32 = 1,
|
||||||
|
} OPC_WRITE_FLAGS;
|
|
@ -0,0 +1,71 @@
|
||||||
|
/*
|
||||||
|
* Copyright 2018 Nikolay Sivov for CodeWeavers
|
||||||
|
*
|
||||||
|
* This library is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
* License as published by the Free Software Foundation; either
|
||||||
|
* version 2.1 of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This library is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with this library; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||||
|
*/
|
||||||
|
|
||||||
|
import "unknwn.idl";
|
||||||
|
import "ocidl.idl";
|
||||||
|
|
||||||
|
#if 0
|
||||||
|
#pragma makedep install
|
||||||
|
#endif
|
||||||
|
|
||||||
|
interface IOpcPartUri;
|
||||||
|
|
||||||
|
[
|
||||||
|
object,
|
||||||
|
uuid(bc9c1b9b-d62c-49eb-aef0-3b4e0b28ebed),
|
||||||
|
nonextensible,
|
||||||
|
pointer_default(ref)
|
||||||
|
]
|
||||||
|
interface IOpcUri : IUri
|
||||||
|
{
|
||||||
|
HRESULT GetRelationshipsPartUri(
|
||||||
|
[out, retval] IOpcPartUri **part_uri
|
||||||
|
);
|
||||||
|
|
||||||
|
HRESULT GetRelativeUri(
|
||||||
|
[in] IOpcPartUri *part_uri,
|
||||||
|
[out, retval] IUri **relative_uri
|
||||||
|
);
|
||||||
|
|
||||||
|
HRESULT CombinePartUri(
|
||||||
|
[in] IUri *relative_uri,
|
||||||
|
[out, retval] IOpcPartUri **combined
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
[
|
||||||
|
object,
|
||||||
|
uuid(7d3babe7-88b2-46ba-85cb-4203cb016c87),
|
||||||
|
nonextensible,
|
||||||
|
pointer_default(ref)
|
||||||
|
]
|
||||||
|
interface IOpcPartUri : IOpcUri
|
||||||
|
{
|
||||||
|
HRESULT ComparePartUri(
|
||||||
|
[in] IOpcPartUri *part_uri,
|
||||||
|
[out, retval] INT32 *result
|
||||||
|
);
|
||||||
|
|
||||||
|
HRESULT GetSourceUri(
|
||||||
|
[out, retval] IOpcUri **source_uri
|
||||||
|
);
|
||||||
|
|
||||||
|
HRESULT IsRelationshipsPartUri(
|
||||||
|
[out, retval] BOOL *result
|
||||||
|
);
|
||||||
|
}
|
Loading…
Reference in New Issue