#ifndef _SIMPLE_LINE_MODULE
#define _SIMPLE_LINE_MODULE

#include "ofMain.h"
#include "ofVec3f.h"
#include "linerBox.h"
#include "timeStroke.h"

class simpleLineModule {
	
	public:
		
		simpleLineModule();
		
		virtual void 		setup(){};
		virtual void 		reset(){};
		virtual void 		update(){};
		virtual void 		draw(float offsetx, float offsety){};
		
		virtual bool 		bHaveNewPoint(){return false;};
		virtual ofVec3f 	getNewPoint(){return ofVec3f(0,0,0);};
		virtual bool 		bAmIDone(){return false;};
		virtual void 		matchMyStartToPointAngle(ofVec3f point, float angle){
										box->matchMyStartToPointAngle(point, angle);
									}
		
		
		// graphics modules need to be drawn into a texture
		// this is the first step:
		virtual bool 		bNeedToDrawOffscreen(){ return false;}
		virtual void		drawOffscreen(){};
		virtual bool 		bProduceSound(){return false;};
		
		linerBox		* box;
		bool 			bScrubbing;		// for the video modules
		float 			scrubSpeed;
		float 			movieSpeed;
};

#endif	