Mercurial > hg > tweakathon2ios
comparison TrainingMessageOrganiser.h @ 12:af71bf84660f
icon stuff. not working/tested.
author | Robert Tubb <rt300@eecs.qmul.ac.uk> |
---|---|
date | Mon, 20 Oct 2014 14:12:23 +0100 |
parents | 91c3fba6e5b9 |
children | ab3e0e980c82 |
comparison
equal
deleted
inserted
replaced
11:91c3fba6e5b9 | 12:af71bf84660f |
---|---|
12 #include <iostream> | 12 #include <iostream> |
13 #include "trainingTestController.h" | 13 #include "trainingTestController.h" |
14 #include "MessageOrganiser.h" | 14 #include "MessageOrganiser.h" |
15 #include "SequenceController.h" | 15 #include "SequenceController.h" |
16 #include "globalVariables.h" | 16 #include "globalVariables.h" |
17 #include "IconPanel.h" | |
18 | |
17 extern ExplorePresetManager expPresetManager; | 19 extern ExplorePresetManager expPresetManager; |
18 | 20 |
19 class TrainingMessageOrganiser : public MessageOrganiser { | 21 class TrainingMessageOrganiser : public MessageOrganiser { |
20 public: | 22 public: |
21 void init( PDSynthWrapper& cs, PDSynthWrapper& ts){ | 23 void init( PDSynthWrapper& cs, PDSynthWrapper& ts){ |
25 MessageOrganiser::init(cs,ts); | 27 MessageOrganiser::init(cs,ts); |
26 | 28 |
27 TickListenerFunction callback; | 29 TickListenerFunction callback; |
28 callback = boost::bind(&TrainingMessageOrganiser::onNextTick, this, _1); | 30 callback = boost::bind(&TrainingMessageOrganiser::onNextTick, this, _1); |
29 candidateSynth.registerForTicks(callback); | 31 candidateSynth.registerForTicks(callback); |
32 | |
33 sequencePreview = true; | |
30 } | 34 } |
31 | 35 |
32 void setupDefaultMapping(){ | 36 void setupDefaultMapping(){ |
33 vector<int> mappingIDsForChangeableParams = getMappingIDsFromSynths(); | 37 vector<int> mappingIDsForChangeableParams = getMappingIDsFromSynths(); |
34 | 38 |
35 controlPanelType cpt = REVISITABLE; | 39 controlPanelType cpt = REVISITABLE; |
36 vector<controllerType> elemList; | 40 vector<controllerType> elemList; |
37 for(int i = 0; i < 8; i++){ | 41 for(int i = 0; i < TOTAL_NUM_PARAMS; i++){ |
38 elemList.push_back(SLIDER); | 42 elemList.push_back(SLIDER); |
39 } | 43 } |
40 | 44 |
41 vector<UIElement*> UIElemHandles = panel->generateControls(elemList, cpt); | 45 vector<UIElement*> UIElemHandles = panel->generateControls(elemList, cpt); |
42 | 46 |
45 bottomPanel->show(); | 49 bottomPanel->show(); |
46 } | 50 } |
47 | 51 |
48 vector<int> getMappingIDsFromSynths(){ | 52 vector<int> getMappingIDsFromSynths(){ |
49 vector<int> index; | 53 vector<int> index; |
50 for(int i = 0; i < 8; i++){ | 54 for(int i = 0; i < TOTAL_NUM_PARAMS; i++){ |
51 index.push_back(i); | 55 index.push_back(i); |
52 } | 56 } |
53 vector<int> mids = candidateSynth.getMappingIDForIndices(index); | 57 vector<int> mids = candidateSynth.getMappingIDForIndices(index); |
54 | 58 |
55 return mids; | 59 return mids; |
58 void setupNewTest(){ | 62 void setupNewTest(){ |
59 | 63 |
60 | 64 |
61 }; | 65 }; |
62 | 66 |
67 void setIconPanel(IconPanel * ip){ | |
68 presetIconPanel = ip; | |
69 } | |
63 void onNextTick(int tickNumber){ | 70 void onNextTick(int tickNumber){ |
64 cout << "TICK " << tickNumber << endl; | 71 cout << "TICK " << tickNumber << endl; |
65 | 72 |
66 if ( tickNumber % 2){ | 73 if ( tickNumber % 2){ |
67 // load next target preset | 74 // load next target preset |
69 | 76 |
70 currentTargetPreset = expPresetManager.getPreset(i); | 77 currentTargetPreset = expPresetManager.getPreset(i); |
71 | 78 |
72 if (sequencePreview){ | 79 if (sequencePreview){ |
73 // show next target preset | 80 // show next target preset |
81 presetIconPanel->setTextAndImage(currentTargetPreset->name, currentTargetPreset->getImage()); | |
74 | 82 |
75 // show image | 83 // show image |
76 // show name | 84 // show name |
77 // show controllersettings | 85 // show controllersettings |
78 | 86 |
94 targetSynth.setAllParams(currentTargetPreset->getValues()); | 102 targetSynth.setAllParams(currentTargetPreset->getValues()); |
95 targetSynth.trigger(); | 103 targetSynth.trigger(); |
96 | 104 |
97 // flash the interface? | 105 // flash the interface? |
98 }else{ | 106 }else{ |
99 // else the user should be hitting the play button | 107 // has this been done? yes. candidateSynth.setAllParams(ui stuff); |
108 candidateSynth.trigger(); | |
109 showUserHowTheyDid(); | |
100 | 110 |
101 } | 111 } |
102 } | 112 } |
103 } | 113 } |
104 | 114 |
105 | 115 |
106 protected: | 116 protected: |
107 | 117 void showUserHowTheyDid(){ |
118 // colour flash | |
119 // distance ? | |
120 // score | |
121 | |
122 } | |
108 void loadPreset(string pname){ | 123 void loadPreset(string pname){ |
109 | 124 |
110 vector<int> values = expPresetManager.recallPreset(pname); | 125 vector<int> values = expPresetManager.recallPreset(pname); |
111 if (values.size()){ | 126 if (values.size()){ |
112 candidateSynth.setAllParams(values); | 127 candidateSynth.setAllParams(values); |
181 } | 196 } |
182 SequenceController sequenceController; | 197 SequenceController sequenceController; |
183 TrainingTestController* trainingTestController; | 198 TrainingTestController* trainingTestController; |
184 bool sequencePreview; | 199 bool sequencePreview; |
185 Preset * currentTargetPreset; | 200 Preset * currentTargetPreset; |
201 IconPanel* presetIconPanel; | |
186 }; | 202 }; |
187 #endif /* defined(__riftathon__TrainingMessageOrganiser__) */ | 203 #endif /* defined(__riftathon__TrainingMessageOrganiser__) */ |