Skip to content

Instantly share code, notes, and snippets.

View hinerm's full-sized avatar

Mark Hiner hinerm

View GitHub Profile
% @matrix Image
% @matrix dSpectrum
% @matrix aSpectrum
% @matrix tSpectrum
% @double dQY
% @double aQY
% @double BackGround
% @double Threshold
% @OUTPUT double[] KDA
% @OUTPUT double[] KAD
[INFO] Scanning for projects...
[INFO]
[INFO] Using the builder org.apache.maven.lifecycle.internal.builder.singlethreaded.SingleThreadedBuilder with a thread count of 1
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Top-level Fiji project 2.0.0-beta-1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- scijava-maven-plugin:0.2.1-SNAPSHOT:verify-no-snapshots (default-cli) @ fiji ---
[ERROR] Could not resolve dependency: Dependency {groupId=sc.fiji, artifactId=fiji-lib, version=2.0.0, type=jar} of path:
Fiji is GPL v3
SCIFIO is bsd2
scifio-bf-compat is gplv2
scifio-omero is gplv2
scifio-tutorials is cc0
scifio-lifesci is gplv2
scijava is bsd2
scripting-r is gplv2
<?xml version="1.0" encoding="UTF-8"?>
<?JvmMonitor version="3.8.1"?>
<cpu-profile date="2015/01/25 12:09:02" runtime="8608@localhost" mainClass="org.eclipse.jdt.internal.junit.runner.RemoteTestRunner" arguments="-Dscijava.log.level=error -Dfile.encoding=UTF-8">
<thread name="main">
<frame name="io.scif.services.SCIFIODatasetService.create(net.imagej.ImgPlus)" cnt="1" time="0">
<frame name="io.scif.services.SCIFIODatasetService.datasetService()" cnt="1" time="0"/>
</frame>
<frame name="io.scif.services.DefaultDatasetIOService.open(java.lang.String)" cnt="7676" time="175061">
<frame name="io.scif.config.SCIFIOConfig.imgOpenerSetIndex(int)" cnt="7676" time="0">
<frame name="io.scif.config.SCIFIOConfig.imgOpenerSetRange(io.scif.img.Range)" cnt="7676" time="0"/>
@hinerm
hinerm / Main.java
Created June 18, 2015 17:50
Test for URLClassLoader.close
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.net.URL;
import java.net.URLClassLoader;
public class Main {
@hinerm
hinerm / Main.java
Created June 18, 2015 18:14
Test the ability of a jar to overwrite itself
package org.scijava;
import java.io.FileOutputStream;
import java.io.IOException;
public class Main {
public static void main(String... args) throws IOException {
//FIXME: set this path to the location of the jar containing this main class.
String url = "C:/Users/Johannes/loci/test/target/scijava-tests-2.43.1-SNAPSHOT.jar";
@hinerm
hinerm / BFITKTest.cxxitkLSMBioFormatsImageIOTest.cxx
Created October 16, 2012 17:55
bf-itk-pipe time splitting example
/*
* #%L
* Bio-Formats plugin for the Insight Toolkit.
* %%
* Copyright (C) 2010 - 2012 Insight Software Consortium, and Open Microscopy
* Environment:
* - Board of Regents of the University of Wisconsin-Madison
* - Glencoe Software, Inc.
* - University of Dundee
* %%
@hinerm
hinerm / soapes.ijm
Last active November 12, 2015 14:53
IJ skeleton/foci analysis
// search for TODO sections to see parameters that still need tuning
//This macro takes a 3-channel 16 bit immunofluorescance image as input.
// channel 1 (red): SC
// channel 2 (green): foci
// channel 3 (blue): centromeres
//The primary goal of this macro is to identify rois covering main cell features,
//measure the total distance of skeletonized SC, number of foci on each SC and distance from foci to the centromere on the same skeleton
// Requirements:
@hinerm
hinerm / Leak.txt
Last active December 8, 2015 15:05
Python memory leak
The following images show memory leaks due to mapped images not being cleaned up.
The MemoryOverview shows two hard reference paths keeping byte[] instances alive (blue and green). They both go through python classes to a HashMap.
The Objects1 and Objects2 images show these two paths expanded and reveals that we likely have two paths to the same map, and thus to the same set of objects.
Persumably our Python code is making these mappings but not cleaning up after them. Persumably there is also a hard reference to these images in ImageJ itself, so it would make sense on the Python side to cache WeakReferences to the images - or add some callback that ensures these mappings are eventually removed (or manually clean the maps at the end of the script).
To find the problematic python code we can look for the relevant variable names (snapshotPixels, rLUT1, bLUT1, gLUT1, etc...)
@hinerm
hinerm / hcheck.sh
Last active December 15, 2015 04:59
Script for finding valid commits on a git branch.
#!/bin/bash
#
# History checking script
#
# This script checks out each commit that
# exists on a dev_branch but not a base_branch.
# "ant clean tools" is run on that branch,
# and a log file is written with the results
# of the build to
# <log_dir>/<PASSED/FAILED><commit hash><commit message>.log