Files
allwpilib/wpilibj/wpilibJavaJNI/nivision/nivision_2011.ini
Peter Johnson ce7a56284f Fix a few major nivision Java wrapper issues.
- sliceByteBuffer() was not setting native order on the duplicated buffer.
  This caused all array-copyin functions to generate bad values.
- Correctly handle unsigned byte and unsigned short values.  These could
  read/write to bad locations previously.
- Implement custom version of imaqReadFile() to always pass in NULL for
  the colorTable.  Eventually a more-complete version should be written.

Also this works around a crash in imaqGetErrorText() by not calling it from
throwJavaException().  It's not clear why imaqGetErrorText() is crashing at
present (my best guess is there's still something fishy with multiple C++
lib versions getting loaded somehow), as this used to work.  Instead,
the exception now just gives the error code without the error message,
which is not user friendly but at least doesn't crash.  This will be fixed
in a future commit by creating our own version of imaqGetErrorText() based
on the information available in the header file.

Change-Id: I4d099e62ee41f8e2a50089806561be191cb5d9d7
2015-01-13 22:18:17 -08:00

841 lines
20 KiB
INI

;
; [name]
; arraysize -- comma separated list of "param:numParam" where param is the
; name of the pointer parameter, and numParam is the name of
; the parameter that contains the array size for the pointer
; retarraysize -- name of the pass-by-reference parameter that on function
; return contains the array size of the returned pointer
; exclude -- if True, no code is output for this name (full custom)
; underscore -- if True, only underscored raw wrapper is output (partial custom)
; outparams -- comma separated list of output parameter names
; inparams -- comma separated list of parameter names that are input
; parameters (e.g. not output parameters)
; defaults -- comma separated list of "param:default" where param is the
; parameter name and default is the default value
; exclude_members -- for structures, members to not emit
; nullok -- comma separated list of parameter names that may be null
; retref -- parameter that (if non-null) is returned as a reference
; retunowned -- if True, return value should not be owned
;
; The generator code auto-detects many parameters, so this file is only needed
; for overriding the auto-detected behavior.
; defines
[IMAQ_IMPORT]
exclude=True
[IMAQ_FUNC]
exclude=True
[IMAQ_STDCALL]
exclude=True
[IMAQ_CALLBACK]
exclude=True
[IMAQ_DEFAULT_LEARNING_MODE]
exclude=True
[ERR_INVALID_COLORCOMPLEXITY]
exclude=True
; structures
[PolyModel]
arraysize=kCoeffs:numKCoeffs
[CalibrationReferencePoints]
arraysize=pixelCoords:numPixelCoords,realCoords:numRealCoords
[GetCameraParametersReport]
#TODO: projectionMatrix:projectionMatrixRows*projectionMatrixCols
exclude_members=projectionMatrix
[GetCalibrationInfoReport]
#TODO: errorMap:errorMapRows*errorMapCols
exclude_members=errorMap
[ContourFitSplineReport]
arraysize=points:numberOfPoints
[ContourFitPolynomialReport]
arraysize=bestFit:numberOfPoints,polynomialCoefficients:numberOfCoefficients
[SetupMatchPatternData]
arraysize=matchSetupData:numMatchSetupData
[ContourInfoReport]
arraysize=pointsPixel:numPointsPixel,pointsReal:numPointsReal,curvaturePixel:numCurvaturePixel,curvatureReal:numCurvatureReal
[SupervisedColorSegmentationReport]
arraysize=labelOut:numLabelOut
[LabelToROIReport]
arraysize=roiArray:numOfROIs,labelsOutArray:numOfLabels,isTooManyVectorsArray:isTooManyVectorsArraySize
[ClassifiedCurve]
arraysize=curvePoints:numCurvePoints
[CurvatureAnalysisReport]
arraysize=curves:numCurves
[ComputeDistancesReport]
arraysize=distances:numDistances,distancesReal:numDistancesReal
[ClassifiedDisparity]
arraysize=templateSubsection:numTemplateSubsection,targetSubsection:numTargetSubsection
[ClassifyDistancesReport]
arraysize=classifiedDistances:numClassifiedDistances
[ContourComputeCurvatureReport]
arraysize=curvaturePixel:numCurvaturePixel,curvatureReal:numCurvatureReal
[ExtractContourReport]
arraysize=contourPoints:numContourPoints,sourcePoints:numSourcePoints
[ExtractTextureFeaturesReport]
arraysize=waveletBands:numWaveletBands
#TODO: textureFeatures:textureFeaturesRows:textureFeaturesCols
exclude_members=textureFeatures
[WaveletBandsReport]
#TODO: LLBand:rows:cols
#TODO: LHBand:rows:cols
#TODO: HLBand:rows:cols
#TODO: HHBand:rows:cols
#TODO: LLLBand:rows:cols
#TODO: LLHBand:rows:cols
#TODO: LHHBand:rows:cols
exclude_members=LLBand,LHBand,HLBand,HHBand,LLLBand,LLHBand,LHHBand
[MeasureParticlesReport]
#TODO: pixelMeasurements:numParticles:numMeasurements
#TODO: calibratedMeasurements:numParticles:numMeasurements
exclude_members=pixelMeasurements,calibratedMeasurements
[ClassifierReportAdvanced]
arraysize=allScores:allScoresSize,sampleScores:sampleScoresSize
[FindEdgeReport]
arraysize=straightEdges:numStraightEdges
[ReadTextReport3]
arraysize=characterReport:numCharacterReports
[EdgeReport2]
arraysize=edges:numEdges,gradientInfo:numGradientInfo
[ConcentricRakeReport2]
arraysize=firstEdges:numFirstEdges,lastEdges:numLastEdges,searchArcs:numSearchArcs
[SpokeReport2]
arraysize=firstEdges:numFirstEdges,lastEdges:numLastEdges,searchLines:numSearchLines
[RakeReport2]
arraysize=firstEdges:numFirstEdges,lastEdges:numLastEdges,searchLines:numSearchLines
[QRCodeDataToken]
arraysize=data:dataLength
[StraightEdgeReport2]
arraysize=straightEdges:numStraightEdges,searchLines:numSearchLines
[StraightEdge]
arraysize=usedEdges:numUsedEdges
[QRCodeReport]
arraysize=data:dataLength,tokenizedData:sizeOfTokenizedData
[DataMatrixReport]
arraysize=data:dataLength
[ReadTextReport2]
arraysize=characterReport:numCharacterReports
[FeatureData]
arraysize=contourPoints:numContourPoints
uniontype=feature:type:IMAQ_CIRCLE_FEATURE=circle:IMAQ_ELLIPSE_FEATURE=ellipse:IMAQ_CONST_CURVE_FEATURE=constCurve:IMAQ_RECTANGLE_FEATURE=rectangle:IMAQ_LEG_FEATURE=leg:IMAQ_CORNER_FEATURE=corner:IMAQ_PARALLEL_LINE_PAIR_FEATURE=parallelLinePair:IMAQ_PAIR_OF_PARALLEL_LINE_PAIRS_FEATURE=pairOfParallelLinePairs:IMAQ_LINE_FEATURE=line:IMAQ_CLOSED_CURVE_FEATURE=closedCurve
[GeometricPatternMatch2]
arraysize=featureData:numFeatureData
[ShapeDetectionOptions]
arraysize=angleRanges:numAngleRanges
[Curve]
arraysize=points:numPoints
[Barcode2DInfo]
arraysize=data:dataLength
[ClassifierAccuracyReport]
arraysize=classNames:size,classAccuracy:size,classPredictiveValue:size
#TODO: classificationDistribution:classPredictiveValue:size
exclude_members=classificationDistribution
[NearestNeighborTrainingReport]
arraysize=allScores:allScoresSize
#TODO: classDistancesTable
exclude_members=classDistancesTable
[ClassifierSampleInfo]
arraysize=featureVector:featureVectorSize
[ClassifierReport]
arraysize=allScores:allScoresSize
[MatchGeometricPatternOptions]
arraysize=angleRanges:numAngleRanges
[ConstructROIOptions2]
arraysize=palette:numColors
[BestEllipse2]
arraysize=pointsUsed:numPointsUsed
[BestCircle2]
arraysize=pointsUsed:numPointsUsed
[ReadTextOptions]
arraysize=validChars:numValidChars
[ReadTextReport]
arraysize=characterReport:numCharacterReports
[EdgeLocationReport]
arraysize=edges:numEdges
[ImageInfo]
#TODO: imageStart
exclude_members=reserved0,reserved1,imageStart
[LCDReport]
arraysize=segmentInfo:numCharacters
exclude_members=reserved
[LCDSegments]
exclude_members=reserved
[LearnColorPatternOptions]
arraysize=colorsToIgnore:numColorsToIgnore
[LinearAverages]
arraysize=columnAverages:columnCount,rowAverages:rowCount,risingDiagAverages:risingDiagCount,fallingDiagAverages:fallingDiagCount
[LineProfile]
arraysize=profileData:dataCount
[MatchColorPatternOptions]
arraysize=angleRanges:numRanges
[HistogramReport]
arraysize=histogram:histogramCount
[BestLine]
arraysize=pointsUsed:numPointsUsed
[CalibrationInfo]
#TODO: errorMap:mapColumns*mapRows
exclude_members=errorMap
[CalibrationPoints]
arraysize=pixelCoordinates:numCoordinates,realWorldCoordinates:numCoordinates
[CaliperReport]
exclude_members=reserved
[ClosedContour]
arraysize=points:numPoints
[ColorInformation]
arraysize=info:infoCount
[ConcentricRakeReport]
arraysize=rakeArcs:numArcs,firstEdges:numFirstEdges,lastEdges:numLastEdges,allEdges:numLinesWithEdges,linesWithEdges:numLinesWithEdges
[ConstructROIOptions]
arraysize=palette:numColors
[ContourInfo]
arraysize=points:numPoints
[ContourInfo2]
uniontype=structure:type:IMAQ_POINT=point:IMAQ_LINE=line:IMAQ_RECT=rect:IMAQ_OVAL=ovalBoundingBox:IMAQ_CLOSED_CONTOUR=closedContour:IMAQ_OPEN_CONTOUR=openContour:IMAQ_ANNULUS=annulus:IMAQ_ROTATED_RECT=rotatedRect
[UserPointSymbol]
#TODO: pixels:cols*rows
exclude_members=pixels
[MatchPatternOptions]
arraysize=angleRanges:numRanges
[OpenContour]
arraysize=points:numPoints
[QuantifyReport]
arraysize=regions:regionCount
[RakeReport]
arraysize=rakeLines:numRakeLines,firstEdges:numFirstEdges,lastEdges:numLastEdges,allEdges:numLinesWithEdges,linesWithEdges:numLinesWithEdges
[TransformReport]
arraysize=points:numPoints,validPoints:numPoints
[MeterArc]
arraysize=arcCoordPoints:numOfArcCoordPoints
[StructuringElement]
#TODO: arraysize=kernel:matrixRows*matrixCols
exclude_members=kernel
[SpokeReport]
arraysize=spokeLines:numSpokeLines,firstEdges:numFirstEdges,lastEdges:numLastEdges,allEdges:numLinesWithEdges,linesWithEdges:numLinesWithEdges
[ToolWindowOptions]
exclude_members=reserved2,reserved3,reserved4
[EventCallback]
exclude=True
; Logical functions
; TODO: constant versions
[imaqAndConstant]
exclude=True
[imaqCompareConstant]
exclude=True
[imaqLogicalDifferenceConstant]
exclude=True
[imaqNandConstant]
exclude=True
[imaqNorConstant]
exclude=True
[imaqOrConstant]
exclude=True
[imaqXnorConstant]
exclude=True
[imaqXorConstant]
exclude=True
; Arithmetic functions
; TODO: constant versions
[imaqAbsoluteDifferenceConstant]
exclude=True
[imaqAddConstant]
exclude=True
[imaqAverageConstant]
exclude=True
[imaqDivideConstant2]
exclude=True
[imaqMaxConstant2]
exclude=True
[imaqMinConstant]
exclude=True
[imaqModuloConstant]
exclude=True
[imaqMultiplyConstant]
exclude=True
[imaqSubtractConstant]
exclude=True
; Particle Analysis functions
[imaqCountParticles]
outparams=numParticles
[imaqMeasureParticle]
outparams=value
[imaqMeasureParticles]
arraysize=measurements:numMeasurements
[imaqParticleFilter4]
arraysize=criteria:criteriaCount
outparams=numParticles
nullok=roi
; Morphology functions
[imaqFindCircles]
retarraysize=numCircles
[imaqLabel2]
outparams=particleCount
[imaqMorphology]
nullok=structuringElement
[imaqSeparation]
nullok=structuringElement
[imaqSimpleDistance]
nullok=structuringElement
[imaqSizeFilter]
nullok=structuringElement
; Acquisition functions
[imaqCopyFromRing]
nullok=image,imageNumber
outparams=imageNumber
retref=image
[imaqExtractFromRing]
nullok=imageNumber
outparams=imageNumber
retunowned=True
[imaqGrab]
nullok=image
retref=image
[imaqSetupRing]
arraysize=images:numImages
inparams=images
[imaqSetupSequence]
arraysize=images:numImages
inparams=images
[imaqSnap]
nullok=image
retref=image
; Caliper functions
[imaqCaliperTool]
retarraysize=numEdgePairs
arraysize=points:numPoints
[imaqDetectExtremes]
retarraysize=numExtremes
arraysize=pixels:numPixels
[imaqFindTransformRect2]
outparams=baseSystem,newSystem,axisReport
[imaqFindTransformRects2]
outparams=baseSystem,newSystem,axisReport
[imaqSimpleEdge]
retarraysize=numEdges
arraysize=points:numPoints
; Spatial Filters functions
[imaqCannyEdgeFilter]
nullok=options
[imaqConvolve2]
inparams=kernel
exclude=True
[imaqEdgeFilter]
nullok=mask
[imaqLowPass]
nullok=mask
[imaqMedianFilter]
nullok=mask
[imaqNthOrderFilter]
nullok=mask
; Drawing functions
[imaqDrawTextOnImage]
nullok=options,fontNameUsed
; Interlacing functions
[imaqInterlaceSeparate]
nullok=odd,even
; Image Information functions
[imaqEnumerateCustomKeys]
retarraysize=size
[imaqGetImageSize]
nullok=width,height
[imaqGetPixelAddress]
underscored=True
exclude=True
[imaqReadCustomData]
retsize=size
retunowned=True
[imaqWriteCustomData]
size=data:size
; Display functions
[imaqGetLastKey]
nullok=keyPressed,windowNumber,modifiers
[imaqGetSystemWindowHandle]
exclude=True
[imaqGetWindowCenterPos]
outparams=centerPosition
; Image Manipulation functions
[imaqCast]
nullok=lookup
exclude=True
[imaqFlatten]
retsize=size
[imaqRotate2]
# TODO because of PixelValue
exclude=True
[imaqShift]
# TODO because of PixelValue
exclude=True
[imaqUnflatten]
size=data:size
; File I/O functions
[imaqGetAVIInfo]
outparams=info
[imaqGetFileInfo]
nullok=calibrationUnit,calibrationX,calibrationY,width,height,imageType
[imaqGetFilterNames]
retarraysize=numFilters
[imaqLoadImagePopup]
retarraysize=numPaths
[imaqReadAVIFrame]
size=data:dataSize
# unclear whether dataSize is input or output parameter
exclude=True
[imaqReadFile]
;nullok=colorTable,numColors
;arraysize=colorTable:numColors
[imaqWriteAVIFrame]
size=data:dataLength
[imaqWriteBMPFile]
nullok=colorTable
defaults=colorTable:null
[imaqWriteFile]
nullok=colorTable
defaults=colorTable:null
[imaqWriteJPEGFile]
nullok=colorTable
defaults=colorTable:null
inparams=colorTable
[imaqWritePNGFile2]
nullok=colorTable
defaults=colorTable:null
[imaqWriteTIFFFile]
nullok=options,colorTable
defaults=options:null,colorTable:null
; Analytic Geometry functions
[imaqBuildCoordinateSystem]
outparams=system
[imaqFitCircle2]
arraysize=points:numPoints
[imaqFitEllipse2]
arraysize=points:numPoints
[imaqFitLine]
arraysize=points:numPoints
[imaqGetBisectingLine]
outparams=bisectStart,bisectEnd
[imaqGetIntersection]
outparams=intersection
[imaqGetMidLine]
outparams=midLineStart,midLineEnd
[imaqGetPerpendicularLine]
outparams=perpLineStart,perpLineEnd
[imaqGetPointsOnContour]
retarraysize=numSegments
[imaqGetPointsOnLine]
retarraysize=numPoints
[imaqInterpolatePoints]
retarraysize=interpCount
arraysize=points:numPoints
; Clipboard functions
[imaqClipboardToImage]
nullok=palette
[imaqImageToClipboard]
nullok=palette
; Image Management functions
[imaqCreateImage]
defaults=borderSize:0
[imaqImageToArray]
nullok=columns,rows
underscored=True
exclude=True
; Color Processing functions
[imaqChangeColorSpace2]
# TODO because of Color2
exclude=True
[imaqColorBCGTransform]
nullok=redOptions,greenOptions,blueOptions,mask
[imaqColorHistogram2]
nullok=mask
[imaqColorLookup]
nullok=mask,plane1,plane2,plane3
exclude=True
[imaqColorThreshold]
nullok=plane1Range,plane2Range,plane3Range
; Transform functions
[imaqBCGTransform]
nullok=mask
[imaqEqualize]
nullok=mask
[imaqInverse]
nullok=mask
[imaqMathTransform]
nullok=mask
[imaqLookup2]
nullok=mask
exclude=True
; Window Management functions
[imaqGetMousePos]
nullok=position,windowNumber
[imaqGetWindowBackground]
outparams=backgroundColor
[imaqGetWindowDisplayMapping]
outparams=mapping
[imaqGetWindowGrid]
nullok=xResolution,yResolution
[imaqGetWindowPos]
outparams=position
[imaqGetWindowSize]
nullok=width,height
[imaqSetWindowPalette]
arraysize=palette:numColors
nullok=palette
; Utilities functions
; Many Make* functions are faster in native Python
[imaqGetKernel]
exclude=True
[imaqMakeAnnulus]
exclude=True
[imaqMakePoint]
exclude=True
[imaqMakePointFloat]
exclude=True
[imaqMakeRect]
exclude=True
[imaqMakeRectFromRotatedRect]
exclude=True
[imaqMakeRotatedRect]
exclude=True
[imaqMakeRotatedRectFromRect]
exclude=True
[imaqMulticoreOptions]
underscored=True
; Tool Window functions
[imaqGetLastEvent]
nullok=windowNumber,tool,rect
outparams=type,tool,rect
[imaqGetToolWindowHandle]
exclude=True
[imaqGetToolWindowPos]
outparams=position
[imaqSetEventCallback]
exclude=True
[imaqSetupToolWindow]
nullok=options
; Meter functions
[imaqReadMeter]
outparams=endOfNeedle
; Calibration functions
[imaqCorrectCalibratedImage]
# TODO because of PixelValue
exclude=True
[imaqTransformPixelToRealWorld]
arraysize=pixelCoordinates:numCoordinates
[imaqTransformRealWorldToPixel]
arraysize=realWorldCoordinates:numCoordinates
; Pixel Manipulation functions
[imaqArrayToComplexPlane]
exclude=True
[imaqComplexPlaneToArray]
nullok=columns,rows
underscored=True
exclude=True
[imaqExtractColorPlanes]
nullok=plane1,plane2,plane3
[imaqFillImage]
nullok=mask
# TODO because of PixelValue
exclude=True
[imaqGetLine]
nullok=numPoints
underscored=True
exclude=True
[imaqGetPixel]
outparams=value
# TODO because of PixelValue
exclude=True
[imaqReplaceColorPlanes]
nullok=plane1,plane2,plane3
[imaqSetLine]
underscored=True
exclude=True
[imaqSetPixel]
# TODO because of PixelValue
exclude=True
; Color Matching functions
[imaqLearnColor]
nullok=roi
[imaqMatchColor]
retarraysize=numScores
nullok=roi
; Barcode I/O functions
[imaqGradeDataMatrixBarcodeAIM]
outparams=report
[imaqReadBarcode]
nullok=roi
[imaqReadPDF417Barcode]
retarraysize=numBarcodes
[imaqReadQRCode]
defaults=reserved:IMAQ_QR_NO_GRADING
; LCD functions
[imaqFindLCDSegments]
nullok=options
[imaqReadLCD]
nullok=options
; Shape Matching functions
[imaqMatchShape]
retarraysize=numMatches
; Contours functions
[imaqAddClosedContour]
arraysize=points:numPoints
[imaqAddOpenContour]
arraysize=points:numPoints
[imaqGetContourColor]
outparams=contourColor
; Regions of Interest functions
[imaqGetROIBoundingBox]
outparams=boundingBox
[imaqGetROIColor]
outparams=roiColor
[imaqSetWindowROI]
nullok=roi
; Image Analysis functions
[imaqExtractCurves]
retarraysize=numCurves
[imaqHistogram]
nullok=mask
[imaqQuantify]
nullok=mask
; Error Management functions
[imaqClearError]
exclude=True
[imaqGetErrorText]
exclude=True
[imaqGetLastError]
exclude=True
[imaqGetLastErrorFunc]
exclude=True
[imaqSetError]
nullok=function
exclude=True
; Threshold functions
[imaqMultithreshold]
arraysize=ranges:numRanges
; Memory Management functions
[imaqDispose]
# This is done as a full-custom function
exclude=True
; Pattern Matching functions
[imaqDetectCircles]
retarraysize=numMatchesReturned
[imaqDetectEllipses]
retarraysize=numMatchesReturned
[imaqDetectLines]
retarraysize=numMatchesReturned
[imaqDetectRectangles]
retarraysize=numMatchesReturned
[imaqGetGeometricFeaturesFromCurves]
retarraysize=numFeatures
arraysize=curves:numCurves,featureTypes:numFeatureTypes
[imaqGetGeometricTemplateFeatureInfo]
retarraysize=numFeatures
[imaqLearnMultipleGeometricPatterns]
arraysize=patterns:numberOfPatterns
exclude=True
[imaqMatchColorPattern]
retarraysize=numMatches
[imaqMatchGeometricPattern2]
retarraysize=numMatches
[imaqMatchMultipleGeometricPatterns]
retarraysize=numMatches
[imaqReadMultipleGeometricPatternFile]
underscored=True
[imaqRefineMatches]
retarraysize=numCandidatesOut
arraysize=candidatesIn:numCandidatesIn
[imaqMatchGeometricPattern3]
retarraysize=numMatches
[imaqMatchPattern3]
retarraysize=numMatches
nullok=options
; Overlay functions
[imaqGetOverlayProperties]
outparams=transformBehaviors
[imaqMergeOverlay]
arraysize=palette:numColors
[imaqOverlayBitmap]
underscored=True
[imaqOverlayClosedContour]
arraysize=points:numPoints
[imaqOverlayOpenContour]
arraysize=points:numPoints
[imaqOverlayPoints]
arraysize=points:numPoints,colors:numColors
; OCR functions
[imaqVerifyPatterns]
arraysize=expectedPatterns:patternCount
retarraysize=numScores
[imaqVerifyText]
retarraysize=numScores
; Geometric Matching functions
[imaqContourClassifyCurvature]
arraysize=curvatureClasses:numCurvatureClasses
[imaqContourClassifyDistances]
arraysize=distanceRanges:numDistanceRanges
[imaqContourSetupMatchPattern]
arraysize=rangeSettings:numRangeSettings
[imaqContourAdvancedSetupMatchPattern]
arraysize=geometricOptions:numGeometricOptions
; Morphology Reconstruction functions
[imaqGrayMorphologyReconstruct]
arraysize=points:numOfPoints
[imaqMorphologyReconstruct]
arraysize=points:numOfPoints
; Texture functions
[imaqClassificationTextureDefectOptions]
exclude=True
[imaqCooccurrenceMatrix]
exclude=True
[imaqExtractTextureFeatures]
inparams=waveletBands
exclude=True
[imaqExtractWaveletBands]
inparams=waveletBands
exclude=True
; Regions of Interest Manipulation functions
[imaqMaskToROI]
nullok=withinLimit
[imaqROIToMask]
nullok=imageModel,inSpace
[imaqLabelToROI]
arraysize=labelsIn:numLabelsIn
; Morphology functions
[imaqGrayMorphology]
nullok=structuringElement
; Classification functions
[imaqAddClassifierSample]
arraysize=featureVector:vectorSize
[imaqAdvanceClassify]
arraysize=featureVector:vectorSize
[imaqClassify]
arraysize=featureVector:vectorSize
[imaqGetColorClassifierOptions]
outparams=options
[imaqGetNearestNeighborOptions]
outparams=options
;[imaqReadClassifierFile]
;[imaqWriteClassifierFile]
; Obsolete functions
[imaqWritePNGFile]
nullok=colorTable
defaults=colorTable:null
[imaqRotate]
# TODO because of PixelValue
exclude=True
[imaqSelectParticles]
retarraysize=selectedCount
[imaqGetParticleInfo]
retarraysize=reportCount
[imaqEdgeTool]
retarraysize=numEdges
[imaqCircles]
retarraysize=numCircles
[imaqFitEllipse]
arraysize=points:numPoints
outparams=ellipse
[imaqFitCircle]
arraysize=points:numPoints
outparams=circle
[imaqChangeColorSpace]
# TODO because of Color
exclude=True
[imaqMatchPattern]
retarraysize=numMatches
nullok=options
[imaqLineGaugeTool]
nullok=reference
[imaqBestCircle]
arraysize=points:numPoints
outparams=center
[imaqCoordinateReference]
outparams=origin
[imaqSetWindowOverlay]
nullok=overlay
[imaqGetCalibrationInfo]
outparams=unit,xDistance,yDistance
nullok=unit,xDistance,yDistance
[imaqGetParticleClassifierOptions]
outparams=preprocessingOptions,options
[imaqConvolve]
nullok=mask
inparams=kernel
exclude=True
[imaqDivideConstant]
# TODO because of PixelValue
exclude=True
[imaqLookup]
nullok=mask
exclude=True
[imaqMatchPattern2]
retarraysize=numMatches
nullok=options
[imaqMaxConstant]
# TODO because of PixelValue
exclude=True
[imaqParticleFilter2]
arraysize=criteria:criteriaCount
[imaqEdgeTool2]
retarraysize=numEdges
[imaqReadDataMatrixBarcode]
retarraysize=numBarcodes
[imaqMatchGeometricPattern]
retarraysize=numMatches
[imaqColorHistogram]
nullok=mask
[Priv_ReadJPEGString_C]
arraysize=string:stringLength
inparams=image,string
; block comment exclusion list
[Block Comment]
exclude=
Includes
Control Defines
Macros
This accomplishes said task.
If using Visual C++, force startup & shutdown code to run.
Error Management functions
Callback Function Type
Backwards Compatibility
Error Codes