public class BasicExtraction extends Object implements stream.Processor
This processor also serves as a basic class for extraction processors
Modifier and Type | Field and Description |
---|---|
String |
dataKey |
GainService |
gainService |
int |
integrationWindow |
String |
outputKeyMaxAmplPos |
String |
outputKeyPhotonCharge |
int |
rangeHalfHeightWindow |
int |
rangeSearchWindow |
int |
startSearchWindow |
int |
validMinimalSlice |
Constructor and Description |
---|
BasicExtraction() |
Modifier and Type | Method and Description |
---|---|
double |
calculateIntegral(int px,
int startingPosition,
int integralSize,
int roi,
double[] data) |
int |
calculateMaxPosition(int px,
int start,
int rightBorder,
int roi,
double[] data) |
int |
calculatePositionHalfHeight(int px,
int maxPos,
int leftBorder,
int roi,
double[] data)
In an area ]amplitudePositon-leftBorder,amplitudePosition] searches for the last position, where data[pos] is < 0.5 *
maxAmplitude.
|
stream.Data |
process(stream.Data item) |
@Parameter(required=true, description="key to the data array") public String dataKey
@Parameter(required=true, description="outputKey for the position of the max amplitudes") public String outputKeyMaxAmplPos
@Parameter(required=true, description="outputKey for the calculated photoncharge") public String outputKeyPhotonCharge
@Service(description="Gain Service that delivers the integral gains") public GainService gainService
@Parameter(required=false, description="start slice of the search window for the max amplitude", defaultValue="35") public int startSearchWindow
@Parameter(required=false, description="range of the search window for the max amplitude", defaultValue="90") public int rangeSearchWindow
@Parameter(required=false, description="range of the search window for the half heigt position", defaultValue="25") public int rangeHalfHeightWindow
@Parameter(required=false, description="range of the integration window", defaultValue="30") public int integrationWindow
@Parameter(required=false, description="minimal slice with valid values (we want to ignore slices below this value", defaultValue="10") public int validMinimalSlice
public stream.Data process(stream.Data item)
process
in interface stream.Processor
public int calculateMaxPosition(int px, int start, int rightBorder, int roi, double[] data)
public int calculatePositionHalfHeight(int px, int maxPos, int leftBorder, int roi, double[] data)
px
- maxPos
- leftBorder
- roi
- data
- public double calculateIntegral(int px, int startingPosition, int integralSize, int roi, double[] data)
Copyright © 2019. All rights reserved.