The argument scanner (the module smart/util/argscan) introduced a namespace named ArgScan in the global scope to support the exetension of user defined converters/setters.
We had to change the name of the namespace to fix a conflict situation with the local namespace smart::util::ArgScan.
So, to keep your code running, put all your set() functions in the ArgScanExt namespace instead of the ArgScan namespace.
We have several classes in Libsmart where we use the same typedefs and constants for timeout_t. timeout_t, Infinite and DontWait are placed in the smart namespace and are declared in the header file smart/types.hpp. To avoid breaking older code, the various class local declarations were not removed, but are derived from the ones in the namespace smart.
The header file smart/sys/timer.hpp has been extended to include all time-related support, so we renamed it.
Change your include lines from:
#include <smart/sys/timer.hpp>
to
#include <smart/sys/time.hpp>
Serial IO support class should preserve port settings.
Serial class should restore port settings & timeout values in destructor.
According to Libsmart conventions paper struct SerialSettings moved to struct SerialParam .
The old names are deprecated and no longer supported!
In net/socket.hpp and net/socket.cpp we changed the names SocketListeningParams to SocketListeningParam and ReceiveParams to ReceiveParam to be compliant with our upcoming Libsmart conventions paper.
The old names are deprecated but supported until further notice.
Thanks to Martin for pointing this out.
Up to version 1110 of libsmart it was required to instantiate one SocketSubsystem instance in the smart::net namespace for Win32 platforms. This is not anymore required and the SocketSubsystem class has been removed.
Internally, libsmart sockets uses a singleton_ref to the Subsystem to be sure that the Socket Subsystem is only instantiated when it is needed.
The smart::net::resolver module uses this reference, too.
So, if you are using libsmart and your older code breaks complaining that SocketSubsystem is not available, just remove your SocketSubsystem instance.
For simplification we removed the wait.hpp from smart/sys. The sleep() function can now be found in timer.hpp in the class Timeout.
#include
using smart::sys::Wait;Wait::sleep(100);
changes to
#include
using smart::sys::Timeout;Timeout::sleep(100);
We have compiled a roadmap showing what we need to do prior to the 1.0 release of Libsmart. Here you will find all the modules and technologies we are currently working at to complete Libsmart.
Update: 20041105 We are not offering any downloads yet, please stay tuned, registered users will get a notification by Email when the first GPL version is available for download.
Update: 20041023 The smart::net namespace reference documentation is now complete and we continue to update and review smart::sys. Please consult the reference documentation for updates. Because of some projects we are working at, the progress is much slower than we expected. Many thanks must go to our early customers for giving us so much feedback.