view TrainingMessageOrganiser.h @ 23:055e0c43afe5

Leap MIDI works for 6 sliders, in exp and train modes.
author Robert Tubb <rt300@eecs.qmul.ac.uk>
date Mon, 27 Oct 2014 15:52:04 +0000
parents 8124f46eda65
children b339acf124df
line wrap: on
line source
//
//  TrainingMessageOrganiser.h
//  riftathon
//
//  Created by Robert Tubb on 17/10/2014.
//
//

#ifndef __riftathon__TrainingMessageOrganiser__
#define __riftathon__TrainingMessageOrganiser__

#include <iostream>
#include "MessageOrganiser.h"
#include "SequenceController.h"
#include "globalVariables.h"
#include "IconPanel.h"
#include "TextPanel.h"
#include "TrainingScoreManager.h"
extern ExplorePresetManager expPresetManager;

class TrainingMessageOrganiser : public MessageOrganiser {
public:
    int numParamsToUse;
    void init( PDSynthWrapper& cs, PDSynthWrapper& ts);
    void setMiddlePanel(TextPanel* tp);
    void setupDefaultMapping();
    vector<int> getMappingIDsFromSynths();
    void displayInstructions(Step s);
    void onNextTick(int tickNumber);
    
    void showMyPanels();
    void midiFromLeap(int ctl_num, int ctl_val);
    //-----------------------------------------------------------------------
protected:
    void showUserHowTheyDid();
    void buttonPressCallback(int mappingID, int value);
    
    void debugVals(vector<int> vals){
        cout << "DEBUG VALS: " << endl;
        for(int i = 0; i< vals.size(); i++){
            cout << vals[i] << ", ";
        }
        cout << endl;
    }
    ofColor interactableColor;
    ofColor nonInteractableColor;
    int downCounter;
    //-----------------------------------------------------------------------------
    TextPanel* middlePanel;
    SequenceController sequenceController;
    TrainingScoreManager trainingScoreManager;
};
#endif /* defined(__riftathon__TrainingMessageOrganiser__) */