Search in sources :

Example 1 with MapPair

use of ome.xml.model.MapPair in project bioformats by openmicroscopy.

the class GenericExcitationMapTest method testGenericExcitationSourceMapContent.

@Test
public void testGenericExcitationSourceMapContent() throws Exception {
    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    DocumentBuilder parser = factory.newDocumentBuilder();
    Document document = parser.newDocument();
    // Produce a valid OME DOM element hierarchy
    Element root = ome.asXMLElement(document);
    SPWModelMock.postProcess(root, document, false);
    OMEModel model = new OMEModelImpl();
    ome = new OME(document.getDocumentElement(), model);
    model.resolveReferences();
    assertNotNull(ome);
    assertEquals(ome.getImage(0).getPixels().getChannel(0).getLightSourceSettings().getID(), "LightSource:0");
    assertNotNull(ome.getInstrument(0).getLightSource(0));
    GenericExcitationSource geSource = (GenericExcitationSource) ome.getInstrument(0).getLightSource(0);
    List<MapPair> dataMap = geSource.getMap();
    assertEquals(6, dataMap.size());
    assertPair(dataMap, 0, "a", "1");
    assertPair(dataMap, 1, "d", "2");
    assertPair(dataMap, 2, "c", "3");
    assertPair(dataMap, 3, "b", "4");
    assertPair(dataMap, 4, "e", "5");
    assertPair(dataMap, 5, "c", "6");
}
Also used : MapPair(ome.xml.model.MapPair) DocumentBuilderFactory(javax.xml.parsers.DocumentBuilderFactory) GenericExcitationSource(ome.xml.model.GenericExcitationSource) DocumentBuilder(javax.xml.parsers.DocumentBuilder) OME(ome.xml.model.OME) Element(org.w3c.dom.Element) Document(org.w3c.dom.Document) OMEModel(ome.xml.model.OMEModel) OMEModelImpl(ome.xml.model.OMEModelImpl) Test(org.testng.annotations.Test)

Example 2 with MapPair

use of ome.xml.model.MapPair in project bioformats by openmicroscopy.

the class ImagingEnvironmentMapTest method setUp.

@BeforeClass
public void setUp() throws Exception {
    // Add an Image/Pixels
    Image image = new Image();
    image.setID("Image:0");
    Pixels pixels = new Pixels();
    pixels.setID("Pixels:0");
    image.setPixels(pixels);
    // Add an ImagingEnvironment with an Map
    ImagingEnvironment imagingEnvironment = new ImagingEnvironment();
    List<MapPair> map = new ArrayList<MapPair>();
    map.add(new MapPair("a", "1"));
    map.add(new MapPair("d", "2"));
    map.add(new MapPair("c", "3"));
    map.add(new MapPair("b", "4"));
    map.add(new MapPair("e", "5"));
    map.add(new MapPair("c", "6"));
    assertEquals(6, map.size());
    imagingEnvironment.setMap(map);
    image.setImagingEnvironment(imagingEnvironment);
    ome.addImage(image);
}
Also used : MapPair(ome.xml.model.MapPair) ArrayList(java.util.ArrayList) ImagingEnvironment(ome.xml.model.ImagingEnvironment) Image(ome.xml.model.Image) Pixels(ome.xml.model.Pixels) BeforeClass(org.testng.annotations.BeforeClass)

Example 3 with MapPair

use of ome.xml.model.MapPair in project bioformats by openmicroscopy.

the class ImagingEnvironmentMapTest method testGenericExcitationSourceMapContent.

@Test
public void testGenericExcitationSourceMapContent() throws Exception {
    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    DocumentBuilder parser = factory.newDocumentBuilder();
    Document document = parser.newDocument();
    // Produce a valid OME DOM element hierarchy
    Element root = ome.asXMLElement(document);
    SPWModelMock.postProcess(root, document, false);
    OMEModel model = new OMEModelImpl();
    ome = new OME(document.getDocumentElement(), model);
    model.resolveReferences();
    assertNotNull(ome);
    assertEquals(ome.getImage(0).getPixels().getID(), "Pixels:0");
    assertNotNull(ome.getImage(0).getImagingEnvironment());
    ImagingEnvironment imagingEnvironment = ome.getImage(0).getImagingEnvironment();
    List<MapPair> dataMap = imagingEnvironment.getMap();
    assertEquals(6, dataMap.size());
    assertPair(dataMap, 0, "a", "1");
    assertPair(dataMap, 1, "d", "2");
    assertPair(dataMap, 2, "c", "3");
    assertPair(dataMap, 3, "b", "4");
    assertPair(dataMap, 4, "e", "5");
    assertPair(dataMap, 5, "c", "6");
}
Also used : MapPair(ome.xml.model.MapPair) DocumentBuilderFactory(javax.xml.parsers.DocumentBuilderFactory) DocumentBuilder(javax.xml.parsers.DocumentBuilder) OME(ome.xml.model.OME) Element(org.w3c.dom.Element) ImagingEnvironment(ome.xml.model.ImagingEnvironment) Document(org.w3c.dom.Document) OMEModel(ome.xml.model.OMEModel) OMEModelImpl(ome.xml.model.OMEModelImpl) Test(org.testng.annotations.Test)

Example 4 with MapPair

use of ome.xml.model.MapPair in project bioformats by openmicroscopy.

the class MapAnnotationTest method setUp.

