Skip to content

Instantly share code, notes, and snippets.

(base) pietzsch@tomancak-mac-26:~/workspace/imagej/ij1-patcher (d45f936)$ j11 # 1 [17:11:44]
JAVA_HOME -> /Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home
openjdk version "11.0.6" 2020-01-14
OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.6+10)
OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.6+10, mixed mode)
(base) pietzsch@tomancak-mac-26:~/workspace/imagej/ij1-patcher (d45f936)$ mvn clean test # 0 [17:12:21]
[INFO] Scanning for projects...
[INFO]
[INFO] -----------------------< net.imagej:ij1-patcher >-----------------------
[INFO] Building ImageJ 1.x Patcher 1.2.0
(base) pietzsch@tomancak-mac-26:~/workspace/fiji/fiji/melting-pot/net.imglib2/imglib2-algorithm (d39889d*)$ mvn clean package # 0 [22:49:37]
[INFO] Scanning for projects...
[INFO]
[INFO] -------------------< net.imglib2:imglib2-algorithm >--------------------
[INFO] Building ImgLib2 Algorithms 0.11.2
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:3.1.0:clean (default-clean) @ imglib2-algorithm ---
[INFO] Deleting /Users/pietzsch/workspace/fiji/fiji/melting-pot/net.imglib2/imglib2-algorithm/target
[INFO]
(base) pietzsch@tomancak-mac-26:~/workspace/fiji/fiji/melting-pot/net.imglib2/imglib2-algorithm (d39889d*)$ cat build.log # 0 [22:48:51]
[INFO] Scanning for projects...
[INFO]
[INFO] -------------------< net.imglib2:imglib2-algorithm >--------------------
[INFO] Building ImgLib2 Algorithms 0.11.2
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-enforcer-plugin:1.4.1:enforce (enforce-rules) @ imglib2-algorithm ---
[INFO] Skipping Rule Enforcement.
[INFO]
(base) pietzsch@tomancak-mac-26:~/workspace/fiji/fiji (master*)$ ./bin/melt.sh [INFO] /Users/pietzsch/workspace/fiji/fiji: local Maven project
[INFO] /Users/pietzsch/workspace/fiji/fiji: determining project dependencies
[INFO] /Users/pietzsch/workspace/fiji/fiji: processing project dependencies
[INFO] /Users/pietzsch/workspace/fiji/fiji: Sholl_Analysis: fetching component source
[INFO] /Users/pietzsch/workspace/fiji/fiji: scifio-bf-compat: fetching component source
[INFO] /Users/pietzsch/workspace/fiji/fiji: scifio-cli: fetching component source
[INFO] /Users/pietzsch/workspace/fiji/fiji: scifio-hdf5: fetching component source
[INFO] /Users/pietzsch/workspace/fiji/fiji: scifio-jai-imageio: fetching component source
[INFO] /Users/pietzsch/workspace/fiji/fiji: scifio-lifesci: fetching component source
[INFO] /Users/pietzsch/workspace/fiji/fiji: scifio-ome-xml: fetching component source
/*
* #%L
* ImgLib2: a general-purpose, multidimensional image processing library.
* %%
* Copyright (C) 2009 - 2019 Tobias Pietzsch, Stephan Preibisch, Stephan Saalfeld,
* John Bogovic, Albert Cardona, Barry DeZonia, Christian Dietz, Jan Funke,
* Aivar Grislis, Jonathan Hale, Grant Harris, Stefan Helfrich, Mark Hiner,
* Martin Horn, Steffen Jaensch, Lee Kamentsky, Larry Lindsey, Melissa Linkert,
* Mark Longair, Brian Northan, Nick Perry, Curtis Rueden, Johannes Schindelin,
* Jean-Yves Tinevez and Michael Zinsmaier.
---
- !mapping
action: go to bookmark
contexts: [bdv]
triggers: [not mapped]
- !mapping
action: toggle source visibility 9
contexts: [bdv]
triggers: [not mapped]
- !mapping

PoolObject Attributes and Properties

PoolObjects can have attributes and properties assigned. Attributes are member variables stored with the object (flattened into the object storage). Properties are stored in property maps, external to the object.

Because they need to be flattened, attributes must be composed of primitive types and must always have the same size in memory. An example would be a double[3] that stores a coordinate vector. In contrast, properties can have any type, for example a String to store the name of an object.

Attributes can be assigned in the "constructor" (the init() method) of a PoolObject and therefore they can be effectively final. Properties are always initially unset and assigned after the PoolObject has been constructed.

Properties, in contrast to attributes, can be used for non-PoolObjects as well. The equivalent of an attribute for non-PoolObjects is simply a member variable.

package bdv.examples.interactivedog;
import java.util.ArrayList;
import java.util.List;
import net.imglib2.RealInterval;
import net.imglib2.RealLocalizable;
import net.imglib2.RealPoint;
import net.imglib2.RealRandomAccess;
import net.imglib2.RealRandomAccessible;
#
# A fatal error has been detected by the Java Runtime Environment:
#
# SIGSEGV (0xb) at pc=0x0000000113461582, pid=51866, tid=0x000000000000afa3
#
# JRE version: OpenJDK Runtime Environment (8.0_102-b14) (build 1.8.0_102-b14)
# Java VM: OpenJDK 64-Bit Server VM (25.102-b14 mixed mode bsd-amd64 compressed oops)
# Problematic frame:
# J 614 C2 net.imglib2.display.ScaledARGBConverter$ARGB.convert(Ljava/lang/Object;Ljava/lang/Object;)V (13 bytes) @ 0x0000000113461582 [0x0000000113461500+0x82]
#
[ERROR] Exception during event handling:
[Event] org.scijava.app.event.StatusEvent
context = org.scijava.Context@4a12bb6f
consumed = false
progress = -1
maximum = -1
status = Running command: Up-to-date check
warning = false
[Subscriber] org.scijava.ui.DefaultUIService [priority = 0.0]
[Method] protected void org.scijava.ui.DefaultUIService.onEvent(org.scijava.app.event.StatusEvent)