3rd Eye Scene C#
3rd Eye Scene C# documentation
|
Implements a 3rd Eye Scene server over TCP/IP. More...
Public Member Functions | |
TcpServer (ServerSettings settings) | |
Create a new TcpServer with the given settings . | |
TcpServer (ServerSettings settings, ServerInfoMessage serverInfo) | |
Create a new TcpServer with the given settings and serverInfo . | |
int | Send (PacketBuffer packet) |
Send a packet to all clients. | |
int | Create (Shape shape) |
Send a shape create message to connected clients. | |
int | Destroy (Shape shape) |
Send a shape destroy message to connected clients. | |
int | Update (Shape shape) |
Send a shape update message to connected clients. | |
int | UpdateTransfers (int byteLimit) |
Update pending resource transfers on all clients. | |
int | UpdateFrame (float dt, bool flush=true) |
Send a frame update message to each client. | |
IConnection | Connection (int index) |
Request direct access to one of the connections. | |
void | UpdateConnections (IList< IConnection > connections, NewConnectionCallback callback=null) |
Update the list of current connections. | |
Properties | |
ServerSettings | Settings [get, set] |
The settings for this server. | |
IConnectionMonitor | ConnectionMonitor [get, set] |
The connection monitor used to manage connections. | |
ServerInfoMessage | ServerInfo [get, set] |
The server info message sent to each new connection identifying this server's world configuration. | |
int | ConnectionCount [get] |
The number of current connections. | |
IEnumerable< IConnection > | Connections [get] |
Enumerates the current connections. |
Implements a 3rd Eye Scene server over TCP/IP.
Tes::Server::TcpServer::TcpServer | ( | ServerSettings | settings | ) | [inline] |
Create a new TcpServer with the given settings .
settings | The settings to instantiate with. |
Tes::Server::TcpServer::TcpServer | ( | ServerSettings | settings, |
ServerInfoMessage | serverInfo | ||
) | [inline] |
Create a new TcpServer with the given settings and serverInfo .
settings | The settings to instantiate with. |
serverInfo | The ServerInfoMessage sent to new clients. |
IConnection Tes::Server::TcpServer::Connection | ( | int | index | ) | [inline] |
Request direct access to one of the connections.
index | The connection index [0, ConnectionCount) |
Implements Tes::Server::IServer.
int Tes::Server::TcpServer::Create | ( | Shape | shape | ) | [inline] |
Send a shape create message to connected clients.
shape | The shape to create. |
Implements Tes::Server::IServer.
int Tes::Server::TcpServer::Destroy | ( | Shape | shape | ) | [inline] |
Send a shape destroy message to connected clients.
shape | The shape to destroy. |
Implements Tes::Server::IServer.
int Tes::Server::TcpServer::Send | ( | PacketBuffer | packet | ) | [inline] |
Send a packet to all clients.
packet | The packet to send. |
The packet must be finalised before this call.
Implements Tes::Server::IServer.
int Tes::Server::TcpServer::Update | ( | Shape | shape | ) | [inline] |
Send a shape update message to connected clients.
shape | The shape to update. |
Implements Tes::Server::IServer.
void Tes::Server::TcpServer::UpdateConnections | ( | IList< IConnection > | connections, |
NewConnectionCallback | callback = null |
||
) | [inline] |
Update the list of current connections.
connections | The list of active connections. |
callback | A callback to invoke for each new connection in connections . May be null |
The internal connections list is updated to match connections .
This method is called by the ConnectionMonitor and should not be called directly.
Implements Tes::Server::IServer.
int Tes::Server::TcpServer::UpdateFrame | ( | float | dt, |
bool | flush = true |
||
) | [inline] |
Send a frame update message to each client.
dt | The time elapsed for this frame (seconds). |
flush | Flush transient shapes this frame? |
Implements Tes::Server::IServer.
int Tes::Server::TcpServer::UpdateTransfers | ( | int | byteLimit | ) | [inline] |
Update pending resource transfers on all clients.
byteLimit | Limits the number of byte to send per client. Zero for no limit. |
Implements Tes::Server::IServer.