@BeforeClass
public void setUp() throws Exception {
    // Add an Image/Pixels
    Image image = new Image();
    image.setID("Image:0");
    Pixels pixels = new Pixels();
    pixels.setID("Pixels:0");
    image.setPixels(pixels);
    // Add a Map Annotation
    List<MapPair> map = new ArrayList<MapPair>();
    map.add(new MapPair("a", "1"));
    map.add(new MapPair("d", "2"));
    map.add(new MapPair("c", "3"));
    map.add(new MapPair("b", "4"));
    map.add(new MapPair("e", "5"));
    map.add(new MapPair("c", "6"));
    MapAnnotation mapAnnotation = new MapAnnotation();
    mapAnnotation.setID("Annotation:0");
    mapAnnotation.setValue(map);
    StructuredAnnotations structuredAnnotations = new StructuredAnnotations();
    structuredAnnotations.addMapAnnotation(mapAnnotation);
    ome.setStructuredAnnotations(structuredAnnotations);
    image.linkAnnotation(mapAnnotation);
    ome.addImage(image);
}
Also used : MapPair(ome.xml.model.MapPair) MapAnnotation(ome.xml.model.MapAnnotation) ArrayList(java.util.ArrayList) StructuredAnnotations(ome.xml.model.StructuredAnnotations) Image(ome.xml.model.Image) Pixels(ome.xml.model.Pixels) BeforeClass(org.testng.annotations.BeforeClass)

Example 5 with MapPair

use of ome.xml.model.MapPair in project bioformats by openmicroscopy.

the class writeMapAnnotationsExample method main.

public static void main(String[] args) throws Exception {
    if (args.length < 1) {
        System.out.println("Please specify an output file name.");
        System.exit(1);
    }
    String id = args[0];
    // create blank 512x512 image
    System.out.println("Creating random image...");
    int w = 512, h = 512, c = 1;
    int pixelType = FormatTools.UINT16;
    byte[] img = new byte[w * h * c * FormatTools.getBytesPerPixel(pixelType)];
    // fill with random data
    for (int i = 0; i < img.length; i++) img[i] = (byte) (256 * Math.random());
    // Create MapPair Object and add to List
    List<MapPair> mapList = new ArrayList<MapPair>();
    mapList.add(new MapPair("Example Key", "Example Value"));
    mapList.add(new MapPair("Bio-Formats Version", FormatTools.VERSION));
    // create metadata object with minimum required metadata fields
    System.out.println("Populating metadata...");
    // add (minimum+Map)Annotations to the metadata object
    ServiceFactory factory = new ServiceFactory();
    OMEXMLService service = factory.getInstance(OMEXMLService.class);
    IMetadata metadata = service.createOMEXMLMetadata();
    metadata.createRoot();
    MetadataTools.populateMetadata(metadata, 0, null, false, "XYZCT", FormatTools.getPixelTypeString(pixelType), w, h, 1, c, 1, c);
    int mapAnnotationIndex = 0;
    int annotationRefIndex = 0;
    String mapAnnotationID = MetadataTools.createLSID("MapAnnotation", 0, mapAnnotationIndex);
    metadata.setMapAnnotationID(mapAnnotationID, mapAnnotationIndex);
    metadata.setMapAnnotationValue(mapList, mapAnnotationIndex);
    metadata.setMapAnnotationAnnotator("Example Map Annotation", mapAnnotationIndex);
    metadata.setMapAnnotationDescription("Example Description", mapAnnotationIndex);
    metadata.setMapAnnotationNamespace("Example NameSpace", mapAnnotationIndex);
    metadata.setImageAnnotationRef(mapAnnotationID, 0, annotationRefIndex);
    mapAnnotationIndex = 1;
    annotationRefIndex = 1;
    mapAnnotationID = MetadataTools.createLSID("MapAnnotation", 0, mapAnnotationIndex);
    metadata.setMapAnnotationID(mapAnnotationID, mapAnnotationIndex);
    metadata.setMapAnnotationValue(mapList, mapAnnotationIndex);
    metadata.setMapAnnotationAnnotator("Example Map Annotation 1", mapAnnotationIndex);
    metadata.setMapAnnotationDescription("Example Description 1", mapAnnotationIndex);
    metadata.setMapAnnotationNamespace("Example NameSpace 1", mapAnnotationIndex);
    metadata.setImageAnnotationRef(mapAnnotationID, 0, annotationRefIndex);
    // Initialize writer and save file
    ImageWriter writer = new ImageWriter();
    writer.setMetadataRetrieve(metadata);
    writer.setId(id);
    writer.saveBytes(0, img);
    writer.close();
    System.out.println("Done.");
}
Also used : MapPair(ome.xml.model.MapPair) IMetadata(loci.formats.meta.IMetadata) ServiceFactory(loci.common.services.ServiceFactory) ArrayList(java.util.ArrayList) ImageWriter(loci.formats.ImageWriter) OMEXMLService(loci.formats.services.OMEXMLService)

Aggregations

MapPair (ome.xml.model.MapPair)8 ArrayList (java.util.ArrayList)5 DocumentBuilder (javax.xml.parsers.DocumentBuilder)3 DocumentBuilderFactory (javax.xml.parsers.DocumentBuilderFactory)3 Image (ome.xml.model.Image)3 OME (ome.xml.model.OME)3 OMEModel (ome.xml.model.OMEModel)3 OMEModelImpl (ome.xml.model.OMEModelImpl)3 Pixels (ome.xml.model.Pixels)3 BeforeClass (org.testng.annotations.BeforeClass)3 Test (org.testng.annotations.Test)3 Document (org.w3c.dom.Document)3 Element (org.w3c.dom.Element)3 GenericExcitationSource (ome.xml.model.GenericExcitationSource)2 ImagingEnvironment (ome.xml.model.ImagingEnvironment)2 MapAnnotation (ome.xml.model.MapAnnotation)2 ServiceFactory (loci.common.services.ServiceFactory)1 ImageWriter (loci.formats.ImageWriter)1 IMetadata (loci.formats.meta.IMetadata)1 OMEXMLService (loci.formats.services.OMEXMLService)1