X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fpitch.cc;h=0fd75129476a7a1d889d751c504e290f22c30843;hb=47db9a3883d726ca53e2133a3b2298f78dd6a32e;hp=b26076a0083c88efcb48ee476e2e2efe7526dc38;hpb=446dc1f3ac9bfff6bfee31de929698b0425da6fe;p=lilypond.git diff --git a/lily/pitch.cc b/lily/pitch.cc index b26076a008..0fd7512947 100644 --- a/lily/pitch.cc +++ b/lily/pitch.cc @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 1998--2012 Han-Wen Nienhuys + Copyright (C) 1998--2015 Han-Wen Nienhuys LilyPond is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -24,7 +24,6 @@ #include "string-convert.hh" #include "warn.hh" -#include "ly-smobs.icc" #include Pitch::Pitch (int o, int n, Rational a) @@ -219,21 +218,19 @@ Pitch::down_to (int notename) notename_ = notename; } -IMPLEMENT_TYPE_P (Pitch, "ly:pitch?"); +const char Pitch::type_p_name_[] = "ly:pitch?"; + SCM -Pitch::mark_smob (SCM x) +Pitch::mark_smob () { - Pitch *p = (Pitch *) SCM_CELL_WORD_1 (x); - return p->scale_->self_scm (); + return scale_->self_scm (); } -IMPLEMENT_SIMPLE_SMOBS (Pitch); int -Pitch::print_smob (SCM s, SCM port, scm_print_state *) +Pitch::print_smob (SCM port, scm_print_state *) { - Pitch *r = (Pitch *) SCM_CELL_WORD_1 (s); scm_puts ("#to_string ()), port); + scm_display (ly_string2scm (to_string ()), port); scm_puts (" >", port); return 1; } @@ -255,8 +252,8 @@ MAKE_SCHEME_CALLBACK (Pitch, less_p, 2); SCM Pitch::less_p (SCM p1, SCM p2) { - Pitch *a = unsmob_pitch (p1); - Pitch *b = unsmob_pitch (p2); + Pitch *a = Pitch::unsmob (p1); + Pitch *b = Pitch::unsmob (p2); if (compare (*a, *b) < 0) return SCM_BOOL_T;