Download VisionWare Reference Guide, Version 3.0
Transcript
Appendix I - Customizer-Related Software Changes CALL vw.add.to.class (ve.tst.class,... to the end of your definition routine using the new syntax. • Previously, if you wanted a record type to be included in the Vision Tool class, you had to use the vw.add.to.class( ) routine. This is now done automatically when the def[vw.td.vtool] element is TRUE. This means you can eliminate the CALL to vw.add.to.class( ) located at the bottom of the record type definition routines. NOTE: This CALL does not have to be eliminated. It will simply be a harmless redundancy that may increase your application’s start-up time. (This may become obsolete in the future.) • In the vw.typ.def[,] array, a previously unused element is now being used. There also is a new name for the index variable. The old index variable was vw.td.id and was marked as “unused” in the public record-type definition routines. The new index variable is vw.td.flags and the element is now used for various bit flags. The only bit flag currently defined is vw.flg.clean. When this new bit is set, it signifies that the execution graphics do not contain results-dependent items. Consequently, this means that when a shape tool is clicked on to drag, it does not have to fully execute the tool to erase it before going to dry.run mode for the drag. This will erase “Reference frame” and other graphics. (The Window and Image Processing records use this feature.) • A record type may now have optional source records. This is specified by giving the “class” for that source as –1 times the normal value when filling in the src.classes[,] array in the definition routine. For instance, if a custom record type specified one or more (up to eight) Frame class records for averaging, sources 2 through 8 would have “–ve.frm.class” and source 1 would have class “ve.frm.class”. Of course, this means that if any of these are missing at link time, there will be no errors. • If a record type has a shape (or is a vision tool), the reference frame record or the first source must be present. This is necessary for determining the “reference picture” of the shape tool’s or vision tool’s coordinate frame. This feature allows the new Conditional Frame record type to be useful when just the reference frame is specified without inspections. Installing Custom Record Types • Previously, when installing a custom record type, you had to add code to several public files and modify several existing “new record” menu pages. Now, you simply need to name some routines and files in a certain way, and add a new record to one of the .INI database files that executes during startup. Inclusion of the record type in the appropriate “new record” selection pages is automatic. Additionally, you can load or unload the record type using a check-box. See the section “Installation” on page 52 for more details. I.3 Data Logging This information is for customizers who have written custom routines that work with the data logging (for example, a special format output routine such as qc.trans.stats( ) in the public file QCLOG.V2). • The automatic data-logging feature has been updated to work with multiple vision tasks. In the Log Results pop-up, you now specify the destination (serial line or file name) for each of the vision tasks you are using. (There is only one vision task per system.) • To handle this, the following logging-related variables are now arrays, indexed on “TASK( )” (the vision task): 280 VisionWare Reference Guide, Rev. A