stage4/generate_c/generate_c_sfcdecl.cc
changeset 125 7ec16536bc87
parent 120 74640e3c7f53
child 141 d2dc99c319b6
equal deleted inserted replaced
124:4debc565109d 125:7ec16536bc87
   101           /* transitions table declaration */
   101           /* transitions table declaration */
   102           s4o.print(s4o.indent_spaces + "BOOL transition_list[");
   102           s4o.print(s4o.indent_spaces + "BOOL transition_list[");
   103           s4o.print_integer(transition_number);
   103           s4o.print_integer(transition_number);
   104           s4o.print("];\n");
   104           s4o.print("];\n");
   105           
   105           
   106           /* period declaration */
   106           /* last_ticktime declaration */
   107           s4o.print(s4o.indent_spaces + "TIME period;\n");
   107           s4o.print(s4o.indent_spaces + "TIME lasttick_time;\n");
   108           break;
   108           break;
   109         case sfcinit_sd:
   109         case sfcinit_sd:
   110           s4o.print(s4o.indent_spaces);
   110           s4o.print(s4o.indent_spaces);
   111           s4o.print("UINT i;\n");
   111           s4o.print("UINT i;\n");
   112           
   112           
   155           s4o.print("nb_actions; i++) {\n");
   155           s4o.print("nb_actions; i++) {\n");
   156           s4o.indent_right();
   156           s4o.indent_right();
   157           s4o.print(s4o.indent_spaces);
   157           s4o.print(s4o.indent_spaces);
   158           print_variable_prefix();
   158           print_variable_prefix();
   159           s4o.print("action_list[i] = temp_action;\n");
   159           s4o.print("action_list[i] = temp_action;\n");
   160           
       
   161           /* period initialisation */
       
   162           s4o.print(s4o.indent_spaces);
       
   163           print_variable_prefix();
       
   164           s4o.print("period = __time_to_timespec(1, common_ticktime__, 0, 0, 0, 0);\n");
       
   165           
       
   166           s4o.indent_left();
   160           s4o.indent_left();
   167           s4o.print(s4o.indent_spaces + "}\n");
   161           s4o.print(s4o.indent_spaces + "}\n");
       
   162           
       
   163           /* last_ticktime initialisation */
       
   164           print_variable_prefix();
       
   165           s4o.print("lasttick_time = __CURRENT_TIME;\n");
   168           break;
   166           break;
   169         case stepdef_sd:
   167         case stepdef_sd:
   170           s4o.print("// Steps definitions\n");
   168           s4o.print("// Steps definitions\n");
   171           for(int i = 0; i < symbol->n; i++)
   169           for(int i = 0; i < symbol->n; i++)
   172             symbol->elements[i]->accept(*this);
   170             symbol->elements[i]->accept(*this);