private void createResponseType() { createInfoType(); FieldCreate fieldCreate = FieldFactory.getFieldCreate(); String[] names = new String[1]; Field[] fields = new Field[1]; names[0] = "channels"; fields[0] = fieldCreate.createStructureArray(infoType); responseType = fieldCreate.createStructure(names, fields); }
@Override public Structure buildStructure(Serialiser serialiser, PerimeterBoxROI roi) throws IllegalArgumentException, IllegalAccessException, InvocationTargetException { FieldCreate fieldCreate = FieldFactory.getFieldCreate(); Structure structure = fieldCreate .createFieldBuilder() .add("angle", ScalarType.pvDouble) .addArray("lengths", ScalarType.pvDouble) .addArray("point", ScalarType.pvDouble) .setId("PerimeterBoxROI") .createStructure(); return structure; }
@Override public Structure buildStructure(Serialiser serialiser, SpiralModel model) throws Exception { FieldCreate fieldCreate = FieldFactory.getFieldCreate(); Structure boundingBoxStructure = serialiser.buildStructure(model.getBoundingBox()); Structure structure = fieldCreate .createFieldBuilder() .add("name", ScalarType.pvString) .add("boundingBox", boundingBoxStructure) .add("fastAxisName", ScalarType.pvString) .add("slowAxisName", ScalarType.pvString) .add("scale", ScalarType.pvDouble) .setId("SpiralModel") .createStructure(); return structure; }
private void createRequestType() { FieldCreate fieldCreate = FieldFactory.getFieldCreate(); String[] names = new String[3]; Field[] fields = new Field[3]; names[0] = "command"; fields[0] = fieldCreate.createScalar(ScalarType.pvString); names[1] = "key"; fields[1] = fieldCreate.createScalar(ScalarType.pvInt); names[2] = "pattern"; fields[2] = fieldCreate.createScalar(ScalarType.pvString); requestType = fieldCreate.createStructure(names, fields); }
public static HelloPutGetRecord create(String recordName) { StandardField standardField = StandardFieldFactory.getStandardField(); FieldCreate fieldCreate = FieldFactory.getFieldCreate(); PVDataCreate pvDataCreate = PVDataFactory.getPVDataCreate(); Structure topStructure = fieldCreate .createFieldBuilder() .add("timeStamp", standardField.timeStamp()) .addNestedStructure("argument") .add("value", ScalarType.pvString) .endNested() .addNestedStructure("result") .add("value", ScalarType.pvString) .endNested() .createStructure(); PVStructure pvStructure = pvDataCreate.createPVStructure(topStructure); HelloPutGetRecord pvRecord = new HelloPutGetRecord(recordName, pvStructure); if (!pvRecord.init()) return null; return pvRecord; }
private void createInfoType() { FieldCreate fieldCreate = FieldFactory.getFieldCreate(); String[] names = new String[5]; Field[] fields = new Field[5]; names[0] = "name"; fields[0] = fieldCreate.createScalar(ScalarType.pvString); names[1] = "start_sec"; fields[1] = fieldCreate.createScalar(ScalarType.pvInt); names[2] = "start_nano"; fields[2] = fieldCreate.createScalar(ScalarType.pvInt); names[3] = "end_sec"; fields[3] = fieldCreate.createScalar(ScalarType.pvInt); names[4] = "end_nano"; fields[4] = fieldCreate.createScalar(ScalarType.pvInt); infoType = fieldCreate.createStructure(names, fields); }
/** Initialize data stuctures. */ private void initialize() { FieldCreate fieldCreate = PVFactory.getFieldCreate(); PVDataCreate pvDataCreate = PVFactory.getPVDataCreate(); // TODO hierarchy can be used... String[] fieldNames = new String[] { "connections", "allocatedMemory", "freeMemory", "threads", "deadlocks", "averageSystemLoad" }; Field[] fields = new Field[6]; fields[0] = fieldCreate.createScalar(ScalarType.pvInt); fields[1] = fieldCreate.createScalar(ScalarType.pvLong); fields[2] = fieldCreate.createScalar(ScalarType.pvLong); fields[3] = fieldCreate.createScalar(ScalarType.pvInt); fields[4] = fieldCreate.createScalar(ScalarType.pvInt); fields[5] = fieldCreate.createScalar(ScalarType.pvDouble); status = pvDataCreate.createPVStructure(fieldCreate.createStructure(fieldNames, fields)); }