6.1. Server¶
6.1.1. Introduction¶
TeleportServer is a library that provides server functionality in conjunction with a real-time game or simulation engine. The library is usually dynamically-linked, and can be controlled from engine-side entirely by means of the functions that the dll exports. Therefore there is no need to include C++ headers from the server library engine-side, and indeed the engine need not be in C++.
6.1.2. API¶
The server library’s exported functions are described below. These global functions are declared as exports.
6.1.2.1. Structure¶
6.1.2.2. Preparation¶
In order to start a server session, it’s necessary to prepare the data - objects and resources - so it is ready to be streamed to connecting clients. On the engine side there will often be a user interface for this - see for example
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
6.1.2.3. Lifecycle¶

The lifecycle of a server session is controlled by these functions:
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenstruct: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
6.1.2.4. State Management¶
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
6.1.2.5. Axis Conversions¶
Various axis conventions are used in different applications, game engines and API’s. The reference API defines avs::AxesStandard
to represent the possible standards that can be used.

The API provides conversion functions to transform between axis systems .. doxygenfunction:: Server_ConvertTransform
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
6.1.2.6. Memory¶
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
6.1.2.7. Setting Properties¶
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
6.1.2.8. Setting Delegates¶
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
6.1.2.9. Video¶
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
6.1.2.10. Audio¶
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenfunction: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
6.1.3. Classes¶
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenstruct: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenstruct: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
Warning
doxygenclass: breathe_default_project value ‘TeleportXR’ does not seem to be a valid key for the breathe_projects dictionary
6.1.4. Networking¶
Each client connection contains a pipeline that gathers data for sending to the client, and distributes incoming data from the client. This pipeline is distributed over threads, which communicate using avs::Queue pipeline nodes.
