Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
System.Runtime.InteropServices.ComWrappers Class Referenceabstract

Classes

struct  ComInterfaceDispatch
 
struct  ComInterfaceEntry
 

Public Member Functions

IntPtr GetOrCreateComInterfaceForObject (object instance, CreateComInterfaceFlags flags)
 
object GetOrCreateObjectForComInstance (IntPtr externalComObject, CreateObjectFlags flags)
 
object GetOrRegisterObjectForComInstance (IntPtr externalComObject, CreateObjectFlags flags, object wrapper)
 
object GetOrRegisterObjectForComInstance (IntPtr externalComObject, CreateObjectFlags flags, object wrapper, IntPtr inner)
 

Static Public Member Functions

static void RegisterForTrackerSupport (ComWrappers instance)
 
static void RegisterForMarshalling (ComWrappers instance)
 

Protected Member Functions

unsafe ComInterfaceEntryComputeVtables (object obj, CreateComInterfaceFlags flags, out int count)
 
object? CreateObject (IntPtr externalComObject, CreateObjectFlags flags)
 
void ReleaseObjects (IEnumerable objects)
 

Static Protected Member Functions

static void GetIUnknownImpl (out IntPtr fpQueryInterface, out IntPtr fpAddRef, out IntPtr fpRelease)
 

Static Package Functions

static unsafe void * CallComputeVtables (ComWrappersScenario scenario, ComWrappers comWrappersImpl, object obj, CreateComInterfaceFlags flags, out int count)
 
static object CallCreateObject (ComWrappersScenario scenario, ComWrappers comWrappersImpl, IntPtr externalComObject, CreateObjectFlags flags)
 
static void CallReleaseObjects (ComWrappers comWrappersImpl, IEnumerable objects)
 
static int CallICustomQueryInterface (object customQueryInterfaceMaybe, ref Guid iid, out IntPtr ppObject)
 

Private Member Functions

static bool TryGetOrCreateComInterfaceForObjectInternal (ObjectHandleOnStack comWrappersImpl, long wrapperId, ObjectHandleOnStack instance, CreateComInterfaceFlags flags, out IntPtr retValue)
 
static bool TryGetOrCreateObjectForComInstanceInternal (ObjectHandleOnStack comWrappersImpl, long wrapperId, IntPtr externalComObject, IntPtr innerMaybe, CreateObjectFlags flags, ObjectHandleOnStack wrapper, ObjectHandleOnStack retValue)
 
static void SetGlobalInstanceRegisteredForTrackerSupport (long id)
 
static void SetGlobalInstanceRegisteredForMarshalling (long id)
 
static void GetIUnknownImplInternal (out IntPtr fpQueryInterface, out IntPtr fpAddRef, out IntPtr fpRelease)
 

Static Private Member Functions

static bool TryGetOrCreateComInterfaceForObjectInternal (ComWrappers impl, object instance, CreateComInterfaceFlags flags, out IntPtr retValue)
 
static bool TryGetOrCreateObjectForComInstanceInternal (ComWrappers impl, IntPtr externalComObject, IntPtr innerMaybe, CreateObjectFlags flags, object wrapperMaybe, out object retValue)
 

Private Attributes

readonly long id = Interlocked.Increment(ref s_instanceCounter)
 

Static Private Attributes

static ComWrappers s_globalInstanceForTrackerSupport
 
static ComWrappers s_globalInstanceForMarshalling
 
static long s_instanceCounter
 

Detailed Description

Definition at line 14 of file ComWrappers.cs.


The documentation for this class was generated from the following file: