Profiles
Your product comes with the following profiles:
- <your product>.sbs in the directory <your Rhapsody>\Share\WST_RXF_V5\<your product>\Config\Profiles\<your product>_Profile_rpy
- WSTprofile.sbs in the directory <your Rhapsody>\Share\WST_RXF_V5\<your product>\Config\Profiles\<your product>_Profile_rpy
<Your product>.sbs
A profile which:
- sets the Environment: name of composer plus version number
- defines the stereotype RXFComponent.
The stereotype RXFComponent should be selected for all components generating code for the Realtime eXecution Framework. Its tags are used by the Deployer.
- defines the stereotype StaticComponent
Stereotypes
The stereotype RXFComponent is used by the Deployer: its tags will inform the Deployer what files must be copied and which workspace or project file must be updated. The stereotype RXFComponent is part of the profile <your product>.sbs which is part of your product release.
The stereotype RXFComponent effects the following properties:
- CG::Configuration::GenerateForwardDeclarations is enabled for the IAR compiler
- sets the property CG::Framework::Headerfile to WST.h
This include file includes the generated include files RxfConstants.h, RxfDimensions.h and all RXF include files in the proper order. The include files by Willert Software Tools have the same name as those which come with a Rhapsody release by IBM Rational. However, the fiels by Willert are restructured and support Memory Section Management so these are quite different. To distuingish their contents, these include files test for the constant WST_H which is set in all RXF C sources.
- sets the following properties to define section macros used in Memory Section Management:
-
- C_CG::Class::ImplementationEpilog
- C_CG::Class::ImplementationProlog
- C_CGG::Class::SpecifictationEpilog
- C_CGG::Class::SpecifitationProlog
- C_CG::Configuration::ImplementationEpilog
- C_CG::Configuration::ImplementationProlog
- C_CG::Configuration::SpecificationEpilog
- C_CG::Configuration::SpecifictationProlog
- C_CG::File::ImplementationEpilog
- C_CG::File::ImplementationProlog
- C_CG::File::SpecificationEpilog
- C_CG::File::SpecifictationProlog
- C_CG::Package::ImplementationEpilog
- C_CG::Package::ImplementationProlog
- C_CG::Package::SpecificationEpilog
- C_CG::Package::SpecifictationProlog
- sets the following properties to include a file using quotes instead of angular brackets, to enable a -I <include path> in your IDE:
-
- CG::Framework::ActiveIncludeFiles
- CG::Framework::DefaultReactivePortIncludeFiles
- CG::Framework::EventIncludeFiles
- CG::Framework::ProtectedIncludeFiles
- CG::Framework::ReactiveIncludeFiles
- CG::Framework::StaticMemoryIncludeFiles
- CG::RiCContainers::BoundedOrdered::IncludeFiles
- CG::RiCContainers::BoundedUnordered::IncludeFiles
- CG::RiCContainers::Fixed::IncludeFiles
- CG::RiCContainers::Qualified::IncludeFiles
- CG::RiCContainers::UnboundedOrdered::IncludeFiles
- CG::RiCContainers::UnboundedUnordered::IncludeFiles
The stereotype RXFComponent defines the following tags for non-demo versions of our products only:
- relativeGeneratedFilePath. This tag specifies,where the Rhapsody generated files from the UML model for the active component should be deployed to.
- relativeRxfPath. This tag specifies where the Realtime eXecution Framework files should be deployed to
- rootDescription. This tag should contain a short text to inform developers working on the model, to what kind of build environment the model should be deployed. It can also include a non machine dependent hint, where the IDE project's root directory is found. It is displayed in the WSTDeployer GUI.
- rootTitle. This tag should contain a short title for the IDE project's machine specific root path. It is displayed in the WSTDeployer GUI.
- toolchainProjectFile. This tag specifies the filename of the IDE's project or workspace file, if the IDE integration supports to modify the project.
The stereotype StaticComponent can be used to set the following properties so you are using static memory:
- C_CG::Class::AllocateMemory to RiCOSMemoryAllocation_malloc(), thus overriding its default value malloc().
- C_CG::Class::EnableDynamicAllocation is disabled.
- C_CG::Class::FreeMemory to RiCOSMemoryAllocation_free(), thus overriding its default value free()
- CG::Configuration::InitializeEmbeddableObjectsByValue is enabled.
- C_CG::Configuration::WSTAdditionalDefines to -DNO_MALLOC to prevent use of the native malloc() and free()
- C_CG::Event::AllocateMemory to RiCOSMemoryAllocation_malloc(), thus overriding its default value malloc()
- C_CG::Event::FreeMemory to RiCOSMemoryAllocation_free(), thus overriding its default value free()
WSTprofile.sbs
An optional profile which sets several properties recommended by Willert Software Tools:
- It can be loaded in addition to <your product>.sbs, by selecting "Add to Model" from the Rhapsody "File" menu, switching the file filter to "*.sbs" and browsing for the profile. It is rocommended to add it as a reference.
- It will modify graphical settings:
-
- it sets the property General::Graphics::ShowDiagramFrame to True
(show a line border around diagrams)
- it sets the property ObjectModelGe::Association::ShowStereotype to Label
(display stereotype names in diagrams)
- it sets the property ObjectModelGe::Association::ShowTargetRole to True
(shows the target end name alongside association connectors, e.g. itsClass1)
- it sets the property ObjectModelGe::Class::ShowName to Name_only
(show only the object name without any path information as name of an object)
- it sets the property ObjectModelGe::Depends::line_style to rectlinear_arrows
(use rectlinear arrows for dependencies)
- it sets the property Statechart::DefaultTransition::line_style to rectlinear_arrows
(use rectlinear arrows for state chart default transisions)
- it sets the property Statechart::Transition::line_style to rectlinear_arrows
(use rectlinear arrows for state chart transisions)
- It will disable Rhapsody to create source artifacts inside your model by setting the property C_Roundtrip:General:RoundtripScheme to Advanced
Copyright (c) Willert Software Tools GmbH. All rights reserved.