view src/drawMidiNotes.h @ 11:df9c838d0b8f

fixed bug where the full midi file was sometimes not drawn (since minNoteIndexToPrint) was at the max and did not decrease properly in draw routine
author Andrew N Robertson <andrew.robertson@eecs.qmul.ac.uk>
date Tue, 25 Oct 2011 15:01:52 +0100
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;
					 
	
};