|
GoWebScan API
|
Represents a container for system-level parameters which are translated from user parameters set in GoWebScanSettings. This class maps the orientation of the system to a standard orientation, performs the X-axis layout of sensors, determines algorithm parameters based on constants and user parameters, and determines other various system parameters.
In standard orientation, the X-axis increases from left to right, the Y-axis increases away from the observer, and the Z-axis increases towards the sensor plane. Each sensor X-axis is aligned to the system X-axis, the sensor Y-axis is opposite to the system Y-axis, and the sensor Z-axis is opposite to the system Z-axis. Vision lags profile; vision Y-values are offset by a value derived from the sensors GoGeoCal file for coarse alignment.
X-axis layout consists of using the values in the user settings (GoWebScanSettings), the system calibration (GoWebScanCal), and the sensor's GoGeoCal file to map the profile, vision, and tracheid data from each node (single camera) into system X-coordinates. The mapping uses the node's X center (calculated by the system), node X-offset (from the system calibration), vision X-center (from GoGeoCal), sensor X-center (provided by the user if GoWebScanSettings_UseXCenters() is enabled or calculated by the system), and the server X-adjustment if using multiple servers.
After the X-centres of each node are determined, the start and end boundaries of each node are determined. These boundaries define the region in system space in which the node can make a contribution to the final result. If the user has selected a non-zero overlap amount, then the fields of view of adjacent nodes can overlap by this amount. The overlapping regions are later blended together.
Algorithm parameters provided by the user in GoWebScanSettings are broken down into lower level parameters.
GoWebScanConfig organizes the configuration at the system, group, sensor, and node levels. Configuration of the groups within the system are represented by the GoWebScanConfigGroup class, sensors by the GoWebScanConfigSensor class, and nodes by the GoWebScanConfigNode class. GoWebScanConfig will construct and own these classes.

