public synchronized boolean hasVariableWithName(String name) { if (getVariable(name) != null) { return true; } return false; }
private void putVariablesInIndexMap() { for (int i = 0; i < allVariables.size(); i++) { YoVariable<?> v = allVariables.getVariable(i); allVariablesIndexMap.put(v, i); System.out.println(i + " " + v.getFullNameWithNameSpace()); } }
YoVariable<?> var = getVariable(name);
private void updateSendVars() { sendVariables.clear(); int numberToIterate = allVariables.size(); for (int i=0; i<numberToIterate; i++) { YoVariable<?> var = allVariables.getVariable(i); YoVariableRegistry registry = var.getYoVariableRegistry(); if (registry.isSent()) { sendVariables.add(var); } } }
private void addVariables(int nvars, String[] vars, float[] vals) { for (int i = 0; i < nvars; i++) { // System.out.println("Looking for var " + vars[i]); String fullVariableName = vars[i]; YoVariable<?> v = rootRegistry.getVariable(fullVariableName); if (allVariables.getVariable(fullVariableName) != null) { System.err.println("Robot has repeat variable names! Already registered " + fullVariableName); System.err.flush(); System.exit(-1); } if (v != null) { addVariableAndSetInitialValue(vals[i], fullVariableName, v); } else { createAndAddVariableAndSetInitialValue(vals[i], fullVariableName); } } }
private void updateLogVarsCount() { logVarsCount = 0; int numberToIterate = allVariables.size(); for (int i=0; i<numberToIterate; i++) { YoVariable<?> var = allVariables.getVariable(i); if (var.getYoVariableRegistry().isLogged()) logVarsCount++; } }
@Test// timeout = 30000 public void testWritingAndReadingALongStateFile() throws IOException { File fileOne = new File("fileOne.state"); if (fileOne.exists()) fileOne.delete(); long seed = 1776L; int numberOfVariables = 2000; // 12000 for when testing long files for efficiency; Random random = new Random(seed); ArrayList<YoVariable<?>> variables = createALargeNumberOfVariables(random, numberOfVariables); YoVariableList originalVarList = new YoVariableList("originalVarList"); originalVarList.addVariables(variables); writeALongStateFile(fileOne, variables); DataFileReader dataFileReader = new DataFileReader(fileOne); YoVariableList newVarList = new YoVariableList("newVarList"); boolean createMissingVariables = true; boolean printErrorForMissingVariables = false; YoVariableRegistry registry = new YoVariableRegistry("root"); dataFileReader.readState(newVarList, createMissingVariables, printErrorForMissingVariables, registry); assertEquals(originalVarList.size(), newVarList.size()); for (int i = 0; i < originalVarList.size(); i++) { YoVariable<?> originalVariable = originalVarList.getVariable(i); YoVariable<?> newVariable = newVarList.getVariable(originalVariable.getName()); assertFalse(originalVariable == newVariable); assertEquals(originalVariable.getValueAsDouble(), newVariable.getValueAsDouble(), 1e-7); } fileOne.delete(); }
YoVariable<?> originalVariable = originalVarList.getVariable(i); YoVariable<?> newVariable = newVarList.getVariable(originalVariable.getName());