You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

26 lines
1.5 KiB
C#

namespace OPCDA.Interface
{
using System;
using System.Runtime.InteropServices;
[ComImport, InterfaceType(ComInterfaceType.InterfaceIsIUnknown), ComVisible(true), Guid("39c13a54-011e-11d0-9675-0020afd8adb3")]
internal interface IOPCItemMgt
{
[PreserveSig]
int AddItems([In] int dwCount, [In] IntPtr pItemArray, out IntPtr ppAddResults, out IntPtr ppErrors);
[PreserveSig]
int ValidateItems([In] int dwCount, [In] IntPtr pItemArray, [In, MarshalAs(UnmanagedType.Bool)] bool bBlobUpdate, out IntPtr ppValidationResults, out IntPtr ppErrors);
[PreserveSig]
int RemoveItems([In] int dwCount, [In, MarshalAs(UnmanagedType.LPArray, SizeParamIndex=0)] int[] phServer, out IntPtr ppErrors);
[PreserveSig]
int SetActiveState([In] int dwCount, [In, MarshalAs(UnmanagedType.LPArray, SizeParamIndex=0)] int[] phServer, [In, MarshalAs(UnmanagedType.Bool)] bool bActive, out IntPtr ppErrors);
[PreserveSig]
int SetClientHandles([In] int dwCount, [In, MarshalAs(UnmanagedType.LPArray, SizeParamIndex=0)] int[] phServer, [In, MarshalAs(UnmanagedType.LPArray, SizeParamIndex=0)] int[] phClient, out IntPtr ppErrors);
[PreserveSig]
int SetDatatypes([In] int dwCount, [In, MarshalAs(UnmanagedType.LPArray, SizeParamIndex=0)] int[] phServer, [In] IntPtr pRequestedDatatypes, out IntPtr ppErrors);
[PreserveSig]
int CreateEnumerator([In] ref Guid riid, [MarshalAs(UnmanagedType.IUnknown)] out object ppUnk);
}
}