]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/lily-parser.hh
Issue 4082/3: Run scripts/auxiliar/smob-convert.sh
[lilypond.git] / lily / include / lily-parser.hh
index bb4899edb3596b5acebceff8ec4f985ce0ec48f8..2ea3b0c6dcdaff87d68342fd16fa785c8bf31888 100644 (file)
 #include "pitch.hh"
 
 /**
-   State for the parser.  Do not ever add any variables to parse
-   musical content here.  We still have to remove default_duration_.
+   State for the parser.
 
    TODO: interface is too complicated
 */
-class Lily_parser
+class Lily_parser : public Smob<Lily_parser>
 {
-  DECLARE_SMOBS (Lily_parser);
-
-  char const *here_str0 () const;
-  Simultaneous_music *get_chord (Pitch tonic,
-                                 vector<Pitch> *adds, vector<Pitch> *subs,
-                                 Pitch *inversion, Pitch *bass, Duration d);
-  void set_chord_tremolo (int type);
-  void set_last_duration (Duration const *);
-  void set_last_pitch (Pitch const *);
-
 public:
+  static int print_smob (SCM, SCM, scm_print_state *);
+  static SCM mark_smob (SCM);
+  static const char type_p_name_[];
+  virtual ~Lily_parser ();
   Lily_lexer *lexer_;
   Sources *sources_;
   Duration default_duration_;
+  int default_tremolo_type_;
   string output_basename_;
   SCM closures_;
 
@@ -75,7 +69,6 @@ public:
   SCM make_scope () const;
 };
 
-DECLARE_UNSMOB (Lily_parser, lily_parser);
 
 Output_def *get_layout (Lily_parser *parser);
 Output_def *get_midi (Lily_parser *parser);