Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'examples/org.eclipse.etrice.tutorials.c/test.txt')
-rw-r--r--examples/org.eclipse.etrice.tutorials.c/test.txt325
1 files changed, 0 insertions, 325 deletions
diff --git a/examples/org.eclipse.etrice.tutorials.c/test.txt b/examples/org.eclipse.etrice.tutorials.c/test.txt
deleted file mode 100644
index dfdd262e9..000000000
--- a/examples/org.eclipse.etrice.tutorials.c/test.txt
+++ /dev/null
@@ -1,325 +0,0 @@
-/**
- * @author generated by eTrice
- *
- * Source File of ActorClass ACParser
- *
- */
-
-#include "ACParser.h"
-
-#include "modelbase/etActor.h"
-#include "debugging/etLogger.h"
-#include "debugging/etMSCLogger.h"
-#include "etUnit/etUnit.h"
-#include "platform/etMemory.h"
-
-#include "FileReaderProtocol.h"
-
-
-/* interface item IDs */
-enum interface_items {
- IFITEM_readerPort = 1
-};
-
-
-/* state IDs */
-enum state_ids {
- NO_STATE = 0,
- STATE_TOP = 1,
- STATE_code = 2,
- STATE_firstSlash = 3,
- STATE_blockComment = 4,
- STATE_firstStar = 5,
- STATE_lineComment = 6
-};
-
-/* transition chains */
-enum chain_ids {
- CHAIN_TRANS_INITIAL_TO__code = 1,
- CHAIN_TRANS_tr0_FROM_code_TO_cp0_BY_nextCharreaderPort = 2,
- CHAIN_TRANS_tr3_FROM_firstSlash_TO_cp1_BY_nextCharreaderPort = 3,
- CHAIN_TRANS_tr6_FROM_blockComment_TO_cp2_BY_nextCharreaderPort = 4,
- CHAIN_TRANS_tr9_FROM_firstStar_TO_cp3_BY_nextCharreaderPort = 5,
- CHAIN_TRANS_tr15_FROM_lineComment_TO_cp5_BY_nextCharreaderPort = 6
-};
-
-/* triggers */
-enum triggers {
- POLLING = 0,
- TRIG_readerPort__nextChar = IFITEM_readerPort + EVT_SHIFT*FileReaderProtocol_OUT_nextChar
-};
-
-
-static void setState(ACParser* self, int new_state) {
- self->state = new_state;
-}
-
-/* Entry and Exit Codes */
-
-/* Action Codes */
-static void action_TRANS_INITIAL_TO__code(ACParser* self) {
- FileReaderProtocolConjPort_getNextChar(&self->constData->readerPort) /* ORIG: readerPort.getNextChar() */;
-}
-static void action_TRANS_tr0_FROM_code_TO_cp0_BY_nextCharreaderPort(ACParser* self, InterfaceItemBase ifitem, char c) {
- FileReaderProtocolConjPort_getNextChar(&self->constData->readerPort) /* ORIG: readerPort.getNextChar() */;
-}
-static void action_TRANS_tr1_FROM_cp0_TO_code(ACParser* self, InterfaceItemBase ifitem, char c) {
- printf("%c",c);
-}
-static void action_TRANS_tr3_FROM_firstSlash_TO_cp1_BY_nextCharreaderPort(ACParser* self, InterfaceItemBase ifitem, char c) {
- FileReaderProtocolConjPort_getNextChar(&self->constData->readerPort) /* ORIG: readerPort.getNextChar() */;
-}
-static void action_TRANS_tr6_FROM_blockComment_TO_cp2_BY_nextCharreaderPort(ACParser* self, InterfaceItemBase ifitem, char c) {
- FileReaderProtocolConjPort_getNextChar(&self->constData->readerPort) /* ORIG: readerPort.getNextChar() */;
-}
-static void action_TRANS_tr9_FROM_firstStar_TO_cp3_BY_nextCharreaderPort(ACParser* self, InterfaceItemBase ifitem, char c) {
- FileReaderProtocolConjPort_getNextChar(&self->constData->readerPort) /* ORIG: readerPort.getNextChar() */;
-}
-static void action_TRANS_tr12_FROM_cp4_TO_code(ACParser* self, InterfaceItemBase ifitem, char c) {
- printf("%c%c",'/',c);
-}
-static void action_TRANS_tr15_FROM_lineComment_TO_cp5_BY_nextCharreaderPort(ACParser* self, InterfaceItemBase ifitem, char c) {
- FileReaderProtocolConjPort_getNextChar(&self->constData->readerPort) /* ORIG: readerPort.getNextChar() */;
-}
-
-/**
- * calls exit codes while exiting from the current state to one of its
- * parent states while remembering the history
- * @param current - the current state
- * @param to - the final parent state
- * @param handler - entry and exit codes are called only if not handler (for handler TransitionPoints)
- */
-static void exitTo(ACParser* self, int current, int to, boolean handler) {
- while (current!=to) {
- switch (current) {
- case STATE_code:
- self->history[STATE_TOP] = STATE_code;
- current = STATE_TOP;
- break;
- case STATE_firstSlash:
- self->history[STATE_TOP] = STATE_firstSlash;
- current = STATE_TOP;
- break;
- case STATE_blockComment:
- self->history[STATE_TOP] = STATE_blockComment;
- current = STATE_TOP;
- break;
- case STATE_firstStar:
- self->history[STATE_TOP] = STATE_firstStar;
- current = STATE_TOP;
- break;
- case STATE_lineComment:
- self->history[STATE_TOP] = STATE_lineComment;
- current = STATE_TOP;
- break;
- }
- }
-}
-
-/**
- * calls action, entry and exit codes along a transition chain. The generic data are cast to typed data
- * matching the trigger of this chain. The ID of the final state is returned
- * @param chain - the chain ID
- * @param generic_data - the generic data pointer
- * @return the ID of the final state
- */
-static int executeTransitionChain(ACParser* self, int chain, InterfaceItemBase ifitem, void* generic_data) {
- switch (chain) {
- case CHAIN_TRANS_INITIAL_TO__code:
- {
- action_TRANS_INITIAL_TO__code(self);
- return STATE_code;
- }
- case CHAIN_TRANS_tr0_FROM_code_TO_cp0_BY_nextCharreaderPort:
- {
- char c = *((char*) generic_data);
- action_TRANS_tr0_FROM_code_TO_cp0_BY_nextCharreaderPort(self, ifitem, c);
- if (c=='/') {
- return STATE_firstSlash;}
- else {
- action_TRANS_tr1_FROM_cp0_TO_code(self, ifitem, c);
- return STATE_code;}
- }
- case CHAIN_TRANS_tr3_FROM_firstSlash_TO_cp1_BY_nextCharreaderPort:
- {
- char c = *((char*) generic_data);
- action_TRANS_tr3_FROM_firstSlash_TO_cp1_BY_nextCharreaderPort(self, ifitem, c);
- if (c=='*') {
- return STATE_blockComment;}
- else {
- if (c=='/') {
- return STATE_lineComment;}
- else {
- action_TRANS_tr12_FROM_cp4_TO_code(self, ifitem, c);
- return STATE_code;}
- }
- }
- case CHAIN_TRANS_tr6_FROM_blockComment_TO_cp2_BY_nextCharreaderPort:
- {
- char c = *((char*) generic_data);
- action_TRANS_tr6_FROM_blockComment_TO_cp2_BY_nextCharreaderPort(self, ifitem, c);
- if (c=='*') {
- return STATE_firstStar;}
- else {
- return STATE_blockComment;}
- }
- case CHAIN_TRANS_tr9_FROM_firstStar_TO_cp3_BY_nextCharreaderPort:
- {
- char c = *((char*) generic_data);
- action_TRANS_tr9_FROM_firstStar_TO_cp3_BY_nextCharreaderPort(self, ifitem, c);
- if (c=='/') {
- return STATE_code;}
- else {
- return STATE_blockComment;}
- }
- case CHAIN_TRANS_tr15_FROM_lineComment_TO_cp5_BY_nextCharreaderPort:
- {
- char c = *((char*) generic_data);
- action_TRANS_tr15_FROM_lineComment_TO_cp5_BY_nextCharreaderPort(self, ifitem, c);
- if (c=='\n') {
- return STATE_code;}
- else {
- return STATE_lineComment;}
- }
- }
- return NO_STATE;
-}
-
-/**
- * calls entry codes while entering a state's history. The ID of the final leaf state is returned
- * @param state - the state which is entered
- * @param handler - entry code is executed if not handler
- * @return - the ID of the final leaf state
- */
-static int enterHistory(ACParser* self, int state, boolean handler, boolean skip_entry) {
- while (TRUE) {
- switch (state) {
- case STATE_code:
- // in leaf state: return state id
- return STATE_code;
- case STATE_firstSlash:
- // in leaf state: return state id
- return STATE_firstSlash;
- case STATE_blockComment:
- // in leaf state: return state id
- return STATE_blockComment;
- case STATE_firstStar:
- // in leaf state: return state id
- return STATE_firstStar;
- case STATE_lineComment:
- // in leaf state: return state id
- return STATE_lineComment;
- case STATE_TOP:
- state = self->history[STATE_TOP];
- break;
- }
- skip_entry = FALSE;
- }
- //return NO_STATE; // required by CDT but detected as unreachable by JDT because of while (true)
-}
-
-static void executeInitTransition(ACParser* self) {
- int chain = CHAIN_TRANS_INITIAL_TO__code;
- int next = executeTransitionChain(self, chain, NULL, NULL);
- next = enterHistory(self, next, FALSE, FALSE);
- setState(self, next);
-}
-
-/* receiveEvent contains the main implementation of the FSM */
-static void receiveEvent(ACParser* self, InterfaceItemBase ifitem, int evt, void* generic_data) {
- int trigger = ifitem->localId + EVT_SHIFT*evt;
- int chain = NOT_CAUGHT;
- int catching_state = NO_STATE;
- boolean is_handler = FALSE;
- boolean skip_entry = FALSE;
-
- if (!handleSystemEvent(ifitem, evt, generic_data)) {
- switch (self->state) {
- case STATE_code:
- switch(trigger) {
- case TRIG_readerPort__nextChar:
- {
- chain = CHAIN_TRANS_tr0_FROM_code_TO_cp0_BY_nextCharreaderPort;
- catching_state = STATE_TOP;
- }
- break;
- }
- break;
- case STATE_firstSlash:
- switch(trigger) {
- case TRIG_readerPort__nextChar:
- {
- chain = CHAIN_TRANS_tr3_FROM_firstSlash_TO_cp1_BY_nextCharreaderPort;
- catching_state = STATE_TOP;
- }
- break;
- }
- break;
- case STATE_blockComment:
- switch(trigger) {
- case TRIG_readerPort__nextChar:
- {
- chain = CHAIN_TRANS_tr6_FROM_blockComment_TO_cp2_BY_nextCharreaderPort;
- catching_state = STATE_TOP;
- }
- break;
- }
- break;
- case STATE_firstStar:
- switch(trigger) {
- case TRIG_readerPort__nextChar:
- {
- chain = CHAIN_TRANS_tr9_FROM_firstStar_TO_cp3_BY_nextCharreaderPort;
- catching_state = STATE_TOP;
- }
- break;
- }
- break;
- case STATE_lineComment:
- switch(trigger) {
- case TRIG_readerPort__nextChar:
- {
- chain = CHAIN_TRANS_tr15_FROM_lineComment_TO_cp5_BY_nextCharreaderPort;
- catching_state = STATE_TOP;
- }
- break;
- }
- break;
- }
- }
- if (chain != NOT_CAUGHT) {
- exitTo(self, self->state, catching_state, is_handler);
- int next = executeTransitionChain(self, chain, ifitem, generic_data);
- next = enterHistory(self, next, is_handler, skip_entry);
- setState(self, next);
- }
-}
-
-//******************************************
-// END of generated code for FSM
-//******************************************
-
-void ACParser_init(ACParser* self){
- ET_MSC_LOGGER_SYNC_ENTRY("ACParser", "init")
- self->state = STATE_TOP;
- {
- int i;
- for (i=0; i<ACPARSER_HISTORY_SIZE; ++i)
- self->history[i] = NO_STATE;
- }
- executeInitTransition(self);
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-
-void ACParser_receiveMessage(void* self, void* ifitem, const etMessage* msg){
- ET_MSC_LOGGER_SYNC_ENTRY("ACParser", "_receiveMessage")
-
- receiveEvent(self, (etPort*)ifitem, msg->evtID, (void*)(((char*)msg)+MEM_CEIL(sizeof(etMessage))));
-
- ET_MSC_LOGGER_SYNC_EXIT
-}
-
-
-/*--------------------- operations ---------------------*/
-

Back to the top