ZT/sources/Simulator/SimulatorIOManager.cpp

88 lines
2.2 KiB
C++

/*******************************************************************************
* *
* Société de Transports de Montréal. *
* 2012 *
* *
* Projet Zones Tests *
* *
* *
* *
*******************************************************************************/
/*
Description:
Classe instantiable gestionnaire simulé d'entrées/sorties externes.
*/
/* ************************************************************************** */
/* Revision:
### YYYMMDD JFM
Verision d'origine.
### YYYYMMDD Description du besoin ou du bug
Description du changement.
*/
/* ************************************************************************** */
#include "GlobalDefine.h"
#include "SimulatorIOManager.h"
CSimulatorIOManager::CSimulatorIOManager()
{
}
CSimulatorIOManager::~CSimulatorIOManager()
{
delete mInputsModule;
delete mOutputsModule;
delete mMixedModule;
}
void CSimulatorIOManager::DestroyModule()
{
delete mInputsModule;
delete mOutputsModule;
delete mMixedModule;
}
unsigned int CSimulatorIOManager::InitIO()
{
CEngLog::instance()->AddLogString(QString("CSimulatorIOManager::Init()"));
mInputsModule = new CSimulatorInputModule();
mOutputsModule = new CSImulatorOutputModule;
mMixedModule = new CSimulatorMixedModule();
return RET_OK;
}
CIOModule *CSimulatorIOManager::GetModule(eIOModuleType_t type, unsigned int ModuleID)
{
Q_UNUSED(ModuleID);
switch(type)
{
case IO_MODULE_INPUT_TYPE:
{
return mInputsModule;
break;
}
case IO_MODULE_OUTPUT_TYPE:
{
return mOutputsModule;
break;
}
case IO_MODULE_MIXED_TYPE:
{
return mMixedModule;
break;
}
default:
case IO_MODULE_INVALID_TYPE:
{
return 0;
break;
}
}
return 0;
}