MotorControlModuleSDFM_TMS3.../Projects/EFC_Application/UMLibrary/application/safety/add.hh

69 lines
2.5 KiB
C++

/*
* add.h
*
* Created on: 8 îêò. 2019 ã.
* Author: titov
*/
#ifndef SOURCE_APPLICATION_SAFETY_ADD_H_
#define SOURCE_APPLICATION_SAFETY_ADD_H_
#include "../../configuration/software/AppCreate.hh"
#include "FailureTerminatorSetup.hh"
#include "AddGpioOverrideTermination.hh"
#include "AddPwmOverrideTermination.hh"
#include "FailureManager.hh"
#include "FailureDiagnosticsSetup.hh"
#include "AddFailureSetup.hh"
#include "CommandProcessorSafety.hh"
#include "FailureCodeToRegisterU16.hh"
#include "../ApplicationInitializerList.hh"
namespace application { namespace safety {
void add( configuration::software::ApplicationConfigurator & configurator );
}
}
inline void application::safety::add(
configuration::software::ApplicationConfigurator & configurator ) {
using namespace configuration;
typedef typename software::AppCreate<FailureTerminatorSetup, void, void> FTS;
registration( configurator, &FTS::build, info::FailureTerminatorSetup );
typedef typename software::AppCreate<AddGpioOverrideTermination, AddGpioOverrideTermination::Setting, void> AGOT;
registration( configurator, &AGOT::build, info::AddGpioOverrideTermination );
typedef typename software::AppCreate<AddPwmOverrideTermination, void, void> APOT;
registration( configurator, &APOT::build, info::AddPwmOverrideTermination );
typedef typename software::AppCreate<FailureManager, void, configuration::ProcessConfig> FMS;
registration( configurator, &FMS::build, info::FailureManager );
typedef typename software::AppCreate<FailureDiagnosticsSetup, void, configuration::ProcessConfig> FDS;
registration( configurator, &FDS::build, info::FailureDiagnosticsSetup );
typedef typename software::AppCreate<AddFailureSetupWithoutReset, AddFailureSetupWithoutReset::Setting, void> AFSWOR;
registration( configurator, &AFSWOR::build, info::AddFailureSetupWithoutReset );
typedef typename software::AppCreate<AddFailureSetupWithReset, AddFailureSetupWithReset::Setting, void> AFSWR;
registration( configurator, &AFSWR::build, info::AddFailureSetupWithReset );
typedef typename software::AppCreate<CommandProcessorSafety, void, configuration::ProcessConfig> CPSS;
registration( configurator, &CPSS::build, info::CommandProcessorSafety );
typedef typename software::AppCreate<FailureCodeToRegisterU16, FailureCodeToRegisterU16::Setting, configuration::ProcessConfig> FCTRU16;
registration( configurator, &FCTRU16::build, info::FailureCodeToRegisterU16 );
}
#endif /* SOURCE_APPLICATION_SAFETY_ADD_H_ */