]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/musical-request.cc
release: 0.1.15
[lilypond.git] / lily / musical-request.cc
index c7a4b8fe9b7ad0152c805f77b443ba620e4bf822..5b69a4f5813cfa39e2616efaf8e403f46996cbaf 100644 (file)
@@ -423,32 +423,44 @@ Absolute_dynamic_req::do_print() const
 {
 #ifndef NPRINT
   Dynamic_req::do_print();
-  DOUT << " loudness " <<loudness_str (loudness_);
+  DOUT << " loudness " <<loudness_str ();
 #endif
 }
 
 String
-Dynamic_req::loudness_str (Loudness l) 
+Dynamic_req::loudness_static_str (Loudness l) 
 {
   switch (l) 
     {
-  case FFF: return "fff";
-  case FF: return "ff";
-  case F: return "f";
-  case MF: return "mf";
-  case MP: return "mp";
-  case P: return "p";
-  case PP: return "pp";
-  case PPP: return "ppp";
-
-  case FP: return "fp";
-  case SF: return "sf";
-  case SFZ: return "sfz";
+    case FFF: return "fff";
+    case FF: return "ff";
+    case F: return "f";
+    case MF: return "mf";
+    case MP: return "mp";
+    case P: return "p";
+    case PP: return "pp";
+    case PPP: return "ppp";
+    case FP: return "fp";
+    case SF: return "sf";
+    case SFZ: return "sfz";
     }
-  assert (false);
   return "";
 }
 
+String
+Absolute_dynamic_req::loudness_str () const
+{
+  String s = loudness_static_str (loudness_);
+  if (!s)
+    {
+      s = "mf";
+      warning (String ("Never heard of dynamic scale ") 
+              + loudness_ + " assuming mf");
+    }
+  return s;
+}
+
+
 Absolute_dynamic_req::Absolute_dynamic_req()
 {
   loudness_ = MF;