/*******************************************************************************
*                                                                              *
* Société de Transports de Montréal.                                    	   *
* 2012 - 2013                                                                        *
*                                                                              *
* Projet Zones Tests                                                           *
*                                                                              *
*                                                                              *
*                                                                              *
*******************************************************************************/
/*
	Description:
	Description du fichier si nécessaire.
	
*/

/* ************************************************************************** */
/* Revision:
### YYYMMDD JFM
	Verision d'origine.
	
### YYYYMMDD Description du besoin ou du bug
	Description du changement.
 */

/* ************************************************************************** */

#ifndef ABSTRACTLAZERPROBE_H
#define ABSTRACTLAZERPROBE_H
#include <QString>

enum eLazerProbeRxResult
{
	LAZER_PROBE_DATA_INVALID,
	LAZER_PROBE_DATA_VALID
};

class CAbstractLazerProbe
{
public:
	CAbstractLazerProbe();
	virtual ~CAbstractLazerProbe();

	virtual unsigned int OpenPort(QString PortName) = 0;
	virtual unsigned int GetType() = 0;
	virtual QString GetPortName() = 0;
	virtual unsigned int GetID() = 0;
	virtual unsigned int StartAcquisition() = 0;
	virtual unsigned int StopAcquisition() = 0;
	virtual unsigned int GetLastData() = 0;
	virtual unsigned int FlushProbeData() = 0;
	virtual bool IsProbeAlive() = 0;

};

#endif // ABSTRACTLAZERPROBE_H
