twain2/pub/ddk/cloneviewhelper.idl

104 lines
3.8 KiB
Plaintext

// CloneViewHelper.idl : IDL source for ICloneViewHelper
//
import "oaidl.idl";
import "ocidl.idl";
cpp_quote("#define GETCONNECTEDIDS_TARGET 0")
cpp_quote("#define GETCONNECTEDIDS_SOURCE 1")
cpp_quote("#define S_INIT 2")
cpp_quote("// 0 == TMM's passed in configuration was applied")
cpp_quote("#define SETCONFIGURATION_STATUS_APPLIED 0")
cpp_quote("// 1 == TMM's passed in configuration was applied, with additional proprietary IHV settings")
cpp_quote("#define SETCONFIGURATION_STATUS_ADDITIONAL 1")
cpp_quote("// 2 == TMM's passed in configuration was overridden and IHV's own settings were applied")
cpp_quote("#define SETCONFIGURATION_STATUS_OVERRIDDEN 2")
cpp_quote("")
cpp_quote("// Topology Data")
cpp_quote("")
cpp_quote("typedef struct tagSources")
cpp_quote("{")
cpp_quote(" ULONG sourceId;")
cpp_quote(" int numTargets;")
cpp_quote(" ULONG aTargets[1];")
cpp_quote("} Sources;")
cpp_quote("")
cpp_quote("typedef struct tagAdapter")
cpp_quote("{")
cpp_quote(" WCHAR AdapterName[128];")
cpp_quote(" int numSources;")
cpp_quote(" Sources sources[1];")
cpp_quote("} Adapter;")
cpp_quote("")
cpp_quote("typedef struct tagAdapters")
cpp_quote("{")
cpp_quote(" int numAdapters;")
cpp_quote(" Adapter adapter[1];")
cpp_quote("} Adapters;")
cpp_quote("")
cpp_quote("// Display Mode Data")
cpp_quote("")
cpp_quote("typedef struct tagDisplayMode")
cpp_quote("{")
cpp_quote(" WCHAR DeviceName[32];")
cpp_quote(" DEVMODEW devMode;")
cpp_quote("} DisplayMode;")
cpp_quote("")
cpp_quote("typedef struct tagDisplayModes")
cpp_quote("{")
cpp_quote(" int numDisplayModes;")
cpp_quote(" DisplayMode displayMode[1];")
cpp_quote("} DisplayModes;")
cpp_quote("")
[
object,
uuid(F6A3D4C4-5632-4D83-B0A1-FB88712B1EB7),
nonextensible,
helpstring("ICloneViewHelper Interface"),
pointer_default(unique)
]
interface ICloneViewHelper : IUnknown
{
HRESULT GetConnectedIDs( [in] LPCWSTR wszAdaptorName,
[in,out] ULONG * pulCount,
[in,out] ULONG * pulID,
[in] ULONG ulFlags);
HRESULT GetActiveTopology([in] LPCWSTR wszAdaptorName,
[in] ULONG ulSourceID,
[in,out] ULONG * pulCount,
[in,out] ULONG * pulTargetID);
HRESULT SetActiveTopology([in] LPCWSTR wszAdaptorName,
[in] ULONG ulSourceID,
[in] ULONG ulCount,
[in] ULONG * pulTargetID);
HRESULT Commit( [in] BOOL fFinalCall);
};
[
object,
uuid(E85CCEF5-AAAA-47f0-B5E3-61F7AECDC4C1),
nonextensible,
helpstring("IViewHelper Interface"),
pointer_default(unique)
]
interface IViewHelper : IUnknown
{
HRESULT GetConnectedIDs( [in] LPCWSTR wszAdaptorName,
[in,out] ULONG * pulCount,
[in,out] ULONG * pulID,
[in] ULONG ulFlags);
HRESULT GetActiveTopology([in] LPCWSTR wszAdaptorName,
[in] ULONG ulSourceID,
[in,out] ULONG * pulCount,
[in,out] ULONG * pulTargetID);
HRESULT SetActiveTopology([in] LPCWSTR wszAdaptorName,
[in] ULONG ulSourceID,
[in] ULONG ulCount,
[in] ULONG * pulTargetID);
HRESULT Commit();
HRESULT SetConfiguration( [in] IStream * pIStream,
[out] ULONG * pulStatus);
HRESULT GetProceedOnNewConfiguration();
};