Class UnsafeUtility
Inheritance
UnsafeUtility
Syntax
public static class UnsafeUtility
Methods
AddressOf<T>(ref T)
Declaration
public static void *AddressOf<T>(ref T output)
where T : struct
Parameters
Type |
Name |
Description |
T |
output |
|
Returns
Type Parameters
AlignOf<T>()
Declaration
public static int AlignOf<T>()
where T : struct
Returns
Type Parameters
ArrayElementAsRef<T>(Void*, Int32)
Declaration
public static T ArrayElementAsRef<T>(void *ptr, int index)
where T : struct
Parameters
Returns
Type Parameters
As<U, T>(ref U)
Declaration
public static T As<U, T>(ref U from)
Parameters
Type |
Name |
Description |
U |
from |
|
Returns
Type Parameters
AsRef<T>(Void*)
Declaration
public static T AsRef<T>(void *p)
where T : struct
Parameters
Type |
Name |
Description |
Void* |
p |
|
Returns
Type Parameters
AssertHeap(Void*)
Declaration
public static void AssertHeap(void *dst)
Parameters
Type |
Name |
Description |
Void* |
dst |
|
CallFunctionPtr_p(Void*, Void*)
Declaration
public static void CallFunctionPtr_p(void *fnc, void *data)
Parameters
Type |
Name |
Description |
Void* |
fnc |
|
Void* |
data |
|
CallFunctionPtr_pi(Void*, Void*, Int32)
Declaration
public static void CallFunctionPtr_pi(void *fnc, void *data, int param0)
Parameters
CallFunctionPtr_pp(Void*, Void*, Void*)
Declaration
public static void CallFunctionPtr_pp(void *fnc, void *data1, void *data2)
Parameters
CopyObjectAddressToPtr(Object, Void*)
Declaration
public static void CopyObjectAddressToPtr(object target, void *dstPtr)
Parameters
CopyPtrToStructure<T>(Void*, out T)
Declaration
public static void CopyPtrToStructure<T>(void *ptr, out T output)
where T : struct
Parameters
Type |
Name |
Description |
Void* |
ptr |
|
T |
output |
|
Type Parameters
CopyStructureToPtr<T>(ref T, Void*)
Declaration
public static void CopyStructureToPtr<T>(ref T input, void *ptr)
where T : struct
Parameters
Type |
Name |
Description |
T |
input |
|
Void* |
ptr |
|
Type Parameters
EnumEquals<T>(T, T)
Declaration
public static bool EnumEquals<T>(T a, T b)
where T : struct
Parameters
Type |
Name |
Description |
T |
a |
|
T |
b |
|
Returns
Type Parameters
EnumToInt<T>(T)
Declaration
public static int EnumToInt<T>(T value)
where T : struct
Parameters
Type |
Name |
Description |
T |
value |
|
Returns
Type Parameters
Free(Void*, Allocator)
Declaration
public static void Free(void *mBuffer, Allocator allocator)
Parameters
FreeTempMemory()
Declaration
public static void FreeTempMemory()
GetReasonForValueTypeNonBlittable<T>()
Declaration
public static string GetReasonForValueTypeNonBlittable<T>()
where T : struct
Returns
Type Parameters
IsBlittable(Type)
Declaration
public static bool IsBlittable(Type type)
Parameters
Type |
Name |
Description |
Type |
type |
|
Returns
IsBlittable<T>()
Declaration
public static bool IsBlittable<T>()
Returns
Type Parameters
IsUnmanaged<T>()
Declaration
public static bool IsUnmanaged<T>()
Returns
Type Parameters
IsValidAllocator(Allocator)
Declaration
public static bool IsValidAllocator(Allocator allocator)
Parameters
Returns
IsValidNativeContainerElementType<T>()
Declaration
public static bool IsValidNativeContainerElementType<T>()
Returns
Type Parameters
Malloc(Int64, Int32, Allocator)
Declaration
public static void *Malloc(long totalSize, int alignOf, Allocator allocator)
Parameters
Returns
MemClear(Void*, Int64)
Declaration
public static void MemClear(void *mBuffer, long size)
Parameters
Type |
Name |
Description |
Void* |
mBuffer |
|
Int64 |
size |
|
MemCmp(Void*, Void*, Int64)
Declaration
public static int MemCmp(void *ptr1, void *ptr2, long size)
Parameters
Returns
MemCpy(Void*, Void*, Int64)
Declaration
public static void MemCpy(void *dst, void *src, long n)
Parameters
MemCpyReplicate(Void*, Void*, Int32, Int32)
Declaration
public static void MemCpyReplicate(void *destination, void *source, int size, int count)
Parameters
MemCpyStride(Void*, Int32, Void*, Int32, Int32, Int64)
Declaration
public static void MemCpyStride(void *destination, int destinationStride, void *source, int sourceStride, int elementSize, long count)
Parameters
MemMove(Void*, Void*, Int64)
Declaration
public static void MemMove(void *destination, void *source, long size)
Parameters
MemoryCompare(Void*, Void*, Int64)
Declaration
public static int MemoryCompare(void *left, void *right, long size)
Parameters
Returns
MemSet(Void*, Byte, Int64)
Declaration
public static void MemSet(void *destination, byte value, long size)
Parameters
PinGCArrayAndGetDataAddress(Array, out UInt64)
Declaration
public static void *PinGCArrayAndGetDataAddress(Array target, out ulong gcHandle)
Parameters
Returns
PinGCObjectAndGetAddress(Object, out UInt64)
Declaration
public static void *PinGCObjectAndGetAddress(object target, out ulong gcHandle)
Parameters
Returns
ReadArrayElement<T>(Void*, Int32)
Declaration
public static T ReadArrayElement<T>(void *source, int index)
Parameters
Type |
Name |
Description |
Void* |
source |
|
Int32 |
index |
|
Returns
Type Parameters
ReadArrayElementWithStride<T>(Void*, Int32, Int32)
Declaration
public static T ReadArrayElementWithStride<T>(void *source, int index, int stride)
Parameters
Returns
Type Parameters
Realloc(Void*, Int64, Int32, Allocator)
Declaration
public static void *Realloc(void *oldMem, long newSize, int alignOf, Allocator allocator)
Parameters
Returns
ReleaseGCObject(UInt64)
Declaration
public static void ReleaseGCObject(ulong gcHandle)
Parameters
Type |
Name |
Description |
UInt64 |
gcHandle |
|
SizeOf<T>()
Declaration
public static int SizeOf<T>()
where T : struct
Returns
Type Parameters
WriteArrayElement<T>(Void*, Int32, T)
Declaration
public static void WriteArrayElement<T>(void *destination, int index, T value)
Parameters
Type |
Name |
Description |
Void* |
destination |
|
Int32 |
index |
|
T |
value |
|
Type Parameters
WriteArrayElementWithStride<T>(Void*, Int32, Int32, T)
Declaration
public static void WriteArrayElementWithStride<T>(void *destination, int index, int stride, T value)
Parameters
Type |
Name |
Description |
Void* |
destination |
|
Int32 |
index |
|
Int32 |
stride |
|
T |
value |
|
Type Parameters