#ifndef RTSC_H #define RTSC_H #include #define RTSC_CLASS_RealtimeStatechart "de.uni_paderborn.fujaba.umlrt.realtimestatechart.UMLRealtimeStatechart" #define RTSC_CLASS_RealtimeStartState "de.uni_paderborn.fujaba.umlrt.realtimestatechart.UMLRealtimeStartState" #define RTSC_CLASS_RealtimeStopState "de.uni_paderborn.fujaba.umlrt.realtimestatechart.UMLRealtimeStopState" #define RTSC_CLASS_RealtimeState "de.uni_paderborn.fujaba.umlrt.realtimestatechart.UMLComplexRealtimeState" #define RTSC_CLASS_RealtimeTransition "de.uni_paderborn.fujaba.umlrt.realtimestatechart.UMLRealtimeTransition" #define RTSC_NAME_RealtimeStatechart "de.uni_paderborn.fujaba.umlrt.realtimestatechart.UMLRealtimeStatechart::uMLRealtimeStartState" #define RTSC_NAME_RealtimeState "de.uni_paderborn.fujaba.umlrt.realtimestatechart.UMLRealtimeStatechart::uMLRealtimeState" #define RTSC_NAME_RealtimeTransition "de.uni_paderborn.fujaba.umlrt.realtimestatechart.UMLRealtimeStatechart::uMLRealtimeTransition" #define RTSC_TAG_Object "object" #define RTSC_TAG_Class "class" #define RTSC_TAG_Attribute "attribute" #define RTSC_TAG_Value "value" #define RTSC_TAG_Reference "reference" #ifndef bool typedef enum { false = 0, true = 1 } bool; #endif typedef enum { START, STOP, NORMAL } StateType; typedef struct { char *name; bool is_top_statechart; /* GList *start_state_node; */ GList *state_list; GList *transition_list; } RealtimeStatechart; typedef struct { char *name; RealtimeStatechart *statechart; StateType type; GList *transition_list; } RealtimeState; typedef struct { char *name; RealtimeStatechart *statechart; RealtimeState *from; RealtimeState *to; } RealtimeTransition; #endif