Feature: Added Endian Compensation for compatibility on both Big-Endian and Little-Endian hosts.
Feature: Adding large message “burst send” mode and other code optimizations for improving the handling of large messages.
Configuration value added: LargeMessageBurstLength
Feature: Current State Name Strings
Calling getQualifedName() on the current state will return a string representation of the precise current state of a component.
Example: baseCmpt.getCurrentState()->getQualifiedName() returns “Transport.ReceivingState:AccessControl.NotControlled”
Feature: JAUS Ack/Nak bits are now supported by default in the SDK.
Configuration value added: AckNakTimeout
Added support for a callback that will execute when AckNak Events occur (ACK received, NAK received, message resend, message resend max).
Feature: Added getCurrentStatus() and getCurrentStatusToString() to Management to easily get current Status (INIT, STANDBY, etc).
Feature: Support for compiling using Visual Studio 2015
Feature: Added check for firewall in Windows. Application displays warning if the firewall is enabled as the Windows firewall has been shown to cause issues with JAUS traffic in the past.
Feature: Added config file option “SupressExceptionsFile” which controls the generation and output of the exception.out file at runtime. Default value is false (previous behavior).
Feature: Updated system::StreamSocket to allow non-blocking calls to ConnectTo
Feature: Added bool& parameter to all getComponent/Node/Subsystem methods in the SystemTree class which will success / failure.
Feature: Added better ResponseCode and ErrorString to the EventRequestResponse class for better feedback in EventCallback functions.
Feature: Added implementation for (deprecated) SetAuthority message
Configuration value added: EnableSetAuthority [Default: false]
Feature: Configuration file is now tracked and only changed on disk when new configuration parameters are needed because of change in a configuration value. This reduces risk of the file being corrupted at runtime.
Feature: Added #define for PV_ALL_OFF for all relevant Presence Vectors
Deprecated: Removed access to name variable in Component inherited classes to prevent setting Component name directly.
Component constructors now take a string for their name at construction, rather than calling setName(). Old constructors and setName() have been marked deprecated.
Examples: Added Velocity State Driver example applications (server & client)
Examples: Added Local Pose Sensor example applications (server & client)
Examples: Added Velocity State Sensor example applications (server & client)
Bug Fix: Updated transport interfaces to check that messages are intended for this interface/component before they are passed up to the application layer.
Bug Fix: Removed sendRejectControlReleased exit action which caused a RejectControl message to be redundantly sent.
Bug Fix: AccessControl will now send RejectControl(CONTROL_RELEASED) when RequestControl is received with isDefaultAuthorityGreater && isControllingClient.
Bug Fix: Added code to check for and reject PERIODIC_EVENTS if the requested rate is greater than the published maxRate value.
Note: This is a change from the previous behavior where the event would be successfully created at the lower (maxRate) value.
OJSS: Added feature to allow manual overriding of PV size in Records and Triggers. (PvOverride property)
OJSS: Updated model to allow variants with zero elements (per JSIDL standard).