]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/atom.hh
release: 1.3.19
[lilypond.git] / lily / include / atom.hh
index d7c31ee35ce2589ef87f2bec24fe3c3680c478c5..931d43f64bf518f00d0a96d3510f64430ee1e8e4 100644 (file)
@@ -3,34 +3,31 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c)  1997--1998 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c)  1997--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
 
 #ifndef ATOM_HH
 #define ATOM_HH
 
+#include "protected-scm.hh"
 #include "string.hh"
 #include "box.hh"
 #include "lily-proto.hh"
+#include "lily-guile.hh"
 
-
-/// a symbol which can be translated, and freely copied
 class Atom {
   Offset off_;
+  friend class Molecule;
+  friend class Paper_outputter;
 public:
-  String tex_;
-  String font_;
-  Box dim_;
-
-  Offset offset () const;
-  String str() const;          // for printing.
-  Atom (String, Box);
-  Atom ();
-  void translate (Offset o);
-  void translate_axis (Real r,Axis a);
-  /// how big is #this#?
-  Box extent() const;
-  void print() const;
-  bool check_infinity_b () const;
+  Atom (SCM s);
+
+  /*
+    SCM expression that (when evaluated) gives a TeX string
+representing a musical notation symbol.  */
+  Protected_scm func_;
+  void fontify (Font_metric*);
 };
+
+
 #endif