ZT/sources/IOManager.h

65 lines
1.8 KiB
C++

/*******************************************************************************
* *
* Société de Transports de Montréal. *
* 2012 *
* *
* 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 IOMANAGER_H
#define IOMANAGER_H
#include "IOModule.h"
#include "QList"
typedef enum eIOModuleType
{
IO_MODULE_INPUT_TYPE,
IO_MODULE_OUTPUT_TYPE,
IO_MODULE_MIXED_TYPE,
IO_MODULE_INVALID_TYPE
}eIOModuleType_t;
enum eIOMgrRetValues
{
EXTIO_MGR_RET_OK,
EXTIO_MGR_RET_ERR_CANNOT_CONNECT,
EXTIO_MGR_RET_ERR_CANNOT_OPEN_MODULE,
EXTIO_MGR_RET_ERR_MOD_TYPE_MISMATCH,
EXTIO_MGR_RET_ERR_MOD_OFFLINE
};
class CIOManager
{
public:
//CIOManager();
virtual unsigned int InitIO() = 0;
virtual CIOModule *GetModule(eIOModuleType_t type, unsigned int ModuleID) = 0;
//QList<CIOModule*> mModulesList;
virtual void DestroyModule() = 0;
virtual ~CIOManager();
};
#endif // IOMANAGER_H