Com++ is a system programming and network (socket) programming library written in C++.
What it offers:
1. Com++ is entirely written in C++ and offers access to the operating systems facilities in an object oriented manner.
2. Easy to use. All hairy stuff is dealt with by the library. Classes for TCP/IP,UDP,Unix Domain, Semaphore, Mutex, Message Queues, and some more facilitate inter process communication.
3. Client server programming in Com++ is done by deriving from a Server class ( compp::SSrv ) and using the appropriate client class ( SClnt ) to connect to the server. Com++ deals with the hairy details of communication and provides you with a safe API. Network traffic can be sent cyphered or uncyphered.
4. Socket Programming. Comm++ offers TCP-, UDP ( unicat, multicast and broadcast ) and Unix Domain Socket programming. These lower layer functionality allows you to use the operating systems network facility but still have an Object oriented API. GNU/Linux Plattforms and on Un*x systems Linux has poven to be a stable platform in IT so far. We believe in continuing growth of GNU/Linux. Com++ runs also on other distributions.
5. Multithreading Our approach is similar to the one used in Java: Deriving from a compp::Thread - class implementing a run() method and starting the thread. A very simple and effective way.
6. IPC: Semaphores, Mutexes and Message Queues and Traditional Unix System V IPC methods are covered as well. All the Unix functionality.
8. Toolbox Timestamps ( Microsec granularity. The effective granularity depends on the OS ), File I/O and system call wrappers and more. Recently added: A Signalling Template class to simplify your inter - thread communicatioin.
9. Namespaces Name clashes are hard to detect and can delay your project. Com++ classes and symbols are kept in two namespaces syspp and compp.
10. High Performance Com++ is lean and performance oriented and therefor is the ideal choice for your project - especially in Embedded Projects.