|
For a detailed introductino to the Statechart editor refer to sce-tutorial.
If you created a Statechart before the Statechart Editor Code Generator (ScECG) was introduced, you need to apply some changes to your Statechart. By hand. Sorry.
set(HEADERS MyGroupRemoteStateOfferer.h ./MyState.h #@TEMPLATE_LINE@@COMPONENT_PATH@/@COMPONENT_NAME@.h ./MyState.generated.h # <-- add this for each state #@TEMPLATE_LINE@@COMPONENT_PATH@/@COMPONENT_NAME@.generated.h # <- add this once )
///////// LOCATE: #include <ArmarXCore/statechart/xmlstates/XMLState.h> ///////// REPLACE BY: #include "[StateName].generated.h"
namespace armarx { namespace MyGroup { ///////// LOCATE: class MyState : virtual public XMLStateTemplate < MyState > , public XMLStateFactoryBase { ///////// REPLACE BY: class MyState : public [StateName]GeneratedBase<[StateName]> {
/// REMOVE: static std::string GetName();
///////// LOCATE: MyState::MyState(XMLStateConstructorParams stateData) : XMLStateTemplate<MyState>(stateData) { ///////// REPLACE BY: [StateName]::[StateName](XMLStateConstructorParams stateData) : XMLStateTemplate<[StateName]>(stateData), [StateName]GeneratedBase<[StateName]>(stateData) {
# remove this from every [StateName].cpp // DO NOT EDIT NEXT FUNCTION std::string MyState::GetName() { return "MyState"; }