]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/spring.hh
2003 -> 2004
[lilypond.git] / lily / include / spring.hh
index 7bb5cc36851294d2c82677de5665770d7c59b2e7..951f61f29d653274eb921e024780ba8cf76d93fe 100644 (file)
@@ -3,7 +3,7 @@
   
   source file of the GNU LilyPond music typesetter
   
-  (c) 1999--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c) 1999--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
   
  */
 
 
 #include "lily-proto.hh"
 #include "drul-array.hh"
-
-struct Column_spring {
-  Paper_column *other_l_;
-  Real distance_f_;
-
-  /*
-    TODO: make 2 strengths: one for stretching, and one for shrinking.
-  */
-  Real strength_f_;
+#include "smobs.hh"
+
+struct Spring_smob
+{
+  Grob *other_;
+  Real distance_;
+  bool expand_only_b_;
+  Real strength_;
   
-  Column_spring ();
+  DECLARE_SIMPLE_SMOBS(Spring_smob,dummy);
+public:
+  SCM smobbed_copy () const;
+  Spring_smob();
 };
+DECLARE_UNSMOB(Spring_smob, spring);
 
 struct Spring{
   Drul_array<Item*> item_l_drul_;
-  Real distance_f_;
+  Real distance_;
+  bool expand_only_b_;
 
   /*
     TODO: make 2 strengths: one for stretching, and one for shrinking.
   */
-  Real strength_f_;
+  Real strength_;
   void add_to_cols ();
+  void set_to_cols ();
   Spring ();
 };