internal IBlob(AbiPtr i) : base(i) { Native.Throw(Marshal.QueryInterface(i.Value, ref _ID, out _i)); Marshal.Release(_i); _vt = VTUnknown.GetVTable <ABI.IBlob>(_i); Init(); }
internal DummyClass(AbiPtr i) : base(i) { IntPtr iptr; Native.Throw(Marshal.QueryInterface(i.Value, ref _ID, out iptr)); Marshal.Release(iptr); IPtr = iptr; _vt = VTUnknown.GetVTable <ABI.GluonTest.DummyClass>(IPtr); Init(); }
internal SinusoidalWaveform(AbiPtr i) : base(i) { IntPtr iptr; Native.Throw(Marshal.QueryInterface(i.Value, ref _ID, out iptr)); Marshal.Release(iptr); IPtr = iptr; _vt = VTUnknown.GetVTable <ABI.GluonTest.SinusoidalWaveform>(IPtr); Init(); }
protected GluonObject(AbiPtr native) { // Reference counting model: Callees with output parameters are responsible for adding a reference to output objects //Marshal.AddRef(native.Value); NativePtr = GetRootPointer(native.Value); lock (All) { All.Add(NativePtr, new WeakReference(this)); } }
internal ITestClass(AbiPtr i) : base(i) { IntPtr iptr; Native.Throw(Marshal.QueryInterface(i.Value, ref _ID, out iptr)); Marshal.Release(iptr); IPtr = iptr; _vt = VTUnknown.GetVTable <ABI.GluonTest.ITestClass>(IPtr); _BigEvent_abi = D_5D02415F.Unwrap(_Call_BigEvent); Init(); }