]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/duration.hh
Run grand replace for 2015.
[lilypond.git] / lily / include / duration.hh
index c6c194d2269be5f02bc3026a80c134234cd433cb..b752e329b8404daa2ff603f5d36197152d4eee68 100644 (file)
@@ -1,52 +1,60 @@
 /*
-  duration.hh -- declare Duration
-  
-  source file of the LilyPond music typesetter
+  This file is part of LilyPond, the GNU music typesetter.
 
-  (c)  1997--2002 Jan Nieuwenhuizen <janneke@gnu.org>
+  Copyright (C) 1997--2015 Jan Nieuwenhuizen <janneke@gnu.org>
 
+  LilyPond is free software: you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation, either version 3 of the License, or
+  (at your option) any later version.
+
+  LilyPond is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  GNU General Public License for more details.
+
+  You should have received a copy of the GNU General Public License
+  along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
 #ifndef DURATION_HH
 #define DURATION_HH
 
-#include "flower-proto.hh"
 #include "moment.hh"
-#include "smobs.hh"
 
 /**
    A musical duration.
-  */
-struct Duration {
-public:
-  
+*/
+struct Duration : public Simple_smob<Duration>
+{
+  static SCM equal_p (SCM, SCM);
+  int print_smob (SCM, scm_print_state *);
+  static const char type_p_name_[];
   Duration ();
   Duration (int, int);
-  String string () const;
+  Duration (Rational, bool scale);
+  string to_string () const;
 
   Duration compressed (Rational) const;
-  Rational get_length () const ;
+  Rational get_length () const;
   Rational factor () const { return factor_; }
-  int duration_log ()const;
+  int duration_log () const;
   int dot_count () const;
 
-  static int compare (Duration const&, Duration const&);
+  static int compare (Duration const &, Duration const &);
 
-  SCM smobbed_copy () const;
   DECLARE_SCHEME_CALLBACK (less_p, (SCM a, SCM b));
-  DECLARE_SIMPLE_SMOBS (Duration,);
 
 private:
-    /// Logarithm of the base duration.
+  /// Logarithm of the base duration.
   int durlog_;
   int dots_;
 
   Rational factor_;
 };
 
-#include "compare.hh"
 INSTANTIATE_COMPARE (Duration, Duration::compare);
-DECLARE_UNSMOB (Duration, duration);
 
-#endif // DURATION_HH
+extern SCM Duration_type_p_proc;
 
+#endif // DURATION_HH