32 /***********************************************************************/ |
32 /***********************************************************************/ |
33 /***********************************************************************/ |
33 /***********************************************************************/ |
34 /***********************************************************************/ |
34 /***********************************************************************/ |
35 /***********************************************************************/ |
35 /***********************************************************************/ |
36 |
36 |
37 class generate_c_sfc_elements_c: public generate_c_base_c { |
37 class generate_c_sfc_elements_c: public generate_c_base_and_typeid_c { |
38 |
38 |
39 public: |
39 public: |
40 typedef enum { |
40 typedef enum { |
41 transitionlist_sg, |
41 transitionlist_sg, |
42 transitiontest_sg, |
42 transitiontest_sg, |
61 |
61 |
62 sfcgeneration_t wanted_sfcgeneration; |
62 sfcgeneration_t wanted_sfcgeneration; |
63 |
63 |
64 public: |
64 public: |
65 generate_c_sfc_elements_c(stage4out_c *s4o_ptr, symbol_c *name, symbol_c *scope, const char *variable_prefix = NULL) |
65 generate_c_sfc_elements_c(stage4out_c *s4o_ptr, symbol_c *name, symbol_c *scope, const char *variable_prefix = NULL) |
66 : generate_c_base_c(s4o_ptr) { |
66 : generate_c_base_and_typeid_c(s4o_ptr) { |
67 generate_c_il = new generate_c_il_c(s4o_ptr, name, scope, variable_prefix); |
67 generate_c_il = new generate_c_il_c(s4o_ptr, name, scope, variable_prefix); |
68 generate_c_st = new generate_c_st_c(s4o_ptr, name, scope, variable_prefix); |
68 generate_c_st = new generate_c_st_c(s4o_ptr, name, scope, variable_prefix); |
69 generate_c_code = new generate_c_SFC_IL_ST_c(s4o_ptr, name, scope, variable_prefix); |
69 generate_c_code = new generate_c_SFC_IL_ST_c(s4o_ptr, name, scope, variable_prefix); |
70 search_var_instance_decl = new search_var_instance_decl_c(scope); |
70 search_var_instance_decl = new search_var_instance_decl_c(scope); |
71 this->set_variable_prefix(variable_prefix); |
71 this->set_variable_prefix(variable_prefix); |
653 /***********************************************************************/ |
653 /***********************************************************************/ |
654 /***********************************************************************/ |
654 /***********************************************************************/ |
655 /***********************************************************************/ |
655 /***********************************************************************/ |
656 /***********************************************************************/ |
656 /***********************************************************************/ |
657 |
657 |
658 class generate_c_sfc_c: public generate_c_base_c { |
658 class generate_c_sfc_c: public generate_c_base_and_typeid_c { |
659 |
659 |
660 private: |
660 private: |
661 std::list<VARIABLE> variable_list; |
661 std::list<VARIABLE> variable_list; |
662 |
662 |
663 generate_c_sfc_elements_c *generate_c_sfc_elements; |
663 generate_c_sfc_elements_c *generate_c_sfc_elements; |
664 search_var_instance_decl_c *search_var_instance_decl; |
664 search_var_instance_decl_c *search_var_instance_decl; |
665 |
665 |
666 public: |
666 public: |
667 generate_c_sfc_c(stage4out_c *s4o_ptr, symbol_c *name, symbol_c *scope, const char *variable_prefix = NULL) |
667 generate_c_sfc_c(stage4out_c *s4o_ptr, symbol_c *name, symbol_c *scope, const char *variable_prefix = NULL) |
668 : generate_c_base_c(s4o_ptr) { |
668 : generate_c_base_and_typeid_c(s4o_ptr) { |
669 generate_c_sfc_elements = new generate_c_sfc_elements_c(s4o_ptr, name, scope, variable_prefix); |
669 generate_c_sfc_elements = new generate_c_sfc_elements_c(s4o_ptr, name, scope, variable_prefix); |
670 search_var_instance_decl = new search_var_instance_decl_c(scope); |
670 search_var_instance_decl = new search_var_instance_decl_c(scope); |
671 this->set_variable_prefix(variable_prefix); |
671 this->set_variable_prefix(variable_prefix); |
672 } |
672 } |
673 |
673 |