12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- #include "stdafx.h"
- #include "ExamHandlerFactory.h"
- #include "DoNothingHandler.h"
- #include "TomoExamHandler.h"
- #include "NormalExamHandler.h"
- #include "CalibrationHandler.h"
- #include "MotionTestHandler.h"
- #include "ResetHandler.h"
- #include "SelfTestHandler.h"
- #include "ParkingHandler.h"
- using namespace DIOS::Dev::Detail::MachineryECOM;
- ExamHandlerFactory *ExamHandlerFactory::m_instance = nullptr;
- ExamHandlerFactory::ExamHandlerFactory()
- {
- }
- ExamHandlerFactory::~ExamHandlerFactory()
- {
- }
- ExamHandlerFactory *ExamHandlerFactory::Instance()
- {
- if (m_instance == nullptr)
- {
- m_instance = new ExamHandlerFactory();
- }
- return m_instance;
- }
- IExamHandler *ExamHandlerFactory::CreateExamHandler(EXAM_HANDLER_TYPE type)
- {
- IExamHandler *ret = nullptr;
- switch (type)
- {
- case EXAM_HANDLER_NONE:
- ret = new DoNothingHandler();
- break;
- case EXAM_HANDLER_RAD:
- ret = new NormalExamHandler();
- break;
- case EXAM_HANDLER_TOMO:
- ret = new TomoExamHandler();
- break;
- case EXAM_HANDLER_RESET:
- ret = new ResetHandler();
- break;
- case EXAM_HANDLER_CALIBRATION:
- ret = new CalibrationHandler();
- break;
- case EXAM_HANDLER_MOTIONTEST:
- ret = new MotionTestHandler();
- break;
- case EXAM_HANDLER_PARKING:
- ret = new ParkingHandler();
- break;
- case EXAM_HANDLER_SELFTEST:
- ret = new SelfTestHandler();
- break;
- default:
- break;
- }
- return ret;
- }
|