//+----------------------------------------------------------------------------
//
// method : 		LimaDetector::is_Prepare_allowed
// 
// description : 	Execution allowed for Prepare command.
//
//-----------------------------------------------------------------------------
bool LimaDetector::is_Prepare_allowed(const CORBA::Any &any)
{
	if (get_state() == Tango::INIT	||
		get_state() == Tango::FAULT)
	{
		//	End of Generated Code
		if ( get_state()==Tango::FAULT && is_device_initialized() )
		{
           return true;
		}	
		//	Re-Start of Generated Code
		return false;
	}
	return true;
}
//+----------------------------------------------------------------------------
//
// method : 		LimaDetector::is_latencyTime_allowed
// 
// description : 	Read/Write allowed for latencyTime attribute.
//
//-----------------------------------------------------------------------------
bool LimaDetector::is_latencyTime_allowed(Tango::AttReqType type)
{
	if (get_state() == Tango::INIT	||
		get_state() == Tango::FAULT)
	{
		//	End of Generated Code
		
		if ( get_state()==Tango::FAULT && is_device_initialized() )
		{
           return true;
		}	
		//	Re-Start of Generated Code
		return false;
	}
	return true;
}
//+----------------------------------------------------------------------------
//
// method : 		LimaDetector::is_GetAttributeAvailableValues_allowed
// 
// description : 	Execution allowed for GetAttributeAvailableValues command.
//
//-----------------------------------------------------------------------------
bool LimaDetector::is_GetAttributeAvailableValues_allowed(const CORBA::Any &any)
{
	if (get_state() == Tango::INIT	||
		get_state() == Tango::FAULT	||
		get_state() == Tango::RUNNING)
	{
		//	End of Generated Code
		if ( get_state()==Tango::FAULT && is_device_initialized() )
		{
           return true;
		}
		//	Re-Start of Generated Code
		return false;
	}
	return true;
}
//+----------------------------------------------------------------------------
//
// method : 		XpadPixelDetector::is_GetModConfig_allowed
// 
// description : 	Execution allowed for GetModConfig command.
//
//-----------------------------------------------------------------------------
bool XpadPixelDetector::is_GetModConfig_allowed(const CORBA::Any &any)
{
	if (get_state() == Tango::INIT	||
		get_state() == Tango::RUNNING	||
		get_state() == Tango::FAULT)
	{
		//	End of Generated Code
		if ( get_state()==Tango::FAULT && is_device_initialized() )
		{
           return true;
		}
		//	Re-Start of Generated Code
		return false;
	}
	return true;
}
//+----------------------------------------------------------------------------
//
// method : 		SimulatorCCD::is_growFactor_allowed
// 
// description : 	Read/Write allowed for growFactor attribute.
//
//-----------------------------------------------------------------------------
bool SimulatorCCD::is_growFactor_allowed(Tango::AttReqType type)
{
	if (get_state() == Tango::FAULT)
	{
		//	End of Generated Code
		if ( get_state()==Tango::RUNNING && type==Tango::READ_REQ )
		{
           return true;
		}
		
		if ( get_state()==Tango::FAULT && is_device_initialized() )
		{
           return true;
		}	
		//	Re-Start of Generated Code
		return false;
	}
	return true;
}
//+----------------------------------------------------------------------------
//
// method : 		LimaDetector::is_detectorModel_allowed
// 
// description : 	Read/Write allowed for detectorModel attribute.
//
//-----------------------------------------------------------------------------
bool LimaDetector::is_detectorModel_allowed(Tango::AttReqType type)
{
	if (get_state() == Tango::INIT	||
		get_state() == Tango::FAULT	||
		get_state() == Tango::RUNNING)
	{
		//	End of Generated Code
		if ( get_state()==Tango::RUNNING && type==Tango::READ_REQ )
		{
           return true;
		}
		
		if ( get_state()==Tango::FAULT && is_device_initialized() )
		{
           return true;
		}	
		//	Re-Start of Generated Code
		return false;
	}
	return true;
}
//+----------------------------------------------------------------------------
//
// method : 		BaslerCCD::is_currentThroughput_allowed
// 
// description : 	Read/Write allowed for currentThroughput attribute.
//
//-----------------------------------------------------------------------------
bool BaslerCCD::is_currentThroughput_allowed(Tango::AttReqType type)
{
	if (get_state() == Tango::INIT	||
		get_state() == Tango::FAULT	||
		get_state() == Tango::RUNNING)
	{
		//	End of Generated Code
		if ( get_state()==Tango::RUNNING && type==Tango::READ_REQ )
		{
           return true;
		}
		
		if ( get_state()==Tango::FAULT && is_device_initialized() )
		{
           return true;
		}	
		//	Re-Start of Generated Code
		return false;
	}
	return true;
}
//+----------------------------------------------------------------------------
//
// method : 		PrincetonCCD::is_temperature_allowed
// 
// description : 	Read/Write allowed for temperature attribute.
//
//-----------------------------------------------------------------------------
bool PrincetonCCD::is_temperature_allowed(Tango::AttReqType type)
{
	if (get_state() == Tango::INIT	||
		get_state() == Tango::FAULT	||
		get_state() == Tango::RUNNING)
	{
		//	End of Generated Code
		if ( get_state()==Tango::RUNNING && type==Tango::READ_REQ )
		{
           return true;
		}
		
		if ( get_state()==Tango::FAULT && is_device_initialized() )
		{
           return true;
		}
		//	Re-Start of Generated Code
		return false;
	}
	return true;
}
//+----------------------------------------------------------------------------
//
// method : 		Maxipix::is_energyThreshold_allowed
// 
// description : 	Read/Write allowed for energyThreshold attribute.
//
//-----------------------------------------------------------------------------
bool Maxipix::is_energyThreshold_allowed(Tango::AttReqType type)
{
	if (get_state() == Tango::FAULT	||
		get_state() == Tango::INIT	||
		get_state() == Tango::RUNNING)
	{
		//	End of Generated Code
		if ( get_state()==Tango::RUNNING && type==Tango::READ_REQ )
		{
           return true;
		}
		
		if ( get_state()==Tango::FAULT && is_device_initialized() )
		{
           return true;
		}
		//	Re-Start of Generated Code
		return false;
	}
	return true;
}