Search in sources :

Example 6 with TIntIntHashMap

use of gnu.trove.map.hash.TIntIntHashMap in project GDSC-SMLM by aherbert.

the class FilterMolecules method run.

@Override
public void run(String arg) {
    SmlmUsageTracker.recordPlugin(this.getClass(), arg);
    if (MemoryPeakResults.isMemoryEmpty()) {
        IJ.error(TITLE, "No localisations in memory");
        return;
    }
    if (!showDialog()) {
        return;
    }
    // Load the results
    MemoryPeakResults results = ResultsManager.loadInputResults(settings.inputOption, false, null, null);
    if (MemoryPeakResults.isEmpty(results)) {
        IJ.error(TITLE, "No results could be loaded");
        return;
    }
    // Allow reordering when filtering
    results = results.copy();
    if (settings.removeSingles) {
        results.removeIf(p -> p.getId() <= 0);
        final TIntIntHashMap count = new TIntIntHashMap(results.size());
        results.forEach((PeakResultProcedure) r -> count.adjustOrPutValue(r.getId(), 1, 1));
        results.removeIf(p -> count.get(p.getId()) == 1);
        if (results.isEmpty()) {
            IJ.error(TITLE, "No results after filtering singles");
            return;
        }
    }
    switch(settings.filterMode) {
        case D:
            new FilterDiffusionCoefficient().run(results);
            break;
        default:
            IJ.error(TITLE, "Unknown filter mode: " + settings.filterMode);
    }
}
Also used : PrecisionResultProcedure(uk.ac.sussex.gdsc.smlm.results.procedures.PrecisionResultProcedure) Arrays(java.util.Arrays) TIntArrayList(gnu.trove.list.array.TIntArrayList) HistogramPlotBuilder(uk.ac.sussex.gdsc.core.ij.HistogramPlot.HistogramPlotBuilder) IdFramePeakResultComparator(uk.ac.sussex.gdsc.smlm.results.sort.IdFramePeakResultComparator) StoredData(uk.ac.sussex.gdsc.core.utils.StoredData) WindowOrganiser(uk.ac.sussex.gdsc.core.ij.plugin.WindowOrganiser) PeakResult(uk.ac.sussex.gdsc.smlm.results.PeakResult) AtomicReference(java.util.concurrent.atomic.AtomicReference) MemoryPeakResults(uk.ac.sussex.gdsc.smlm.results.MemoryPeakResults) NonBlockingExtendedGenericDialog(uk.ac.sussex.gdsc.core.ij.gui.NonBlockingExtendedGenericDialog) SortUtils(uk.ac.sussex.gdsc.core.utils.SortUtils) PeakResultProcedure(uk.ac.sussex.gdsc.smlm.results.procedures.PeakResultProcedure) MathUtils(uk.ac.sussex.gdsc.core.utils.MathUtils) SoftLock(uk.ac.sussex.gdsc.core.utils.SoftLock) Statistics(uk.ac.sussex.gdsc.core.utils.Statistics) ExecutorService(java.util.concurrent.ExecutorService) SettingsManager(uk.ac.sussex.gdsc.smlm.ij.settings.SettingsManager) Label(java.awt.Label) ExtendedGenericDialog(uk.ac.sussex.gdsc.core.ij.gui.ExtendedGenericDialog) InputSource(uk.ac.sussex.gdsc.smlm.ij.plugins.ResultsManager.InputSource) TIntIntHashMap(gnu.trove.map.hash.TIntIntHashMap) NamedObject(uk.ac.sussex.gdsc.smlm.data.NamedObject) DistanceUnit(uk.ac.sussex.gdsc.smlm.data.config.UnitProtos.DistanceUnit) TextUtils(uk.ac.sussex.gdsc.core.utils.TextUtils) Plot(ij.gui.Plot) Executors(java.util.concurrent.Executors) TIntHashSet(gnu.trove.set.hash.TIntHashSet) TimeUnit(uk.ac.sussex.gdsc.smlm.data.config.UnitProtos.TimeUnit) Percentile(org.apache.commons.math3.stat.descriptive.rank.Percentile) HistogramPlot(uk.ac.sussex.gdsc.core.ij.HistogramPlot) ImageJUtils(uk.ac.sussex.gdsc.core.ij.ImageJUtils) TDoubleArrayList(gnu.trove.list.array.TDoubleArrayList) IJ(ij.IJ) SimpleArrayUtils(uk.ac.sussex.gdsc.core.utils.SimpleArrayUtils) Line(ij.gui.Line) PlugIn(ij.plugin.PlugIn) TypeConverter(uk.ac.sussex.gdsc.core.data.utils.TypeConverter) Roi(ij.gui.Roi) JumpDistanceAnalysis(uk.ac.sussex.gdsc.smlm.fitting.JumpDistanceAnalysis) MemoryPeakResults(uk.ac.sussex.gdsc.smlm.results.MemoryPeakResults) TIntIntHashMap(gnu.trove.map.hash.TIntIntHashMap)

Example 7 with TIntIntHashMap

