Struct AllocatorManager.AllocatorHandle
Represents the allocator function used within an allocator.
Implements
Namespace: Unity.Collections
Assembly: Unity.Collections.dll
Syntax
public struct AllocatorManager.AllocatorHandle : AllocatorManager.IAllocatorFields
Index
This allocator's index into the global table of allocator functions.
Declaration
public ushort IndexField Value
| Type | Description | 
|---|---|
| ushort | This allocator's index into the global table of allocator functions. | 
InvalidChildAllocatorIndex
For internal use only.
Declaration
public const int InvalidChildAllocatorIndex = -1Field Value
| Type | Description | 
|---|---|
| int | For internal use only. | 
InvalidChildSafetyHandleIndex
For internal use only.
Declaration
public const int InvalidChildSafetyHandleIndex = -1Field Value
| Type | Description | 
|---|---|
| int | For internal use only. | 
Version
This allocator's version number.
Declaration
public ushort VersionField Value
| Type | Description | 
|---|---|
| ushort | This allocator's version number. | 
Remarks
An allocator function is uniquely identified by its combination of Index and Version together: each index has a version number that starts at 0; the version number is incremented each time the index is reused for another registered allocator function.
Properties
Function
For internal use only.
Declaration
public AllocatorManager.TryFunction Function { get; }Property Value
| Type | Description | 
|---|---|
| AllocatorManager.TryFunction | For internal use only. | 
Handle
This handle.
Declaration
public AllocatorManager.AllocatorHandle Handle { get; set; }Property Value
| Type | Description | 
|---|---|
| AllocatorManager.AllocatorHandle | This handle. | 
IsCustomAllocator
Check whether this allocator is a custom allocator.
Declaration
public bool IsCustomAllocator { get; }Property Value
| Type | Description | 
|---|---|
| bool | 
ToAllocator
Cast the Index to Allocator.
Declaration
public Allocator ToAllocator { get; }Property Value
| Type | Description | 
|---|---|
| Allocator | 
Value
The Index cast to int.
Declaration
public int Value { get; }Property Value
| Type | Description | 
|---|---|
| int | The Index cast to int. | 
Methods
AllocateBlock<T>(int)
Allocates a block with this allocator function.
Declaration
public AllocatorManager.Block AllocateBlock<T>(int items) where T : structParameters
| Type | Name | Description | 
|---|---|---|
| int | items | The number of values to allocate for. | 
Returns
| Type | Description | 
|---|---|
| AllocatorManager.Block | The allocated block. | 
Type Parameters
| Name | Description | 
|---|---|
| T | The type of value to allocate for. | 
Exceptions
| Type | Condition | 
|---|---|
| ArgumentException | Thrown if the allocator is not valid or if the allocation failed. | 
Dispose()
Unregister the allocator.
Declaration
public void Dispose()Try(ref Block)
Tries to allocate the block with this allocator.
Declaration
public int Try(ref AllocatorManager.Block block)Parameters
| Type | Name | Description | 
|---|---|---|
| AllocatorManager.Block | block | The block to allocate. | 
Returns
| Type | Description | 
|---|---|
| int | 0 if successful. Otherwise, returns an error code. | 
TryAllocateBlock<T>(out Block, int)
Allocates a block from this allocator.
Declaration
public int TryAllocateBlock<T>(out AllocatorManager.Block block, int items) where T : structParameters
| Type | Name | Description | 
|---|---|---|
| AllocatorManager.Block | block | Outputs the allocated block. | 
| int | items | The number of values to allocate for. | 
Returns
| Type | Description | 
|---|---|
| int | 0 if successful. Otherwise, returns the error code from the allocator function. | 
Type Parameters
| Name | Description | 
|---|---|
| T | The type of value to allocate for. | 
Operators
implicit operator AllocatorHandle(Allocator)
Returns the AllocatorHandle of an allocator.
Declaration
public static implicit operator AllocatorManager.AllocatorHandle(Allocator a)Parameters
| Type | Name | Description | 
|---|---|---|
| Allocator | a | The Allocator to copy. | 
Returns
| Type | Description | 
|---|---|
| AllocatorManager.AllocatorHandle | The AllocatorHandle of an allocator. |