commit a193c7441337b7dc7fb6ffc5ecba7dd16df11985
parent 3f6f17c70862cc25a74be3357743a61f502dbf3b
Author: Thiago Mendes <thimns@gmail.com>
Date: Mon, 24 Sep 2018 21:42:49 -0300
Added Cello tuning.
Diffstat:
5 files changed, 68 insertions(+), 1 deletion(-)
diff --git a/app/src/main/java/com/github/cythara/TuningMapper.java b/app/src/main/java/com/github/cythara/TuningMapper.java
@@ -3,6 +3,7 @@ package com.github.cythara;
import android.util.Log;
import com.github.cythara.tuning.BassTuning;
+import com.github.cythara.tuning.CelloTuning;
import com.github.cythara.tuning.ChromaticTuning;
import com.github.cythara.tuning.DropCGuitarTuning;
import com.github.cythara.tuning.DropCSharpGuitarTuning;
@@ -24,7 +25,8 @@ class TuningMapper {
private static final int UKULELE_TUNING_POSITION = 6;
private static final int D_TUNING_POSITION = 7;
private static final int VIOLIN_TUNING_POSITION = 8;
- private static final int CHROMATIC_TUNING_POSITION = 9;
+ private static final int CELLO_TUNING_POSITION = 9;
+ private static final int CHROMATIC_TUNING_POSITION = 10;
static Tuning getTuningFromPosition(int position) {
switch (position) {
@@ -46,6 +48,8 @@ class TuningMapper {
return new UkuleleDTuning();
case VIOLIN_TUNING_POSITION:
return new ViolinTuning();
+ case CELLO_TUNING_POSITION:
+ return new CelloTuning();
case CHROMATIC_TUNING_POSITION:
return new ChromaticTuning();
default:
diff --git a/app/src/main/java/com/github/cythara/tuning/CelloTuning.java b/app/src/main/java/com/github/cythara/tuning/CelloTuning.java
@@ -0,0 +1,60 @@
+package com.github.cythara.tuning;
+
+import com.github.cythara.NoteName;
+import com.github.cythara.Tuning;
+
+import static com.github.cythara.NoteName.A;
+import static com.github.cythara.NoteName.C;
+import static com.github.cythara.NoteName.D;
+import static com.github.cythara.NoteName.G;
+
+public class CelloTuning implements Tuning {
+
+ @Override
+ public com.github.cythara.Note[] getNotes() {
+ return Pitch.values();
+ }
+
+ @Override
+ public com.github.cythara.Note findNote(String name) {
+ return Pitch.valueOf(name);
+ }
+
+ private enum Pitch implements com.github.cythara.Note {
+
+ C2(C, 2, 65.4f),
+ G2(G, 2, 98f),
+ D3(D, 3, 146.8f),
+ A3(A, 3, 220f);
+
+ private final String sign;
+ private final int octave;
+ private final float frequency;
+ private NoteName name;
+
+ Pitch(NoteName name, int octave, float frequency) {
+ this.name = name;
+ this.octave = octave;
+ this.sign = "";
+ this.frequency = frequency;
+ }
+
+ public NoteName getName() {
+ return name;
+ }
+
+ public float getFrequency() {
+ return frequency;
+ }
+
+ @Override
+ public int getOctave() {
+ return octave;
+ }
+
+ @Override
+ public String getSign() {
+ return sign;
+ }
+ }
+}
diff --git a/app/src/main/res/values-de-rDE/strings.xml b/app/src/main/res/values-de-rDE/strings.xml
@@ -17,6 +17,7 @@
<item>Ukulele (Standard)</item>
<item>Ukulele (D tuning)</item>
<item>Geige (Standard)</item>
+ <item>Cello (Standard)</item>
<item>Chromatisch</item>
</string-array>
<string-array name="notations">
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
@@ -14,6 +14,7 @@
<item>Ukulele (padrão)</item>
<item>Ukulele (D tuning)</item>
<item>Violino (padrão)</item>
+ <item>Cello (padrão)</item>
<item>Cromático</item>
</string-array>
<string-array name="notations">
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
@@ -17,6 +17,7 @@
<item>Ukulele (standard)</item>
<item>Ukulele (D tuning)</item>
<item>Violin (standard)</item>
+ <item>Cello (standard)</item>
<item>Chromatic</item>
</string-array>
<string-array name="notations">