using System.Collections; using System.Runtime.CompilerServices; using System.Runtime.InteropServices; namespace Interop.Lmx; [ComImport] [TypeLibType(TypeLibTypeFlags.FDispatchable)] [Guid("D068DBD0-7EE8-4846-B3CD-D4498B9132E1")] public interface IPrimitiveDefinitions : IEnumerable { [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] [return: MarshalAs(UnmanagedType.Interface)] IPrimitiveDefinition AddPrimitive(); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void ImportPrimitive([In][MarshalAs(UnmanagedType.Interface)] IPrimitiveDefinition pPrimitiveDefinition); [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] void RemovePrimitive([In] short nPrimitiveId); [DispId(4)] int count { [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] get; } [DispId(0)] IPrimitiveDefinition this[[In] int nIndex] { [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] [return: MarshalAs(UnmanagedType.Interface)] get; } [MethodImpl(MethodImplOptions.InternalCall, MethodCodeType = MethodCodeType.Runtime)] [return: MarshalAs(UnmanagedType.CustomMarshaler, MarshalType = "System.Runtime.InteropServices.CustomMarshalers.EnumeratorToEnumVariantMarshaler, CustomMarshalers, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a")] new IEnumerator GetEnumerator(); }