-/*
- FIXME: too much hardcoding here.
- */
-const int FLAT_TOP_PITCH=2; /* fes,ges,as and bes typeset in lower octave */
-const int SHARP_TOP_PITCH=4; /* ais and bis typeset in lower octave */
-
-/*
- TODO: look this up. I'm not sure where the naturals ought to go.
- */
-const int NATURAL_TOP_PITCH = 4;
-
-
-
-
-/*
- FIXME: key-item should just get a list of (position, acc), and leave
- the thinking to other parties.
-
- - TODO: put this in Scheme
-
- TODO: can we do without c0pos? it's partly musical.
-
-*/
-int
-alteration_pos (SCM what, int alter, int c0p)
-{
- if (ly_c_pair_p (what))
- return scm_to_int (ly_car (what)) * 7 + scm_to_int (ly_cdr (what)) + c0p;
-
- int p = scm_to_int (what);
-
- // Find the c in the range -4 through 2
- int from_bottom_pos = c0p + 4;
- from_bottom_pos = from_bottom_pos%7;
- from_bottom_pos = (from_bottom_pos + 7)%7; // Precaution to get positive.
- int c0 = from_bottom_pos - 4;
-
-
- if ((alter <0 && ((p>FLAT_TOP_PITCH) || (p+c0>4)) && (p+c0>1))
- || (alter >0 && ((p > SHARP_TOP_PITCH) || (p+c0>5)) && (p+c0>2))
- || (alter == 0 && ((p > NATURAL_TOP_PITCH) || (p + c0>5)) && (p + c0>2)))
- {
- p -= 7; /* Typeset below c_position */
- }
-
- /* Provide for the four cases in which there's a glitch
- it's a hack, but probably not worth
- the effort of finding a nicer solution.
- --dl. */
- if (c0==2 && alter >0 && p==3)
- p -= 7;
- if (c0==-3 && alter>0 && p==-1)
- p += 7;
- if (c0==-4 && alter<0 && p==-1)
- p += 7;
- if (c0==-2 && alter<0 && p==-3)
- p += 7;
-
- return p + c0;
-}
-