//-----------------------------------------------------------------------------
#ifndef lineProfileCanvasH
#define lineProfileCanvasH lineProfileCanvasH
//-----------------------------------------------------------------------------
#include "DrawingCanvas.h"

//-----------------------------------------------------------------------------
class LineProfileCanvas : public PlotCanvas
//-----------------------------------------------------------------------------
{
	int**			m_pHorData;
	int**			m_pVerData;
	void			DeallocateProfileBuffer( void );
	void			DrawProfileLine( wxPaintDC& dc, int h, int startOffset, double scaleX, double scaleY, int** pData, int elementCount, TPlane plane );
	DECLARE_DYNAMIC_CLASS(LineProfileCanvas)
    DECLARE_EVENT_TABLE()
public:
					LineProfileCanvas() {}
					LineProfileCanvas( wxWindow* parent, wxWindowID id = -1, const wxPoint& pos = wxDefaultPosition,
									   const wxSize& size = wxDefaultSize, long style = wxSUNKEN_BORDER,
									   const wxString& name = wxT("line profile"), bool boActive = false );
				   ~LineProfileCanvas();
	void			OnPaint( wxPaintEvent & );
	void			OnSize( wxSizeEvent& );
	virtual void	RefreshData( const mvIMPACT::acquire::ImageBuffer* pIB, int x = -1, int y = -1, int w = -1, int h = -1, bool boForceRefresh = false );
};

#endif // lineProfileCanvasH
