]> git.cworth.org Git - scherzo/blobdiff - pitch.h
Drop the enumerated pitch values.
[scherzo] / pitch.h
diff --git a/pitch.h b/pitch.h
index 13c29057bf5d25272d438e427d5c0f2c3ca4223d..525f14c8ae5038426bfe97c0c879ee8c67a3d637 100644 (file)
--- a/pitch.h
+++ b/pitch.h
  * along with this program.  If not, see http://www.gnu.org/licenses/ .
  */
 
+#include <stdint.h>
+
+#ifndef PITCH_H
+#define PITCH_H
+
 #define PITCH_ACCIDENTAL_MASK 0x07
 #define PITCH_ACCIDENTAL_SHIFT 0
 
@@ -51,48 +56,8 @@ typedef enum pitch_name
 #define PITCH(name, accidental) (((name) << PITCH_NAME_SHIFT) | (accidental))
 
 #define PITCH_LITERAL(literal_name, literal_accidental) PITCH(PITCH_NAME_##literal_name, PITCH_ACCIDENTAL_##literal_accidental)
+#define PITCH_NATURAL(literal_name) PITCH_LITERAL(literal_name, NATURAL)
 
-typedef enum pitch
-{
-    PITCH_Cff = PITCH_LITERAL (C, DOUBLE_FLAT), 
-    PITCH_Cf  = PITCH_LITERAL (C, FLAT),         
-    PITCH_C   = PITCH_LITERAL (C, NATURAL),      
-    PITCH_Cs  = PITCH_LITERAL (C, SHARP),        
-    PITCH_Css = PITCH_LITERAL (C, DOUBLE_SHARP),
-
-    PITCH_Dff = PITCH_LITERAL (D, DOUBLE_FLAT), 
-    PITCH_Df  = PITCH_LITERAL (D, FLAT),         
-    PITCH_D   = PITCH_LITERAL (D, NATURAL),      
-    PITCH_Ds  = PITCH_LITERAL (D, SHARP),        
-    PITCH_Dss = PITCH_LITERAL (D, DOUBLE_SHARP),
-
-    PITCH_Eff = PITCH_LITERAL (E, DOUBLE_FLAT), 
-    PITCH_Ef  = PITCH_LITERAL (E, FLAT),         
-    PITCH_E   = PITCH_LITERAL (E, NATURAL),      
-    PITCH_Es  = PITCH_LITERAL (E, SHARP),        
-    PITCH_Ess = PITCH_LITERAL (E, DOUBLE_SHARP),
-
-    PITCH_Fff = PITCH_LITERAL (F, DOUBLE_FLAT), 
-    PITCH_Ff  = PITCH_LITERAL (F, FLAT),         
-    PITCH_F   = PITCH_LITERAL (F, NATURAL),      
-    PITCH_Fs  = PITCH_LITERAL (F, SHARP),        
-    PITCH_Fss = PITCH_LITERAL (F, DOUBLE_SHARP),
-
-    PITCH_Gff = PITCH_LITERAL (G, DOUBLE_FLAT), 
-    PITCH_Gf  = PITCH_LITERAL (G, FLAT),         
-    PITCH_G   = PITCH_LITERAL (G, NATURAL),      
-    PITCH_Gs  = PITCH_LITERAL (G, SHARP),        
-    PITCH_Gss = PITCH_LITERAL (G, DOUBLE_SHARP),
-
-    PITCH_Aff = PITCH_LITERAL (A, DOUBLE_FLAT), 
-    PITCH_Af  = PITCH_LITERAL (A, FLAT),         
-    PITCH_A   = PITCH_LITERAL (A, NATURAL),      
-    PITCH_As  = PITCH_LITERAL (A, SHARP),        
-    PITCH_Ass = PITCH_LITERAL (A, DOUBLE_SHARP),
+typedef uint32_t pitch_t;
 
-    PITCH_Bff = PITCH_LITERAL (B, DOUBLE_FLAT), 
-    PITCH_Bf  = PITCH_LITERAL (B, FLAT),         
-    PITCH_B   = PITCH_LITERAL (B, NATURAL),      
-    PITCH_Bs  = PITCH_LITERAL (B, SHARP),        
-    PITCH_Bss = PITCH_LITERAL (B, DOUBLE_SHARP)
-} pitch_t;
+#endif /* PITCH_H */