view TrainingMessageOrganiser.h @ 44:d810aa9ca03a

times. cosmetic stuff
author Robert Tubb <rt300@eecs.qmul.ac.uk>
date Mon, 15 Dec 2014 17:33:41 +0000
parents 4ad0d218f890
children 80112c9349c4
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"
#include "6Dbox.h"
#include "eventLogger.h"

extern ExplorePresetManager expPresetManager;
extern EventLogger eventLogger;

class TrainingMessageOrganiser : public MessageOrganiser {
public:
    int numParamsToUse;
    void init( PDSynthWrapper& cs, PDSynthWrapper& ts, bool soundOnlyMode,controlPanelType whichInterfaceAreWeUsing);
    
    void setup(controlPanelType whichInterfaceAreWeUsing);
    vector<int> getMappingIDsFromSynths();
    void displayInstructions(string text);
    void onNextTick(int tickNumber);
    void onNextTickAnim(int tickNumber);
    
    void showMyPanels();
    void setForgotButton(Buttron* butt);
    void forgotByMidi();
    //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;
    }
    void updateCountdown(int n);
    void lastOfAll();
    void lastOfRun(int which);
    void showCountdown();
    void hideSliders();
    void showsTarget();
    void logNewStep(AnimStep newStep, vector<int> targetVals);
    TrainingTestResult doResults(AnimStep newStep,
                                 Preset * currentTargetPreset,
                                 vector<int> startingPosition,
                                 vector<int> currentPosition	);
    
    void previewNeutralCount(AnimStep newStep, Preset * currentTargetPreset);
    void previewMove(AnimStep newStep, Preset * currentTargetPreset);
    void previewLast(AnimStep newStep, Preset * currentTargetPreset);
    //void matchingNeutralCount(AnimStep newStep);
    void matchingMove(AnimStep newStep, Preset * currentTargetPreset);
    void matchingLast(AnimStep newStep, Preset * currentTargetPreset);
    //void guidedMove(AnimStep newStep);
    //void guidedHit(AnimStep newStep);
    
    void flashResult(TrainingTestResult r);
    void doGuides(bool showGuides, Preset * currentTargetPreset);
    void doIcons(bool showIcons, Preset * currentTargetPreset);
    void doHand(bool showControllableHand, bool showAnimatedHand = false, float animTime = 0, vector<int> newTargetValues = vector<int>());
    ofColor interactableColor;
    ofColor nonInteractableColor;
    int downCounter;
    
    vector<int> oldTargetValues;
    //-----------------------------------------------------------------------------
    
    SequenceController sequenceController;
    TrainingScoreManager trainingScoreManager;
    Buttron* forgotButton;

    
};
#endif /* defined(__riftathon__TrainingMessageOrganiser__) */