Class ScanHeadConfiguration
Configuration parameters for a physical scan head.
Namespace: JoeScan.Pinchot
Assembly: JoeScan.Pinchot.dll
Syntax
public class ScanHeadConfiguration : ICloneable
Remarks
This class provides properties and methods for setting and getting of configuration parameters for a physical scan head. Once created and configured, a ScanHeadConfiguration object is passed to a ScanHead using Configure(ScanHeadConfiguration).
Constructors
| Improve this Doc View SourceScanHeadConfiguration()
Initializes a new instance of the ScanHeadConfiguration class.
Declaration
public ScanHeadConfiguration()
Properties
| Improve this Doc View SourceDefaultCameraExposureTimeUs
Gets the starting value of the image mode auto-exposure algorithm in microseconds. Use SetCameraExposureTime(UInt32, UInt32, UInt32) to set all camera exposure values. This allows the API to validate that the parameters are valid and consistent.
Declaration
public uint DefaultCameraExposureTimeUs { get; }
Property Value
Type | Description |
---|---|
UInt32 | The starting value of the image mode auto-exposure algorithm in microseconds. |
See Also
| Improve this Doc View SourceDefaultLaserOnTimeUs
Gets the starting value of the auto-exposure algorithm in microseconds. Use SetLaserOnTime(UInt32, UInt32, UInt32) to set all laser timing control values. This allows the API to validate that the parameters are valid and consistent.
Declaration
public uint DefaultLaserOnTimeUs { get; }
Property Value
Type | Description |
---|---|
UInt32 | The starting value of the auto-exposure algorithm in microseconds. |
See Also
| Improve this Doc View SourceIdleScanPeriodUs
Gets or sets the rate at which profiles should be queued when in an idle state. See MinimumEncoderTravel on how a scan head can drop to an idle state.
Declaration
public uint IdleScanPeriodUs { get; set; }
Property Value
Type | Description |
---|---|
UInt32 | The scan period in microseconds of a scan head in an idle state. |
LaserDetectionThreshold
Gets or sets the minimum brightness a pixel must have to be considered a valid data point.
Value Range: 0-1023
Default : 120
Declaration
public uint LaserDetectionThreshold { get; set; }
Property Value
Type | Description |
---|---|
UInt32 | The minimum brightness a pixel must have to be considered a valid data point. |
MaxCameraExposureTimeUs
Gets the upper bound of the image mode auto-exposure algorithm in microseconds. Use SetCameraExposureTime(UInt32, UInt32, UInt32) to set all camera exposure values. This allows the API to validate that the parameters are valid and consistent.
Declaration
public uint MaxCameraExposureTimeUs { get; }
Property Value
Type | Description |
---|---|
UInt32 | The upper bound of the image mode auto-exposure algorithm in microseconds. |
See Also
| Improve this Doc View SourceMaxLaserOnTimeUs
Gets the upper bound of the auto-exposure algorithm in microseconds. Use SetLaserOnTime(UInt32, UInt32, UInt32) to set all laser timing control values. This allows the API to validate that the parameters are valid and consistent.
Declaration
public uint MaxLaserOnTimeUs { get; }
Property Value
Type | Description |
---|---|
UInt32 | The upper bound of the auto-exposure algorithm in microseconds. |
See Also
| Improve this Doc View SourceMinCameraExposureTimeUs
Gets the lower bound of the image mode auto-exposure algorithm in microseconds. Use SetCameraExposureTime(UInt32, UInt32, UInt32) to set all camera exposure values. This allows the API to validate that the parameters are valid and consistent.
Declaration
public uint MinCameraExposureTimeUs { get; }
Property Value
Type | Description |
---|---|
UInt32 | The lower bound of the image mode auto-exposure algorithm in microseconds. |
See Also
| Improve this Doc View SourceMinimumEncoderTravel
Gets or sets the minimum number of encoder counts that must occur between the previous and the current profile to drop the scan head into an idle state. In an idle state, the rate at which profiles are queued is determined by IdleScanPeriodUs.
Declaration
public uint MinimumEncoderTravel { get; set; }
Property Value
Type | Description |
---|---|
UInt32 | The minimum number of encoder counts between profiles needed to keep the scan head out of an idle state. |
Remarks
Only Main is observed.
MinLaserOnTimeUs
Gets the lower bound of the auto-exposure algorithm in microseconds. Use SetLaserOnTime(UInt32, UInt32, UInt32) to set all laser timing control values. This allows the API to validate that the parameters are valid and consistent.
Declaration
public uint MinLaserOnTimeUs { get; }
Property Value
Type | Description |
---|---|
UInt32 | The lower bound of the auto-exposure algorithm in microseconds. |
See Also
| Improve this Doc View SourceSaturationPercentage
Gets or sets the maximum percentage of valid pixels in a scan that are allowed to be
brighter than SaturationThreshold.
Default: 30 (percent)
Declaration
public uint SaturationPercentage { get; set; }
Property Value
Type | Description |
---|---|
UInt32 | The maximum percentage of valid pixels in a scan that are allowed to be brighter than SaturationThreshold. |
SaturationThreshold
Gets or sets the minimum brightness a pixel must have to be considered saturated.
Value Range: 0-1023
Default : 800
Declaration
public uint SaturationThreshold { get; set; }
Property Value
Type | Description |
---|---|
UInt32 | The minimum brightness a pixel must have to be considered saturated. |
Methods
| Improve this Doc View SourceClone()
ScanHeadConfiguration implements
Declaration
public object Clone()
Returns
Type | Description |
---|---|
Object | A shallow copy of the ScanHeadConfiguration object. |
SetCameraExposureTime(UInt32, UInt32, UInt32)
Sets the clamping values for the image mode auto-exposure algorithm in microseconds. To disable auto-exposure,
set minTimeUs
, defaultTimeUs
and maxTimeUs
to the same value.
Declaration
public void SetCameraExposureTime(uint minTimeUs, uint defaultTimeUs, uint maxTimeUs)
Parameters
Type | Name | Description |
---|---|---|
UInt32 | minTimeUs | Lower bound for the image mode auto-exposure algorithm. Value in microseconds.
Must be smaller than or equal to |
UInt32 | defaultTimeUs | Starting value for the image mode auto-exposure algorithm. Value in microseconds.
Must be smaller than or equal to |
UInt32 | maxTimeUs | Upper bound for the image mode auto-exposure algorithm. Value in microseconds.
Must be greater than |
SetLaserOnTime(UInt32, UInt32, UInt32)
Sets the clamping values for the auto-exposure algorithm in microseconds. To disable auto-exposure,
set minTimeUs
, defaultTimeUs
and maxTimeUs
to the same value.
Declaration
public void SetLaserOnTime(uint minTimeUs, uint defaultTimeUs, uint maxTimeUs)
Parameters
Type | Name | Description |
---|---|---|
UInt32 | minTimeUs | Lower bound for the auto-exposure algorithm. Value in microseconds.
Must be smaller than or equal to |
UInt32 | defaultTimeUs | Starting value for the auto-exposure algorithm. Value in microseconds.
Must be smaller than or equal to |
UInt32 | maxTimeUs | Upper bound for the auto-exposure algorithm. Value in microseconds.
Must be greater than |