view src/drawMidiNotes.h @ 17:d75d16c57eac

Fixed the ordering of the note matrix when loaded so it has a double check feature that they are ordered min to max. Prevents draw problems down the line
author Andrew N Robertson <andrew.robertson@eecs.qmul.ac.uk>
date Tue, 15 Nov 2011 20:06:55 +0000
parents b299a65a3ad0
children
line wrap: on
line source
/*
 *  drawMidiNotes.h
 *  midiCannamReader
 *
 *  Created by Andrew on 17/07/2011.
 *  Copyright 2011 QMUL. All rights reserved.
 *
 */


#include "ofMain.h"

class drawMidiNotes{
public:
	drawMidiNotes();
	void updatePlayPosition();
	
	typedef std::vector<double> DoubleVector;
	typedef std::vector<DoubleVector> DoubleMatrix;
	
	DoubleMatrix beatPeriodMatrix;
	
	typedef std::vector<int> IntVector;
	typedef std::vector<IntVector> IntMatrix;
	
	void drawFile(const IntMatrix& noteOnMatrix);
	void reset();
	
	int ticksPerScreen;
	int tickLocation;
	int noteArrayIndex;
	
	int noteMinimum, noteMaximum;
	int screenWidth, screenHeight;
	float noteHeight;
	float tempo;
	double period;
	int pulsesPerQuarternote;
	double lastPeriodUpdateTime;
					 
	
};