public abstract class AbstractTrackAnalyzer extends Object implements TrackAnalyzer
Constructor and Description |
---|
AbstractTrackAnalyzer(String key,
String name,
List<String> features,
Map<String,String> featureNames,
Map<String,String> featureShortNames,
Map<String,Dimension> featureDimensions,
Map<String,Boolean> isInts) |
Modifier and Type | Method and Description |
---|---|
protected abstract void |
analyze(Integer trackID,
Model model) |
Map<String,Dimension> |
getFeatureDimensions()
Returns the map of feature dimension this analyzer can compute.
|
Map<String,String> |
getFeatureNames()
Returns the map of names for any feature this analyzer can compute.
|
List<String> |
getFeatures()
Returns the list of features this analyzer can compute.
|
Map<String,String> |
getFeatureShortNames()
Returns the map of short names for any feature the analyzer
can compute.
|
ImageIcon |
getIcon()
Returns the icon for this action.
|
String |
getInfoText()
Returns a html string containing a descriptive information about this
module.
|
Map<String,Boolean> |
getIsIntFeature()
Returns the map that states whether the key feature is a feature that
returns integers.
|
String |
getKey()
Returns a unique identifier of this module.
|
String |
getName()
Returns the human-compliant name of this module.
|
int |
getNumThreads() |
long |
getProcessingTime() |
boolean |
isLocal()
Returns
true if this analyzer is a local analyzer. |
boolean |
isManualFeature()
Returns whether all the features declared in this
FeatureAnalyzer are manual features. |
void |
process(Collection<Integer> trackIDs,
Model model)
Compute the features of the track whose ID is given.
|
void |
setNumThreads() |
void |
setNumThreads(int numThreads) |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
forbidMultithreading
public long getProcessingTime()
getProcessingTime
in interface Benchmark
public final boolean isManualFeature()
FeatureAnalyzer
FeatureAnalyzer
are manual features.
Manual features are not calculated normally using an analyzer, nor
cleared at each recalculation. Another classes are responsible to set
their value. The concrete FeatureAnalyzer
calculation method is
not called by TrackMate when a change happens to the model.
Therefore the calculation routine of the FeatureAnalyzer
can be
used to discard the manually stored value of these features.
isManualFeature
in interface FeatureAnalyzer
true
if the features declared in this analyzer are
manual feature.public ImageIcon getIcon()
TrackMateModule
null
.getIcon
in interface TrackMateModule
null
to be safely ignored.public String getInfoText()
TrackMateModule
getInfoText
in interface TrackMateModule
public int getNumThreads()
getNumThreads
in interface MultiThreaded
public void setNumThreads()
setNumThreads
in interface MultiThreaded
public void setNumThreads(int numThreads)
setNumThreads
in interface MultiThreaded
public final boolean isLocal()
TrackAnalyzer
true
if this analyzer is a local analyzer. That is:
a modification that affects only one track requires the track features to
be re-calculated only for this track. If false
, any model
modification involving edges will trigger a recalculation over all the
visible tracks of the model.
Example of a local track feature: the number of spots in a track. It does not depend on the number of spots in other tracks.
Example of a non-local track feature: the rank of the track sorted by its number of spots, compared to other tracks.
isLocal
in interface TrackAnalyzer
public String getKey()
TrackMateModule
getKey
in interface TrackMateModule
public String getName()
TrackMateModule
getName
in interface TrackMateModule
public Map<String,Dimension> getFeatureDimensions()
FeatureAnalyzer
getFeatureDimensions
in interface FeatureAnalyzer
public Map<String,String> getFeatureNames()
FeatureAnalyzer
getFeatureNames
in interface FeatureAnalyzer
public List<String> getFeatures()
FeatureAnalyzer
getFeatures
in interface FeatureAnalyzer
public Map<String,String> getFeatureShortNames()
FeatureAnalyzer
getFeatureShortNames
in interface FeatureAnalyzer
public Map<String,Boolean> getIsIntFeature()
FeatureAnalyzer
true
, then special treatment is applied
when saving/loading, etc. for clarity and precision.getIsIntFeature
in interface FeatureAnalyzer
public void process(Collection<Integer> trackIDs, Model model)
TrackAnalyzer
process
in interface TrackAnalyzer
trackIDs
- the IDs of the track whose features are to be calculated.model
- the Model
from which actual tracks are to be
retrieved.Copyright © 2015–2021 Fiji. All rights reserved.