Ejemplo n.º 1
0
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;
}
Ejemplo n.º 2
0
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();
}