> ## 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.

# PartyManager

> The primary management class for interacting with the Party library.

The primary management class for interacting with the Party library.

## Syntax

```cpp theme={null}
class PartyManager  
```

## Public Methods

| Name | Description |
| - | - |
| [GetSingleton](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getsingleton.md) | Retrieves a reference to the PartyManager singleton instance. |
| [SetOption](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_setoption.md) | Configures an option to fine-tune Party library functionality. |
| [GetOption](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getoption.md) | Retrieves an option used to fine-tune Party library functionality. |
| [GetErrorMessage](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_geterrormessage.md) | Get the human-readable form of an error generated by the Party library. |
| [SerializeNetworkDescriptor](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_serializenetworkdescriptor.md) | Serializes a network descriptor structure into an opaque string that is safe to communicate over title and platform-specific communication channels. |
| [DeserializeNetworkDescriptor](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_deserializenetworkdescriptor.md) | Deserializes a network descriptor structure from an opaque string serialized via a prior call to [SerializeNetworkDescriptor()](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_serializenetworkdescriptor.md). |
| [SetMemoryCallbacks](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_setmemorycallbacks.md) | Optionally configures the memory allocation and freeing callbacks the Party library should use. |
| [GetMemoryCallbacks](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getmemorycallbacks.md) | Retrieves the memory allocation and freeing callbacks the Party library is using. |
| [SetProfilingCallbacksForMethodEntryExit](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_setprofilingcallbacksformethodentryexit.md) | Optionally configures the profiling event callbacks the Party library will make when entering or exiting instrumented methods. |
| [GetProfilingCallbacksForMethodEntryExit](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getprofilingcallbacksformethodentryexit.md) | Retrieves the profiling event callbacks the Party library is configured to use when entering or exiting instrumented methods. |
| [SetThreadAffinityMask](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_setthreadaffinitymask.md) | Optionally configures the processor on which internal Party library threads run. |
| [GetThreadAffinityMask](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getthreadaffinitymask.md) | Retrieves the current set of processors on which internal Party library threads will run or are running as an affinity mask. |
| [SetWorkMode](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_setworkmode.md) | Configures the work mode of the Party library processing task associated with `threadId`. |
| [GetWorkMode](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getworkmode.md) | Retrieves the current work mode of the Party library's internal processing task associated with `threadId`. |
| [Initialize](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_initialize.md) | Initializes the PartyManager object instance. |
| [Cleanup](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_cleanup.md) | Immediately reclaims all resources associated with all Party library objects. |
| [StartProcessingStateChanges](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_startprocessingstatechanges.md) | Retrieves an array of all PartyStateChanges to process since the last such call. |
| [FinishProcessingStateChanges](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_finishprocessingstatechanges.md) | Returns an array of PartyStateChanges that were being processed. |
| [DoWork](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_dowork.md) | Synchronously performs the processing task associated with `threadId`. |
| [GetRegions](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getregions.md) | Gets an array containing the set of regions for which your title is configured, along with round trip latency information. |
| [CreateNewNetwork](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_createnewnetwork.md) | Queues an asynchronous attempt to create a new network. |
| [ConnectToNetwork](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_connecttonetwork.md) | Queues an asynchronous attempt to connect to a network. |
| [GetLocalDevice](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getlocaldevice.md) | Gets the local device. |
| [CreateLocalUser](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_createlocaluser.md) | Creates a local user object that is used to represent a local player when performing networking and chat operations. |
| [CreateLocalUserWithEntityType](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_createlocaluserwithentitytype.md) | Creates a local user object that is used to represent a supported PlayFab Entity ID and type when performing networking and chat operations. |
| [DestroyLocalUser](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_destroylocaluser.md) | Starts an asynchronous operation to destroy a local user. |
| [GetLocalUsers](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getlocalusers.md) | Gets an array containing all local users created by [CreateLocalUser()](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_createlocaluser.md) or [CreateLocalUserWithEntityType()](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_createlocaluserwithentitytype.md). |
| [GetNetworks](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getnetworks.md) | Gets an array of all networks to which the local device is connected or connecting. |
| [GetChatControls](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getchatcontrols.md) | Gets an array that contains a combined list of all chat controls on the local device and all remote devices. |

## Remarks

Only a single instance of the class is permitted.

## Requirements

**Header:** Party.h

## See also

[Party members](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/party_members.md)


## Related topics

- [PartyManager::Initialize](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_initialize.md)
- [PartyManager::Cleanup](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_cleanup.md)
- [PartyManager::DoWork](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_dowork.md)
- [PartyManager::GetSingleton](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_getsingleton.md)
- [PartyManager::SetOption](https://docs.xbox.com/services/playfab/multiplayer/networking/reference/classes/PartyManager/methods/partymanager_setoption.md)
