/*
This file is part of LilyPond, the GNU music typesetter.
- Copyright (C) 2006--2011 Han-Wen Nienhuys <hanwen@lilypond.org>
+ Copyright (C) 2006--2015 Han-Wen Nienhuys <hanwen@lilypond.org>
2007--2008 Rune Zedeler
2008 Joe Neeman <joeneeman@gmail.com>
#include "scale.hh"
-#include "ly-smobs.icc"
/*
todo: put string <-> pitch here too.
LY_DEFINE (ly_set_default_scale, "ly:set-default-scale",
1, 0, 0, (SCM scale),
- "Set the global default scale. This determines the tuning of"
+ "Set the global default scale. This determines the tuning of"
" pitches with no accidentals or key signatures. The first"
- " pitch is C. Alterations are calculated relative to this"
+ " pitch is C. Alterations are calculated relative to this"
" scale. The number of pitches in this scale determines the"
" number of scale steps that make up an octave. Usually the"
" 7-note major scale.")
return ret;
}
-int
-Scale::print_smob (SCM /* x */,
- SCM port,
- scm_print_state *)
-{
- scm_puts ("#<Scale>", port);
- return 1;
-}
-SCM
-Scale::mark_smob (SCM)
-{
- return SCM_UNSPECIFIED;
-}
Scale::Scale (vector<Rational> const &tones)
{
}
Scale::Scale (Scale const &src)
+ : Smob<Scale> ()
{
step_tones_ = src.step_tones_;
smobify_self ();
Scale::~Scale ()
{
}
-
-IMPLEMENT_SMOBS (Scale);
-IMPLEMENT_DEFAULT_EQUAL_P (Scale);