public IntPtr MarshalManagedToNative(object managedObj) { #if RECURSIVE_WRAPPING managedObj = NativeToManagedWrapper.GetInterface(ManagedToNativeWrapper.GetInterface((IStream)managedObj), true); #endif return(ManagedToNativeWrapper.GetInterface((IStream)managedObj)); }
public object MarshalNativeToManaged(IntPtr pNativeData) { #if RECURSIVE_WRAPPING pNativeData = ManagedToNativeWrapper.GetInterface(NativeToManagedWrapper.GetInterface(pNativeData, true)); #endif return(NativeToManagedWrapper.GetInterface(pNativeData, false)); }
public void Clone(out IStream ppstm) { IntPtr newInterface; ThrowExceptionForHR(managedVtable.Clone(comInterface, out newInterface)); ppstm = NativeToManagedWrapper.GetInterface(newInterface, true); }