Unit CastleClientServer

Functions and Procedures
Constants
Variables

Description

Client and server for network communication using TCP (TCastleTCPClient, TCastleTCPServer). Use this in your games for easy client/server communication. See https://castle-engine.io/manual_network.php#section_multi_player .

On Android, it requires adding client_server service in your project. On other platforms, it requires having Indy available.

Uses

  • Classes
  • SysUtils
  • Generics.Collections
  • IdTCPServer
  • IdTCPClient
  • IdContext
  • IdSocketHandle
  • IdGlobal

Overview

Classes, Interfaces, Objects and Records

Name Description
Record TClientConnection  
Record TMessageClientRecord  
Class TThreadSynchronisationHandler Because Indys version isn't generic in FPC.
Class TCastleTCPClientThread  
Class TCastleSocket  
Class TCastleTCPServer  
Class TCastleTCPClient  

Types

TProcedureObject = procedure of object;
TConnectionEvent = procedure of object;
TClientConnectionEvent = procedure(AClientConnection: TClientConnection) of object;
TMessageRecievedEvent = procedure(const AMessage: String) of object;
TClientMessageRecievedEvent = procedure(const AMessage: String; AClientConnection: TClientConnection) of object;
TSynchronisedStringList = specialize TThreadList<String>;
TMessageClientList = specialize TThreadList<TMessageClientRecord>;
TClientContextList = specialize TThreadList<TIdContext>;

Description

Types

TProcedureObject = procedure of object;
 
TConnectionEvent = procedure of object;
 
TClientConnectionEvent = procedure(AClientConnection: TClientConnection) of object;
 
TMessageRecievedEvent = procedure(const AMessage: String) of object;
 
TClientMessageRecievedEvent = procedure(const AMessage: String; AClientConnection: TClientConnection) of object;
 
TSynchronisedStringList = specialize TThreadList<String>;
 
TMessageClientList = specialize TThreadList<TMessageClientRecord>;
 
TClientContextList = specialize TThreadList<TIdContext>;
 

Generated by PasDoc 0.16.0.