MKL_Complex8
using System;
using System.Runtime.InteropServices;
using System.Security;
namespace IntelMKL
{
public struct MKL_Complex8
{
[StructLayout(LayoutKind.Explicit, Size = 8)]
public struct __Internal
{
[FieldOffset(0)]
internal float real;
[FieldOffset(4)]
internal float imag;
[DllImport("mkl_rt", CallingConvention = CallingConvention.Cdecl, EntryPoint = "??0_MKL_Complex8@@QEAA@AEBU0@@Z")]
[SuppressUnmanagedCodeSecurity]
internal static extern IntPtr cctor(IntPtr instance, IntPtr _0);
}
private __Internal __instance;
internal __Internal __Instance => __instance;
public float Real {
get {
return __instance.real;
}
set {
__instance.real = value;
}
}
public float Imag {
get {
return __instance.imag;
}
set {
__instance.imag = value;
}
}
internal unsafe static MKL_Complex8 __CreateInstance(IntPtr native, bool skipVTables = false)
{
return new MKL_Complex8(native.ToPointer(), skipVTables);
}
internal static MKL_Complex8 __CreateInstance(__Internal native, bool skipVTables = false)
{
return new MKL_Complex8(native, skipVTables);
}
private MKL_Complex8(__Internal native, bool skipVTables = false)
{
this = default(MKL_Complex8);
__instance = native;
}
private unsafe MKL_Complex8(void* native, bool skipVTables = false)
{
this = default(MKL_Complex8);
__instance = *(__Internal*)native;
}
public unsafe MKL_Complex8(MKL_Complex8 _0)
{
this = default(MKL_Complex8);
__Internal _Instance = _0.__Instance;
IntPtr _ = new IntPtr(&_Instance);
fixed (__Internal* value = &__instance) {
__Internal.cctor(new IntPtr(value), _);
}
}
}
}