int Cobolt::OnPowerSetPoint(MM::PropertyBase* pProp, MM::ActionType eAct) { double powerSetpoint; if (eAct == MM::BeforeGet) { GetPowerSetpoint(powerSetpoint); pProp->Set(powerSetpoint*1000); } else if (eAct == MM::AfterSet) { pProp->Get(powerSetpoint); SetPowerSetpoint(powerSetpoint/1000); } return DEVICE_OK; }
int Sapphire::OnPowerSetpoint(MM::PropertyBase* pProp, MM::ActionType eAct, long /*index*/) { double powerSetpoint; if (eAct == MM::BeforeGet) { GetPowerSetpoint(powerSetpoint); pProp->Set(powerSetpoint); } else if (eAct == MM::AfterSet) { pProp->Get(powerSetpoint); double achievedSetpoint; SetPowerSetpoint(powerSetpoint, achievedSetpoint); if( 0. != powerSetpoint) { double fractionError = fabs(achievedSetpoint - powerSetpoint) / powerSetpoint; if (( 0.05 < fractionError ) && (fractionError < 0.10)) pProp->Set(achievedSetpoint); } } return HandleErrors(); }