PLM Software Multimedia Tools and Games

PLMNet

PLMNet Library version 0.19

Description

PLMNet is a simple network library, written in C++.

It provides a set of basic classes to initialise the low-level network layer and to create and bind sockets using TCP or UDP protocols.
Here is a short description of the main classes:

  • PLMNet : initialise the network layer and give functions to get hostname and convert adresses (ip - hostname).
  • PLMSocket : the base class for TCP and UDP sockets.
  • PLMTCPSocketClient/Server : sockets to handle a TCP connexion (client and server sides).
  • PLMUDPSocket : a socket to handle UPD datagrams.
  • PLMSocketSet : a class to monitor sockets (of any type) to detect incoming data.
  • PLMPacket : a class to create data packet of user specific types, it provides functions to easily read and write integers (of any size 8, 16 and 32 bits) and strings with automatic network/host binary format conversions.

Note: The following classes are not maintained any more, this part of the library is in fact currently under re-design. So some classes may even not work (compile) any more.

A higher level layer allows to create and manage network sessions with a client / server model. A session can accept new users and groups of users (called teams), and reject them when the maximum number is reached. It is also possible to send packets to all users, to one specific user, or to all the users of a team. The session provides an event queue that receives new events when messages are sent and received, when a user is added, or when he leaves the session. These classes use the UDP protocol.

  • PLMNetPlayer : a user of the session, used to store all the information for a connexion.
  • PLMUDPServer : the server side of the session system, it can create and modify the session.
  • PLMUDPClient : the client side of the session, it can search for existing sessions on the local network and ask to join one.
  • PLMEvQueue : the event queue.
 Download

OSI certifiedOpen Source

Note that the following packages are released under the GNU LGPL license (Lesser General Public License).

Package Size Date Notes
Sources 49.5 k 15 Oct 2004 TGZ, Linux/Windows sources (no doc)
Windows binary 168.3 k 15 Oct 2004 ZIP, Headers and library (no doc)
Documentation 197.2 k 15 Oct 2004 ZIP, HTML docs (doxygen)

Copyright 2001-2004 PLMSoft All rights reserved. (last mod.: 15 Oct 2004)