aboutsummaryrefslogtreecommitdiffstats
path: root/ofxMaxim/ofxMaximExamplesOSX/ofMaxim_example_granular/src/testApp.h
blob: d5132d8f8261978aefef127ecf8cd88613a7fc83 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
#ifndef _TEST_APP
#define _TEST_APP


#include "ofMain.h"
#include "ofxMaxim.h"
#include "maxiGrains.h"
#include <sys/time.h>

typedef hannWinFunctor grainPlayerWin;

class testApp : public ofBaseApp{

	public:
		~testApp();/* deconsructor is very useful */
		void setup();
		void update();
		void draw();

		void keyPressed  (int key);
		void keyReleased(int key);
		void mouseMoved(int x, int y );
		void mouseDragged(int x, int y, int button);
		void mousePressed(int x, int y, int button);
		void mouseReleased(int x, int y, int button);
		void windowResized(int w, int h);
	
	void audioRequested 	(float * input, int bufferSize, int nChannels); /* output method */
	void audioReceived 	(float * input, int bufferSize, int nChannels); /* input method */
	
	float 	* lAudioOut; /* outputs */
	float   * rAudioOut;

	float * lAudioIn; /* inputs */
	float * rAudioIn;
	
	int		initialBufferSize; /* buffer size */ 
	int		sampleRate;
	
	
	/* stick your maximilian stuff below */
	
	double wave,sample,outputs[2];
	maxiSample samp, samp2, samp3, samp4, samp5;
	vector<maxiTimestretch<grainPlayerWin>*> stretches;
	maxiMix mymix;
	maxiTimestretch<grainPlayerWin> *ts, *ts2, *ts3, *ts4, *ts5;
	double speed, grainLength;
	
	ofxMaxiFFT fft;
	ofxMaxiFFTOctaveAnalyzer oct;
	int current;
	double pos;

};

#endif