emulator.setBasicSettings(device, setting, sourceDirs);
emulator.setBasicSettings(device, setting, sourceDirs, properties );
	public static Emulator createEmulator(Device device, EmulatorSetting setting, Map variables, Project project, BooleanEvaluator evaluator, String wtkHome, File[] sourceDirs ) {		String className = setting.getEmulatorClassName();		if (className == null) {			className = device.getCapability("polish.Emulator.Class");			if (className == null) {				Object executable = variables.get("polish.Emulator.Executable");				Object arguments =  variables.get("polish.Emulator.Arguments");				if (executable != null && arguments != null) {					className = GenericEmulator.class.getName();				} else {					className = WtkEmulator.class.getName();				}			}		}		Class emulatorClass = null;		try {			emulatorClass = Class.forName( className );		} catch (ClassNotFoundException e) {			// okay, try to add this package in front if it:			// System.out.println("did not find class " + className );			try {				emulatorClass = Class.forName( "de.enough.polish.ant.emulator." + className );			} catch (ClassNotFoundException e2) {				System.err.println("Unable to load emulator-class [" + className + "]: " + e2.toString() );				return null;			}		}		Emulator emulator = null;		try {			emulator = (Emulator) emulatorClass.newInstance();		} catch (Exception e) {			e.printStackTrace();			System.err.println("Unable to instantiate the emulator-class [" + className + "]: " + e.toString() );			return null;		}		Hashtable antProperties = project.getProperties();		HashMap capabilities = device.getCapabilities();		HashMap properties = new HashMap( antProperties.size() + variables.size() + capabilities.size() );		properties.putAll( antProperties );		properties.putAll( capabilities );		properties.putAll( variables );		boolean okToStart = emulator.init(device, setting, properties, project, evaluator, wtkHome);		if (!okToStart) {			return null;		}		emulator.setBasicSettings(device, setting, sourceDirs);		emulator.start();		return emulator;	}