Beispiel #1
0
void XRayTube::WarmUpXTube() // switchingToTubeReady, switchingToSampling
{
    switch(m_status) {
		case Closed:
			if(CanOpen()){ // change m_status to 'PreOpen', then change to 'Opening', 'StandBy' in function ::Update()
			    Open();
			    m_status = PreOpen;
			} 
			break;
		case StandBy:
		case Ready:
		case CoolingDnHV:
		case CoolingDnMA:
		//case WarmingUp:
			CalculateWarmUpSteps(); // 1.0kv, 10ma
			m_HvTarget += m_HvStep;
			if(m_HvTarget>m_WorkingHV) m_HvTarget=m_WorkingHV;
			m_MaTarget += m_MaStep;
			if(m_MaTarget>m_WorkingMA) m_MaTarget=m_WorkingMA;
			SetHV(m_HvTarget); SetMA(m_MaTarget);
			actionStart=getTimerTicks();
			m_status=WarmingUp;
			break;
	}
}
Beispiel #2
0
mixed direct_open_obj_with_obj(object target, object tool){
    return CanOpen(this_player(), tool);
}
Beispiel #3
0
mixed direct_open_obj(object target){
    return CanOpen(this_player());
}