use of gnu.trove.map.hash.TIntIntHashMap in project JGibbLabeledLDA by myleott.

the class LDADataset method setDictionary.

public void setDictionary(Dictionary globalDict) {
    lid2gid = new TIntIntHashMap();
    this.globalDict = globalDict;
}
Also used : TIntIntHashMap(gnu.trove.map.hash.TIntIntHashMap)

Example 8 with TIntIntHashMap

use of gnu.trove.map.hash.TIntIntHashMap in project Terasology by MovingBlocks.

the class AwtKeyboardDevice method awtKeyCallback.

/**
 * Callback receive key input events.
 */
public void awtKeyCallback(int key, ButtonState state, int location) {
    int teraKey;
    TIntIntHashMap extraMap = AWT_TO_TERA_EXTRA.get(key);
    if (extraMap != null) {
        teraKey = extraMap.get(key);
    } else {
        teraKey = AWT_TO_TERA_MAPPING.get(key);
    }
    Input input = InputType.KEY.getInput(teraKey);
    if (state == ButtonState.DOWN) {
        buttonStates.add(teraKey);
    } else if (state == ButtonState.UP) {
        buttonStates.remove(teraKey);
    }
    rawKeyQueue.offer(new RawKeyboardAction(input, state));
}
Also used : Input(org.terasology.input.Input) TIntIntHashMap(gnu.trove.map.hash.TIntIntHashMap) RawKeyboardAction(org.terasology.input.device.RawKeyboardAction)

Example 9 with TIntIntHashMap

use of gnu.trove.map.hash.TIntIntHashMap in project scheduler by btrplace.

the class Instances method makeVMIndex.

/**
 * Make an index revealing the position of each VM in a collection
 * of disjoint instances
 *
 * @param instances the collection to browse. Instances are supposed to be disjoint
 * @return the index of every VM. Format {@code VM#id() -> position}
 */
public static TIntIntHashMap makeVMIndex(Collection<Instance> instances) {
    TIntIntHashMap index = new TIntIntHashMap();
    int p = 0;
    for (Instance i : instances) {
        Mapping m = i.getModel().getMapping();
        for (Node n : m.getOnlineNodes()) {
            for (VM v : m.getRunningVMs(n)) {
                index.put(v.id(), p);
            }
            for (VM v : m.getSleepingVMs(n)) {
                index.put(v.id(), p);
            }
        }
        for (VM v : m.getReadyVMs()) {
            index.put(v.id(), p);
        }
        p++;
    }
    return index;
}
Also used : Instance(org.btrplace.model.Instance) Node(org.btrplace.model.Node) VM(org.btrplace.model.VM) Mapping(org.btrplace.model.Mapping) TIntIntHashMap(gnu.trove.map.hash.TIntIntHashMap)

Example 10 with TIntIntHashMap

use of gnu.trove.map.hash.TIntIntHashMap in project scheduler by btrplace.

the class Instances method makeNodeIndex.

/**
 * Make an index revealing the position of each node in a collection
 * of disjoint instances
 *
 * @param instances the collection to browse. Instances are supposed to be disjoint
 * @return the index of every node. Format {@code Node#id() -> position}
 */
public static TIntIntHashMap makeNodeIndex(Collection<Instance> instances) {
    TIntIntHashMap index = new TIntIntHashMap();
    int p = 0;
    for (Instance i : instances) {
        Mapping m = i.getModel().getMapping();
        for (Node n : m.getOfflineNodes()) {
            index.put(n.id(), p);
        }
        for (Node n : m.getOnlineNodes()) {
            index.put(n.id(), p);
        }
        p++;
    }
    return index;
}
Also used : Instance(org.btrplace.model.Instance) Node(org.btrplace.model.Node) Mapping(org.btrplace.model.Mapping) TIntIntHashMap(gnu.trove.map.hash.TIntIntHashMap)

Aggregations

TIntIntHashMap (gnu.trove.map.hash.TIntIntHashMap)45 ArrayList (java.util.ArrayList)26 Test (org.testng.annotations.Test)22 Instance (org.btrplace.model.Instance)18 Model (org.btrplace.model.Model)15 MinMTTR (org.btrplace.model.constraint.MinMTTR)15 DefaultModel (org.btrplace.model.DefaultModel)14 HashSet (java.util.HashSet)13 Node (org.btrplace.model.Node)13 VM (org.btrplace.model.VM)13 TIntArrayList (gnu.trove.list.array.TIntArrayList)5 TIntIntMap (gnu.trove.map.TIntIntMap)5 TIntHashSet (gnu.trove.set.hash.TIntHashSet)3 OutputPort (cc.redberry.pipe.OutputPort)2 TIntIntIterator (gnu.trove.iterator.TIntIntIterator)2 TDoubleArrayList (gnu.trove.list.array.TDoubleArrayList)2 TFloatArrayList (gnu.trove.list.array.TFloatArrayList)2 IOException (java.io.IOException)2 Random (java.util.Random)2 Mapping (org.btrplace.model.Mapping)2