What's New in RXF V8 C++
The RXF is currently available in major version 8.
It has been based on version 7 but with a builtin base for RXF C++ Cert
in mind.
Compiler support
The product requires a C++11 Compiler. Support for CMSIS and ARM
Compiler 5 have been dropped.
MISRA
The quality of the RXF sources has been improved with respect to MISRA
compliancy. MISRA support is out of the box: no extra profile is
required anymore.
Model Checks
The RXF comes with
additional model checks. For details see
Model
Checker section in Configuration.
Ports
The code generation for ports has been rewritten.
Deployer
The Deployer is now independent of the IDE to deploy to. This allows
the product to be used with multiple IDEs. Also, the Deployer allows
selective Deployment of RXF Sources, to allow delivering multiple RTOS
adaptions of your model.
The Deployer allows you to use multiple IDE projects. Which
IDE project a model and RXF must be deployed to, is specified via a
property and is thus part of your model.
As a result, the model and IDE project can both be maintained in a
Software Configuration Management (SCM). Using relative paths to an IDE
project allows multiple people to work on the same project or model,
each in an own IDE project.

Configuration
(since Version 7)
The configuration of your model and the RXF is now conveniently
arranged in a new RXF property perspective.
Support for Pre- and Post Build processes
(since Version 7)
You can now easily configure a pre- and post build process to run on
the deployed sources.

Memory Usage
(since Version 7)
You can now easily configure the event memory pools and if you allow
dynamic memory management for events.

RXF Configuration Files
(since Version 7)
There are two configuration files generated:
- RXF_Config.h with all constants. It replaces previously
generated RxfConstants.h, RxfDimensions.h and the product specific
related WSTProduct.h See Migrate
from V7 to V8 for more details.
- RXF_Event.cpp which is not exactly a configuration file,
but the values of event pools do end up in this file. These are
configurable via the a RXF
perspective on properties.
RXF Constants
In V8, all RXF related constants are prefixed with RXF_ instead of
WST_. Furthermore, constants have been renamed. See
Migrate
from V7 to V8 for more details.
RXF Error
Handler
In V6 the error handler used the new-term stereotype RXFErrorHandler.
In V7 and V8, you can
implement your
own error handler using the package
rxfConfigurationStandardContent which results in a RXF_ErrorHandler.h
and RXF_ErrorHandler.cpp
OS Integration
(since Version 7)
The task stack used in an
active
class, is defined as an attribute of such a class,
automatically generated in the C++ code depending on a new property.
See Migrate from V7
to V8 for more details.
(since Version 7)
RTOS message queues are no longer used to send and retrieve events. We
use a FIFO event queue internally:
In the OORTX all classes share a single event queue to send and receive
events.
OXF Container Classes
The container classes use the heap now. As a consequence, the
configurable memory pools for List and Map have been removed.
(since Version 7)
As the deployer needs to deploy all selected variants from RXF sources
flat to one RXF directory, also the oxf container class folder
is deployed flat now. If include paths like
<oxf\omcollec.h>,
<oxf\omlist.h> or <oxf\ommap.h> are added
manually to the
user model, they have to be changed to <omcollec.h>,
<omlist.h> or <ommap.h>. For generated
code, this is fixed
automatically through the new Framework Profile.
Rhapsody
Integration
(since Version 7)
No WST_RXF_V8.prp file is required and included
in SiteC.prp or SiteC++.prp. Properties are now defined in the
RXF
stereotype as part of the product specific profile.