summaryrefslogtreecommitdiff
path: root/hdr/stem.hh
diff options
context:
space:
mode:
Diffstat (limited to 'hdr/stem.hh')
-rw-r--r--hdr/stem.hh66
1 files changed, 66 insertions, 0 deletions
diff --git a/hdr/stem.hh b/hdr/stem.hh
new file mode 100644
index 0000000000..6b7bc55d7d
--- /dev/null
+++ b/hdr/stem.hh
@@ -0,0 +1,66 @@
+/*
+ stem.hh --
+
+ (c) 1996 Han-Wen Nienhuys
+*/
+
+#ifndef STEM_HH
+#define STEM_HH
+#include "item.hh"
+
+/// the rule attached to the ball
+struct Stem : public Item {
+ // heads the stem encompasses (positions)
+ int minnote, maxnote;
+
+ /// false if in beam
+ bool print_flag;
+
+ /// needed for determining direction/length
+ int staff_center;
+
+ // extent of the stem (positions)
+ Real bot, top;
+ /**
+ fractional, since Beam has to adapt them.
+ */
+
+ Real stemlen;
+ // flagtype? 4 none, 8 8th flag, 0 = beam.
+ int flag;
+
+ ///geen gedonder, jij gaat onder
+ int dir;
+ /**
+ -1 stem points down, +1: stem points up
+ */
+
+ Real stem_xoffset;
+ /****************/
+
+ /// ensure that this Stem also encompasses the Notehead #n#
+ void add(Notehead*n);
+ Real hpos()const;
+ void set_stemend(Real);
+ void set_default_dir();
+ void set_default_stemlen();
+ void set_default_extents();
+ void postprocess();
+ Stem(int center);
+ void print() const;
+ Interval width() const;
+private:
+
+ void brew_molecole();
+};
+/**
+ takes care of:
+
+ \begin{itemize}
+ \item the rule
+ \item the flag
+ \item up/down position.
+ \end{itemize}
+ */
+
+#endif