#ifndef KEYITEM_HH
#define KEYITEM_HH
-#include "item.hh"
-#include "array.hh"
+#include "lily-guile.hh"
+#include "lily-proto.hh"
-/**
- A group of accidentals.
-
- Properties:
-
- c0-position -- integer indicating the position of central C?
-
- old-accidentals -- list of (pitch, accidental) pairs
-
- new-accidentals -- list of (pitch, accidental) pairs
- */
-class Key_item :public Item
+struct Key_item
{
- int calculate_position(SCM pair) const;
-
-public:
- VIRTUAL_COPY_CONS(Score_element);
- Key_item (SCM);
- static SCM scheme_molecule (SCM);
-
-
-protected:
- virtual Molecule do_brew_molecule() const;
+ static int calculate_position(Score_element*,SCM pair) ;
+ static void set_interface (Score_element*);
+ static bool has_interface (Score_element*);
+ DECLARE_SCHEME_CALLBACK(brew_molecule, (SCM ));
};
#endif // KEYITEM_HH