Version 1.6.1: - install to /opt/rec_rpc Version 1.6.0: - beginAddTopicGroup to add a bunch of topics quickly Version 1.5.5: Warning fix: Qt produced a warning for a QTimer created with a parent living in a different thread Version 1.5.4 Bug fixes: - When closing client socket reset the socket state - When getting wrong number of bytes while reading header close client socket Version 1.5.3 Bug fixes: - When sending fails for more than Server::sendFailSocketTimeout sockets are close. Default 1000ms. Version 1.5.2 Bug fixes: - Fixed race condition in the client: publish_topic often crashed when the connection was cut and reestablished. Version 1.5.1 Updates: - Disabled debug messages in release mode for performance reasons. Version 1.5.0 Updates: - Changed compiler options for optimization. - Add functions to test if RPC functions, response notifiers or topic listeners are registered. - (Linux DEB package) File permissions and ownerships are set correctly. THE FOLLOWING CHANGES BREAK BINARY AND API COMPATIBILITY! Projects depending on RPC must be recompiled! - Client's constructor does only expect a parent QObject. Client name and multi-threaded serialization can be changed via class function setName and setMultiThreadedSerializationEnabled. - Client's function connectToServer does only expect the timeout. Local IPC can be enabled and disabled via the class function setLocalIPCEnabled. - Turned Client's functions setAddress, setExpectedGreeting, setMsTimeout and the new functions setName, setMultiThreadedSerializationEnabled and setLocalIPCEnabled to Qt slots. - Server's constructor does only expect a parent QObject. Multi-threaded serialization can be changed via class function setMultiThreadedSerializationEnabled. - Server's listen() method does only expect one parameter "blocking" which controls wether the function does or does not block the calling thread until the server has started listening or has been closed (e.g. because the selected port is already in use). All other parameters have been removed. The values can be changed via class functions. - Server's close() method does no longer block the calling thread by default. It can be controlled by a new parameter if the method does or does not block the calling thread. The closed() signal will always be emitted even if the server was not listening. - Turned Server's function setGreeting and the new functions setMultiThreadedSerializationEnabled, setPort, setLocalIPCEnabled, setClientMsgWaitTime, setHttpKeepAliveTimeout, setHttpKeepAliveMaxRequests and setCustomTimeout to Qt slots. Bug fixes: - Fixed potential deadlock when server is closed. Version 1.4.4 Updates: - Documentation is included in the package. - (Windows) Added version information to examples. - (Linux i386) Compiled with optimization for Robotino. Version 1.4.3 Updates: - Removed useless assertions. - Replaced casts of memory addresses to int pointers by encode and decode function calls to avoid problems on architectures with memory alignment restrictions (like some ARM CPUs). Version 1.4.2 Updates: - Improved and optimized performance and reliability on high load. - Local connection detection is more reliable. Bug fixes: - Fixed a little inter-thread communication bug. Version 1.4.1 Updates: - Unique shared memory segment names do no longer depend on the server's tcp port. Version 1.4.0 Updates: - Performance optimizations, esp. in the server. Therefore breaking changes in protocol! Version 1.3.1: New features: - Enqueued topics. No data is dropped on enqueued topics. Use with care or your client/server might block if to much data is written.