Public Member Functions | |
| kBool | GoWebScanConfig_CalDetectLocators (GoWebScanConfig config) |
| Gets a flag for whether GoWebScan should attempt to detect calibration reference holes (1), or assume that sensors are mounted at their nominal locations along the X-axis (0). More... | |
| k32s | GoWebScanConfig_CalLeadMarginTiles (GoWebScanConfig config) |
| Gets the leading edge data capture margin in Y for calibration (tiles). More... | |
| k32s | GoWebScanConfig_CalMaxTiles (GoWebScanConfig config) |
| Gets the maximum count of tiles needed for detection of the calibration bar. More... | |
| k32s | GoWebScanConfig_CalMinGapTiles (GoWebScanConfig config) |
| Gets the minimum Y-axis gap between successive objects for calibration object detection (tiles). More... | |
| k32s | GoWebScanConfig_CalMinTiles (GoWebScanConfig config) |
| Gets the minimum count of tiles needed for detection of the calibration bar. More... | |
| kSize | GoWebScanConfig_CalTargetEdgeZExtent (GoWebScanConfig config) |
| Gets the height of the calibration target (Z-axis extent) in mils. More... | |
| k32s | GoWebScanConfig_CalTargetEffectiveThickness (GoWebScanConfig config) |
| Gets the effective thickness of the off-axis calibration target in mils. More... | |
| kSize | GoWebScanConfig_CalTargetFaceYExtent (GoWebScanConfig config) |
| Gets the width of the calibration target (Y-axis extent) in mils. More... | |
| k32s | GoWebScanConfig_CalTargetTotalYExtent (GoWebScanConfig config) |
| Gets the total Y-axis extent of the off-axis calibration target in mils. More... | |
| k32s | GoWebScanConfig_CalTileYExtent (GoWebScanConfig config) |
| Gets the tile length in Y-axis for internal system calibration calculations (mils). More... | |
| k32s | GoWebScanConfig_CalTrailMarginTiles (GoWebScanConfig config) |
| Gets the trailing edge data capture margin in Y for calibration (tiles). More... | |
| k64f | GoWebScanConfig_CalTriggerThreshold (GoWebScanConfig config) |
| Gets the minimum number of non-null profile dots for system calibration bar detection. More... | |
| kBool | GoWebScanConfig_CalUseObstructions (GoWebScanConfig config) |
| Gets a flag for whether user-defined obstructions are used instead of automatic chain detection during calibration processing. More... | |
| kBool | GoWebScanConfig_CalUseVisionIntensity (GoWebScanConfig config) |
| Gets a flag for whether the use of target intensities for each color channel during vision system calibration is enabled. More... | |
| kRgb | GoWebScanConfig_CalVisionIntensity (GoWebScanConfig config) |
| Gets the target intensity level for all color channels during vision system calibration. More... | |
| k64f | GoWebScanConfig_CalYIntervalDivisor (GoWebScanConfig config) |
| Gets the divisor to use when calculating minimum Y-interval for retained data during calibration data collection. More... | |
| k32s | GoWebScanConfig_CalYRes (GoWebScanConfig config, GoWebScanDataSource source) |
| Gets the Y-resolution to use when resampling during calibration processing (mils/pixel). More... | |
| kStatus | GoWebScanConfig_Construct (GoWebScanConfig *config, GoWebScanSettings settings, GoWebScanCalTarget calTarget, GoWebScanCal calibration, kArrayList sensorInfo, GoWebScanMode mode, kAlloc allocator) |
| Constructs a GoWebScanConfig object. More... | |
| kBool | GoWebScanConfig_DetectFilterSource (GoWebScanConfig config, GoWebScanDataSource source) |
| Gets a flag for whether a particular data source be subjected to post-detection data clean-up. More... | |
| kBool | GoWebScanConfig_DetectionEnabled (GoWebScanConfig config) |
| Gets a flag for whether board detection is enabled. More... | |
| kSSize | GoWebScanConfig_DetectMarginRows (GoWebScanConfig config) |
| Gets the detection Y-margin row count, which are extra data included in output. More... | |
| kSSize | GoWebScanConfig_DetectMaxRows (GoWebScanConfig config) |
| Gets the detection maximum Y-extent, excluding margins (presence pixels). More... | |
| kSSize | GoWebScanConfig_DetectMaxTiles (GoWebScanConfig config) |
| Gets the detection maximum number of tiles for one detected object. More... | |
| kSSize | GoWebScanConfig_DetectMinGapRows (GoWebScanConfig config) |
| Gets the detection minimum inter-object Y-gap (presence pixels). More... | |
| kSSize | GoWebScanConfig_DetectMinRows (GoWebScanConfig config) |
| Gets the detection minimum Y-extent (presence pixels) More... | |
| kBool | GoWebScanConfig_DetectSideExtensionEnabled (GoWebScanConfig config) |
| Gets a flag for whether extending the board side edge to correct for distortions is enabled. More... | |
| kSSize | GoWebScanConfig_DetectTriggerColumns (GoWebScanConfig config) |
| Gets the detection triggering threshold. More... | |
| GoWebScanDetectionStyle | GoWebScanConfig_DetectTriggerStyle (GoWebScanConfig config) |
| Gets the detection triggering style. More... | |
| k64s | GoWebScanConfig_DomainToEncoder (GoWebScanConfig config, k64s encoder, k64s time) |
| If the encoder simulator is enabled via GoWebScanSettings_SetEncoderSimulated(), this function returns the simulated encoder value formed from an input time and ignores the sensor message's actual encoder value. More... | |
| k64s | GoWebScanConfig_DomainToY (GoWebScanConfig config, k64s encoder, k64s time) |
| Converts a simulated encoder value to a Y position in mils if encoder simulation is enabled, otherwise converts the actual encoder value to a Y position. More... | |
| k64s | GoWebScanConfig_EncoderToY (GoWebScanConfig config, k64s encoder) |
| Converts an encoder value to a Y position in mils using the encoder resolution and system Y offset. More... | |
| kStatus | GoWebScanConfig_FindGroupByPlane (GoWebScanConfig config, GoWebScanSystemPlane plane, GoWebScanConfigGroup *configGroup) |
| Finds the group configuration for a given system plane. More... | |
| k32s | GoWebScanConfig_GapFill (GoWebScanConfig config) |
| Gets the maximum data X-gap to be filled in (mils). More... | |
| GoWebScanConfigGroup | GoWebScanConfig_GroupAt (GoWebScanConfig config, kSSize index) |
| Gets the group configuration at a specified index in the system. More... | |
| kSSize | GoWebScanConfig_GroupCount (GoWebScanConfig config) |
| Gets the number of groups in the system. More... | |
| k64f | GoWebScanConfig_MaxTravelRate (GoWebScanConfig config) |
| Gets the maximum supported system speed (mils per second). More... | |
| GoWebScanMode | GoWebScanConfig_Mode (GoWebScanConfig config) |
| Gets the system processing mode. More... | |
| GoWebScanConfigNode | GoWebScanConfig_NodeAt (GoWebScanConfig config, kSSize index) |
| Gets the node configuration at a specified index in the system. More... | |
| kStatus | GoWebScanConfig_NodeColumnToIndex (GoWebScanConfig config, GoWebScanSettings settings, GoWebScanSystemPlane plane, kSSize column, kSize *sensorIndex, kSize *bankId) |
| Determine the sensor index and bank id given the node column. More... | |
| kSSize | GoWebScanConfig_NodeCount (GoWebScanConfig config) |
| Gets the number of nodes (cameras) in the system. More... | |
| kStatus | GoWebScanConfig_NodeIndexToColumn (GoWebScanConfig config, GoWebScanSettings settings, GoWebScanSystemPlane plane, kSize sensorIndex, kSSize bankId, kSSize *column) |
| Determine the sensor node column given the sensor index and bank id. More... | |
| kBool | GoWebScanConfig_ObstructionFilter (GoWebScanConfig config) |
| Gets the flag for whether the obstruction filter is enabled. More... | |
| k32s | GoWebScanConfig_OverlapBlend (GoWebScanConfig config) |
| Gets the amount of X-overlap to be blended (mils). More... | |
| GoWebScanInterpolation | GoWebScanConfig_ProfileInterpolation (GoWebScanConfig config) |
| Gets the profile sampling style (linear interpolation or nearest neighbor). More... | |
| GoWebScanConfigSensor | GoWebScanConfig_SensorAt (GoWebScanConfig config, kSSize index) |
| Gets the sensor configuration at a specified index in the system. More... | |
| kSSize | GoWebScanConfig_SensorCount (GoWebScanConfig config) |
| Gets the number of sensors in the system. More... | |
| kBool | GoWebScanConfig_SourceEnabled (GoWebScanConfig config, GoWebScanDataSource source) |
| Gets a flag for whether data from a particular source is enabled. More... | |
| k32s | GoWebScanConfig_SyncBreakDistance (GoWebScanConfig config) |
| Gets the minimum Y-distance from the current position to drop all data (mils). More... | |
| k32s | GoWebScanConfig_SyncCoherencyDistance (GoWebScanConfig config) |
| Gets the minimum Y-distance between data from different nodes before forcing drop (mils). More... | |
| k32s | GoWebScanConfig_SyncCoherencyTime (GoWebScanConfig config) |
| Gets the minimum time between data from different nodes before forcing drop (microseconds). More... | |
| k64f | GoWebScanConfig_SystemAngle (GoWebScanConfig config) |
| Gets the system angle in degrees. More... | |
| k64f | GoWebScanConfig_TaskBufferTime (GoWebScanConfig config) |
| Gets the approximate maximum amount of time to buffer data at input to each pipe task (seconds). More... | |
| kSSize | GoWebScanConfig_ThreadCount (GoWebScanConfig config) |
| Gets the number of threads being used by the system. More... | |
| k32s | GoWebScanConfig_TileYExtent (GoWebScanConfig config) |
| Gets the Y-extent of all output tiles (mils). More... | |
| kSSize | GoWebScanConfig_TileYPix (GoWebScanConfig config, GoWebScanDataSource source) |
| Gets the Y-extent of tiles for each data source (pixels). More... | |
| GoWebScanYOrientation | GoWebScanConfig_TravelOrientation (GoWebScanConfig config) |
| Gets the direction of conveyor movement. More... | |
| kStatus | GoWebScanConfig_UpdateCalibration (GoWebScanConfig config, GoWebScanCal calibration) |
| Update the system calibration. More... | |
| kStatus | GoWebScanConfig_UpdateMode (GoWebScanConfig config, GoWebScanMode mode) |
| Update the system processing mode. More... | |
| k32s | GoWebScanConfig_VisionTerrainXRes (GoWebScanConfig config) |
| Gets the X-resolution for resampling profile data so that it is suitable for the vision resampler. More... | |
| k32s | GoWebScanConfig_VisionTerrainXSubsampling (GoWebScanConfig config) |
| Gets the subsampling factor for determining the X-resolution for terrain data. More... | |
| kSSize | GoWebScanConfig_XCountPix (GoWebScanConfig config, GoWebScanDataSource source) |
| Gets the count of output space for each data source (pixels). More... | |
| k32s | GoWebScanConfig_XEnd (GoWebScanConfig config) |
| Gets the end of the system output space, in system coordinates (mils). More... | |
| kSSize | GoWebScanConfig_XEndPix (GoWebScanConfig config, GoWebScanDataSource source) |
| Gets the end of output space for each data source, in system coordinates (pixels). More... | |
| GoWebScanXOrientation | GoWebScanConfig_XOrientation (GoWebScanConfig config) |
| Gets the direction of the X-axis. More... | |
| k32s | GoWebScanConfig_XRes (GoWebScanConfig config, GoWebScanDataSource source) |
| Gets the X-resolution of a specified data source in mils/pixel. More... | |
| k32s | GoWebScanConfig_XStart (GoWebScanConfig config) |
| Gets the start of the system output space, in system coordinates (mils). More... | |
| kSSize | GoWebScanConfig_XStartPix (GoWebScanConfig config, GoWebScanDataSource source) |
| Gets the start of output space for each data source, in system coordinates (pixels). More... | |
| k32s | GoWebScanConfig_YRes (GoWebScanConfig config, GoWebScanDataSource source) |
| Gets the Y-resolution of a specified data source in mils/pixel. More... | |
| k64s | GoWebScanConfig_YToEncoder (GoWebScanConfig config, k64s y) |
| Converts Y position in mils to an encoder value. More... | |
| kStatus | GoWebScanConfigSensorInfo_Load (GoWebScanConfigSensorInfo *sensorInfo, const kChar *filePath, kAlloc allocator) |
| Loads the sensor info from a specified path, excluding the GoGeoCal instances. More... | |
| kStatus | GoWebScanConfigSensorInfo_Save (const GoWebScanConfigSensorInfo *sensorInfo, const kChar *filePath, kAlloc allocator) |
| Stores the sensor info to a specified path, excluding the GoGeoCal instances. More... | |