C# Class GamingInterface.PlayerInputServer

Implements the connection logic for the socket server. After accepting a connection, all data read from the client is sent back to the client. The read and echo back to the client pattern is continued until the client disconnects.
显示文件 Open project: RocHCI/legion-gaming Class Usage Examples

Public Properties

Property Type Description
analogLoc int[][]
leader int
mode int
myport int
numSelects int
playerID Byte
pressed bool[]
wasPressedCM bool
wasPressedCMDOWN bool
wasPressedCMHOLE bool
wasPressedCMLEFT bool
wasPressedCMRIGHT bool
wasPressedCMUP bool
wasPressedPM bool

Public Methods

Method Description
AcceptEventArg_Completed ( object sender, SocketAsyncEventArgs e ) : void

This method is the callback method associated with Socket.AcceptAsync operations and is invoked when an accept operation is complete

IO_Completed ( object sender, SocketAsyncEventArgs e ) : void

This method is called whenever a receive or send opreation is completed on a socket

Init ( ) : void

Initializes the server by preallocating reusable buffers and context objects. These objects do not need to be preallocated or reused, by is done this way to illustrate how the API can easily be used to create reusable objects to increase server performance.

PlayerInputServer ( int numConnections, int receiveBufferSize, MainInterface myParent, int myPlayerID ) : System

Create an uninitialized server instance. To start the server listening for connection requests call the Init method followed by Start method

Start ( IPEndPoint localEndPoint ) : void

Starts the server such that it is listening for incoming connection requests.

StartAccept ( SocketAsyncEventArgs acceptEventArg ) : void

Begins an operation to accept a connection request from the client

Private Methods

Method Description
CloseClientSocket ( SocketAsyncEventArgs e ) : void
GetBits ( byte b ) : IEnumerable
ProcessAccept ( SocketAsyncEventArgs e ) : void
ProcessReceive ( SocketAsyncEventArgs e ) : void

This method is invoked when an asycnhronous receive operation completes. If the remote host closed the connection, then the socket is closed. If data was received then the data is echoed back to the client.

ProcessSend ( SocketAsyncEventArgs e ) : void

This method is invoked when an asynchronous send operation completes. The method issues another receive on the socket to read any additional data sent from the client

Method Details

AcceptEventArg_Completed() public method

This method is the callback method associated with Socket.AcceptAsync operations and is invoked when an accept operation is complete
public AcceptEventArg_Completed ( object sender, SocketAsyncEventArgs e ) : void
sender object
e System.Net.Sockets.SocketAsyncEventArgs
return void

IO_Completed() public method

This method is called whenever a receive or send opreation is completed on a socket
public IO_Completed ( object sender, SocketAsyncEventArgs e ) : void
sender object
e System.Net.Sockets.SocketAsyncEventArgs SocketAsyncEventArg associated with the completed receive operation
return void

Init() public method

Initializes the server by preallocating reusable buffers and context objects. These objects do not need to be preallocated or reused, by is done this way to illustrate how the API can easily be used to create reusable objects to increase server performance.
public Init ( ) : void
return void

PlayerInputServer() public method

Create an uninitialized server instance. To start the server listening for connection requests call the Init method followed by Start method
public PlayerInputServer ( int numConnections, int receiveBufferSize, MainInterface myParent, int myPlayerID ) : System
numConnections int the maximum number of connections the sample is designed to handle simultaneously
receiveBufferSize int buffer size to use for each socket I/O operation
myParent MainInterface
myPlayerID int
return System

Start() public method

Starts the server such that it is listening for incoming connection requests.
public Start ( IPEndPoint localEndPoint ) : void
localEndPoint System.Net.IPEndPoint The endpoint which the server will listening for conenction requests on
return void

StartAccept() public method

Begins an operation to accept a connection request from the client
public StartAccept ( SocketAsyncEventArgs acceptEventArg ) : void
acceptEventArg System.Net.Sockets.SocketAsyncEventArgs The context object to use when issuing the accept operation on the /// server's listening socket
return void

Property Details

analogLoc public_oe property

public int[][] analogLoc
return int[][]

leader public_oe property

public int leader
return int

mode public_oe property

public int mode
return int

myport public_oe property

public int myport
return int

numSelects public_oe property

public int numSelects
return int

playerID public_oe property

public Byte playerID
return Byte

pressed public_oe property

public bool[] pressed
return bool[]

wasPressedCM public_oe property

public bool wasPressedCM
return bool

wasPressedCMDOWN public_oe property

public bool wasPressedCMDOWN
return bool

wasPressedCMHOLE public_oe property

public bool wasPressedCMHOLE
return bool

wasPressedCMLEFT public_oe property

public bool wasPressedCMLEFT
return bool

wasPressedCMRIGHT public_oe property

public bool wasPressedCMRIGHT
return bool

wasPressedCMUP public_oe property

public bool wasPressedCMUP
return bool

wasPressedPM public_oe property

public bool wasPressedPM
return bool