Class JoeScan::Pinchot::ScanHeadConfiguration¶
ClassList > JoeScan > Pinchot > ScanHeadConfiguration
Configuration parameters for a physical scan head.
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 ScanHead.Configure.
Inherits the following classes: ICloneable
Public Properties¶
| Type | Name |
|---|---|
| uint | DefaultCameraExposureTimeUs Gets the starting value of the image mode auto-exposure algorithm in microseconds. |
| uint | DefaultLaserOnTimeUs Gets the starting value of the auto-exposure algorithm in microseconds. Use SetLaserOnTime to set all laser timing control values. This allows the API to validate that the parameters are valid and consistent. |
| uint | IdleScanPeriodUs 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. |
| uint | LaserDetectionThreshold Gets or sets the minimum brightness a pixel must have to be considered a valid data point. Value Range: 0-1023 Default : 120. |
| uint | MaxCameraExposureTimeUs Gets the upper bound of the image mode auto-exposure algorithm in microseconds. |
| uint | MaxLaserOnTimeUs Gets the upper bound of the auto-exposure algorithm in microseconds. Use SetLaserOnTime to set all laser timing control values. This allows the API to validate that the parameters are valid and consistent. |
| uint | MinCameraExposureTimeUs Gets the lower bound of the image mode auto-exposure algorithm in microseconds. |
| uint | MinLaserOnTimeUs Gets the lower bound of the auto-exposure algorithm in microseconds. Use SetLaserOnTime to set all laser timing control values. This allows the API to validate that the parameters are valid and consistent. |
| uint | MinimumEncoderTravel 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 . |
| uint | SaturationPercentage Gets or sets the maximum percentage of valid pixels in a scan that are allowed to be brighter than SaturationThreshold . Default: 30 (percent) |
| uint | SaturationThreshold Gets or sets the minimum brightness a pixel must have to be considered saturated. Value Range: 0-1023 Default : 800. |
Public Functions¶
| Type | Name |
|---|---|
| object | Clone () ScanHeadConfiguration implements ICloneable, which is used to make sure that once a ScanHeadConfiguration is set on a ScanHead via ScanHead.Configure , it will not change if the original is changed. |
| ScanHeadConfiguration () Initializes a new instance of the ScanHeadConfiguration class. |
|
| void | SetCameraExposureTime (uint minTimeUs, uint defaultTimeUs, uint maxTimeUs) 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. |
| void | SetLaserOnTime (uint minTimeUs, uint defaultTimeUs, uint maxTimeUs) Sets the clamping values for the auto-exposure algorithm in microseconds. To disable auto-exposure, set minTimeUs ,__defaultTimeUs and__maxTimeUs to the same value. |
Public Properties Documentation¶
DefaultCameraExposureTimeUs¶
Gets the starting value of the image mode auto-exposure algorithm in microseconds.
uint DefaultCameraExposureTimeUs;
The starting value of the image mode auto-exposure algorithm in microseconds.
DefaultLaserOnTimeUs¶
Gets the starting value of the auto-exposure algorithm in microseconds. Use SetLaserOnTime to set all laser timing control values. This allows the API to validate that the parameters are valid and consistent.
uint DefaultLaserOnTimeUs;
The starting value of the auto-exposure algorithm in microseconds.
See also: SetLaserOnTime
IdleScanPeriodUs¶
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.
uint IdleScanPeriodUs;
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.
uint LaserDetectionThreshold;
The minimum brightness a pixel must have to be considered a valid data point.
Exception:
ArgumentOutOfRangeExceptionValue out of range (0 - 1023)
MaxCameraExposureTimeUs¶
Gets the upper bound of the image mode auto-exposure algorithm in microseconds.
uint MaxCameraExposureTimeUs;
The upper bound of the image mode auto-exposure algorithm in microseconds.
MaxLaserOnTimeUs¶
Gets the upper bound of the auto-exposure algorithm in microseconds. Use SetLaserOnTime to set all laser timing control values. This allows the API to validate that the parameters are valid and consistent.
uint MaxLaserOnTimeUs;
The upper bound of the auto-exposure algorithm in microseconds.
See also: SetLaserOnTime
MinCameraExposureTimeUs¶
Gets the lower bound of the image mode auto-exposure algorithm in microseconds.
uint MinCameraExposureTimeUs;
The lower bound of the image mode auto-exposure algorithm in microseconds.
MinLaserOnTimeUs¶
Gets the lower bound of the auto-exposure algorithm in microseconds. Use SetLaserOnTime to set all laser timing control values. This allows the API to validate that the parameters are valid and consistent.
uint MinLaserOnTimeUs;
The lower bound of the auto-exposure algorithm in microseconds.
See also: SetLaserOnTime
MinimumEncoderTravel¶
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 .
uint MinimumEncoderTravel;
Only Encoder.Main is observed.
The minimum number of encoder counts between profiles needed to keep the scan head out of an idle state.
SaturationPercentage¶
Gets or sets the maximum percentage of valid pixels in a scan that are allowed to be brighter than SaturationThreshold . Default: 30 (percent)
uint SaturationPercentage;
The maximum percentage of valid pixels in a scan that are allowed to be brighter than SaturationThreshold.
Exception:
ArgumentOutOfRangeExceptionValue out of range (1 - 100)
SaturationThreshold¶
Gets or sets the minimum brightness a pixel must have to be considered saturated. Value Range: 0-1023 Default : 800.
uint SaturationThreshold;
The minimum brightness a pixel must have to be considered saturated.
Exception:
ArgumentOutOfRangeExceptionValue out of range (0 - 1023)
Public Functions Documentation¶
Clone¶
ScanHeadConfiguration implements ICloneable, which is used to make sure that once a ScanHeadConfiguration is set on a ScanHead via ScanHead.Configure , it will not change if the original is changed.
object Clone()
Returns:
A shallow copy of the ScanHeadConfiguration object.
ScanHeadConfiguration [1/2]¶
Initializes a new instance of the ScanHeadConfiguration class.
ScanHeadConfiguration()
SetCameraExposureTime¶
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.
void SetCameraExposureTime(
uint minTimeUs,
uint defaultTimeUs,
uint maxTimeUs
)
Parameters:
minTimeUsLower bound for the image mode auto-exposure algorithm. Value in microseconds. Must be smaller than or equal to defaultTimeUs . Default: 10,000μsdefaultTimeUsStarting value for the image mode auto-exposure algorithm. Value in microseconds. Must be smaller than or equal to maxTimeUs . Default: 500,000μsmaxTimeUsUpper bound for the image mode auto-exposure algorithm. Value in microseconds. Must be greater than defaultTimeUs . Default: 1,000,000μs
Exception:
ArgumentExceptionminTimeUs must be less or equal to defaultTimeUs -or- maxTimeUs must be greater or equal to defaultTimeUs
SetLaserOnTime¶
Sets the clamping values for the auto-exposure algorithm in microseconds. To disable auto-exposure, set minTimeUs ,__defaultTimeUs and__maxTimeUs to the same value.
void SetLaserOnTime(
uint minTimeUs,
uint defaultTimeUs,
uint maxTimeUs
)
Parameters:
minTimeUsLower bound for the auto-exposure algorithm. Value in microseconds. Must be smaller than or equal to defaultTimeUs . Default: 100μsdefaultTimeUsStarting value for the auto-exposure algorithm. Value in microseconds. Must be smaller than or equal to maxTimeUs . Default: 500μsmaxTimeUsUpper bound for the auto-exposure algorithm. Value in microseconds. Must be greater than defaultTimeUs . Default: 1000μs
Exception:
ArgumentExceptionminTimeUs must be less or equal to defaultTimeUs -or- maxTimeUs must be greater or equal to defaultTimeUs