#include "stdafx.h" #include "OEM.Collimator.h" //#include "DIOS.Dev.FPD.Demo.h" //#include "DIOS.Dev.Generator.VMIMAMMO.h" #include "DIOS.Dev.SyncBox.V2COM.h" OemCollimator::OemCollimator(std::shared_ptr EventCenter): super(EventCenter) { m_pBOX = nullptr; } OemCollimator::~OemCollimator() { } bool OemCollimator::Prepare() { printf("OemCollimator::Prepare\n"); Register(); return true; } void OemCollimator::Register() { printf("OemCollimator::Register\n"); auto p = static_cast (this); auto Disp = &Dispatch; Disp->Action.Push("SetCollimatorSize", p, &CollimatorDevice::JSSetCollimatorSize); Disp->Action.Push("SetCollimatorFilter", p, &CollimatorDevice::JSSetCollimatorFilter); Disp->Action.Push("SetCollimatorSID", p, &CollimatorDevice::JSSetCollimatorSID); Disp->Action.Push("SetCollimatorAngle", p, &CollimatorDevice::JSSetCollimatorAngle); Disp->Action.Push("SetCollimatorLight", p, &CollimatorDevice::JSSetCollimatorLight); Disp->Get.Push("XSize", p, &CollimatorDevice::JSGetCollimatorXSize); Disp->Get.Push("YSize", p, &CollimatorDevice::JSGetCollimatorYSize); Disp->Get.Push("SID", p, &CollimatorDevice::JSGetCollimatorSID); Disp->Get.Push("Filter", p, &CollimatorDevice::JSGetCollimatorFilter); Disp->Get.Push("Angle", p, &CollimatorDevice::JSGetCollimatorAngle); } void OemCollimator::SetCtrlDev(SyncBoxDevice* pCtrlDev) { m_pBOX = pCtrlDev; } RET_STATUS OemCollimator::SetCollimatorFilter(int pParams) { RET_STATUS ret = RET_STATUS::RET_FAILED; if (m_pBOX != nullptr) ret = m_pBOX->SetFilter(pParams); return ret; } RET_STATUS OemCollimator::SetCollimatorSize(int xsize, int ysize) { RET_STATUS ret = RET_STATUS::RET_FAILED; //if (m_pBOX != nullptr) // ret = m_pBOX->SetCollimatorSize(xsize, ysize); return ret; } RET_STATUS OemCollimator::SetCollimatorLight(int pParams) { RET_STATUS ret = RET_STATUS::RET_FAILED; //if (m_pBOX != nullptr) // RET_STATUS ret = m_pBOX->SetCollimatorLight(pParams); return ret; }