> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XALLOC_ALLOCATOR_IDS

> XALLOC_ALLOCATOR_IDS

Defines the range for the set of IDs for different types of allocators used by memory allocation routines.

## Syntax

```cpp theme={null}
typedef enum _XALLOC_ALLOCATOR_IDS    
{  
    eXALLOCAllocatorId_GameMin = 0,  
    eXALLOCAllocatorId_GameMax = 127,  
    eXALLOCAllocatorId_PlatformReservedMin = 128,  
    eXALLOCAllocatorId_D3D = 128,  
    eXALLOCAllocatorId_Audio = 129,  
    eXALLOCAllocatorId_Video = 130,  
    eXALLOCAllocatorId_ApplicationClip = 131,  
    eXALLOCAllocatorId_SmartGlass = 132,  
    eXALLOCAllocatorId_Networking = 133,  
    eXALLOCAllocatorId_AppPlatform = 134,  
    eXALLOCAllocatorId_Input = 135,  
    eXALLOCAllocatorId_ShellAPI = 136,  
    eXALLOCAllocatorId_MultimediaControl = 137,  
    eXALLOCAllocatorId_COM = 138,  
    eXALLOCAllocatorId_CpuProfilers = 139,  
    eXALLOCAllocatorId_WinRT = 140,  
    eXALLOCAllocatorId_RPC = 141,  
    eXALLOCAllocatorId_PIX = 142,  
    eXALLOCAllocatorId_XMem = 143,  
    eXALLOCAllocatorId_PlatformReservedMax = 191,  
    eXALLOCAllocatorId_MiddlewareReservedMin = 192,  
    eXALLOCAllocatorId_MiddlewareReservedMax = 255  
} XALLOC_ALLOCATOR_IDS  
```

## Constants

| Constant | Description |
| - | - |
| eXALLOCAllocatorId\_GameMin | Start of the range of allocator IDs available to titles for allocation. |
| eXALLOCAllocatorId\_GameMax | End of the range of allocator IDs available to titles for allocation. |
| eXALLOCAllocatorId\_PlatformReservedMin | Start of the range of allocator IDs used by the system. |
| eXALLOCAllocatorId\_D3D | Allocator ID for Direct 3D. |
| eXALLOCAllocatorId\_Audio | Allocator ID for audio. |
| eXALLOCAllocatorId\_Video | Allocator ID for video. |
| eXALLOCAllocatorId\_ApplicationClip | Allocator ID for application clips. |
| eXALLOCAllocatorId\_SmartGlass | Allocator ID for SmartGlass. |
| eXALLOCAllocatorId\_Networking | Allocator ID for networking. |
| eXALLOCAllocatorId\_AppPlatform | Allocator ID for application platform. |
| eXALLOCAllocatorId\_Input | Allocator ID for input. |
| eXALLOCAllocatorId\_ShellAPI | Allocator ID for shell API. |
| eXALLOCAllocatorId\_MultimediaControl | Allocator ID for multimedia control. |
| eXALLOCAllocatorId\_COM | Allocator ID for COM. |
| eXALLOCAllocatorId\_CpuProfilers | Allocator ID for CPU profilers. |
| eXALLOCAllocatorId\_WinRT | Allocator ID for WinRT. |
| eXALLOCAllocatorId\_RPC | Allocator ID for RPC. |
| eXALLOCAllocatorId\_PIX | Allocator ID for PIX. |
| eXALLOCAllocatorId\_XMem | Allocator ID for XMem. |
| eXALLOCAllocatorId\_PlatformReservedMax | End of the range of allocator IDs used by the system. |
| eXALLOCAllocatorId\_MiddlewareReservedMin | Start of the range of allocator IDs reserved for middleware. |
| eXALLOCAllocatorId\_MiddlewareReservedMax | End of the range of allocator IDs reserved for middleware. |

## Remarks

The **XALLOC\_ALLOCATOR\_IDS** constants are used by the *AllocatorId* member of the [XALLOC\_ATTRIBUTES](https://docs.xbox.com/reference/system/xmem/structs/xalloc_attributes.md) union. Each allocation is associated with an allocator ID, which identifies the subsystem which is requesting the allocation (or free). There are three potential sources of allocations; Title (game), Platform (OS), and Middleware components.

Title developers should feel free to use any of the values in the range **eXALLOCAllocatorId\_GameMin** to **eXALLOCAllocatorId\_GameMax** to identify which of their subsystems are performing allocations.

If you are a middleware vendor and would like to reserve an allocator ID, please contact your developer account manager.

## Requirements

**Header:** xmem.h

**Supported platforms:** XBOX One family consoles and XBOX Series consoles

## See also

[XMem reference](https://docs.xbox.com/reference/system/xmem/xmem_members.md)\
[XALLOC\_ATTRIBUTES](https://docs.xbox.com/reference/system/xmem/structs/xalloc_attributes.md)\
[XMEMALLOC\_ROUTINE](https://docs.xbox.com/reference/system/xmem/functions/xmemalloc_routine.md)\
[XMEMFREE\_ROUTINE](https://docs.xbox.com/reference/system/xmem/functions/xmemfree_routine.md)


## Related topics

- [XMemFreeDefault](https://docs.xbox.com/reference/system/xmem/functions/xmemfreedefault.md)
- [XDspConnect](https://docs.xbox.com/reference/audio/xdspaudio/functions/xdspconnect.md)
- [XDspConnectWithMaximumStreamLimit](https://docs.xbox.com/reference/audio/xdspaudio/functions/xdspconnectwithmaximumstreamlimit.md)
- [Wrapper sample](https://docs.xbox.com/services/playfab/multiplayer/servers/wrapper-sample.md)
- [CreateCommandAllocator](https://docs.xbox.com/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_createcommandallocator_public.md)
