ZT/sources/ExtModules/Seaio430driver.h

56 lines
1.9 KiB
C++

/*******************************************************************************
* *
* 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 SEAIO430DRIVER_H
#define SEAIO430DRIVER_H
#include "GlobalDefine.h"
#include "Externaliomodule.h"
#include "seamaxlin.h"
#include "InputModule.h"
#include <QMutex>
class CSeaIO430Module : public CExternalIOModule, public CInputModule
{
public:
CSeaIO430Module(CSeaMaxLin *ModuleInterfacePtr = 0);
virtual unsigned int GetInputs();
virtual unsigned int GetInputBuf();
unsigned int ReadInputs(void);
unsigned int ReadAndGetInputs(unsigned char *DataBuf);
private:
unsigned char mInputBuffer[4]; //Buffer de données pour les entrées discrètes.
//On utilise un array simple pour éviter l'allocation dynamique.
unsigned int GetInputs(unsigned char *DataBuf);
QMutex mMutex;
};
#endif // SEAIO430DRIVER_H