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

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

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

#ifndef SEAIO470DRIVER_H
#define SEAIO470DRIVER_H

#include "GlobalDefine.h"
#include "Externaliomodule.h"
#include "seamaxlin.h"
#include "AnalogInputModule.h"

#define SEAIO_470_MAX_CHANNEL 8


class CSeaIO470Module : public CExternalIOModule,
						public CAnalogInputModule
{
public:
	CSeaIO470Module(CSeaMaxLin *ModuleInterfacePtr = 0);
	unsigned int OpenModule(unsigned int SlaveAddress, CSeaMaxLin *DriverPtr, unsigned int ModuleID);

	unsigned int GetAnalogInput(int Channel, int *Data);
	virtual unsigned int GetAnalogInput(int Channel, double &Data);

private:
	unsigned int ReadInput(int Channel);

	char mInputBuffer[2];
	int mCurInput;



};

#endif // SEAIO470DRIVER_H
