#! D:\VW/vee -r (saveFormat "1.2") (date "Sun 31/Aug/1997") (SaveCF "no") (filterNAN 0) (component 0 "ROOTCONTEXT" (name "Untitled") (interface ) (implementation (UserFunctions (nextID 9) (context 1 (name "InitTest") (interface (sequence in) (sequence out) (output 1 (type data) (name "X") (lock constraints) (optional yes) ) ) (implementation (locked no) (trigMode deg) (nextID 1) (component 0 "FORMULA" (interface (sequence in) (sequence out) (output 1 (name "Result") (lock name constraints) ) ) (implementation (component expr 1 "randomseed((10^9)*fracPart(now()/100))") ) (views (icon ) (detail (origin 101 68) (extent 290 32) ) (terminals on) (active detail) ) ) (configuration (connect D0:1 O1:1) ) ) (views (detail (origin 35 23) (extent 471 122) (configuration (connect D0:1 O1:1 (Point 443 84) (Point 474 84) (Point 474 80) (Point 505 80) ) ) ) (terminals on) (active detail) ) ) (context 5 (name "DevTest1") (interface (sequence in) (sequence out) (output 1 (type data) (name "X") (lock constraints) (optional yes) ) ) (implementation (locked no) (trigMode deg) (nextID 1) (component 0 "FORMULA" (interface (sequence in) (sequence out) (output 1 (name "Result") (lock name constraints) ) ) (implementation (component expr 1 "random(-1, 11)") ) (views (icon ) (detail (origin 131 159) (extent 129 32) ) (terminals on) (active detail) ) ) (configuration (connect D0:1 O1:1) ) ) (views (detail (origin 35 23) (extent 334 300) (configuration (connect D0:1 O1:1 (Point 312 175) (Point 340 175) (Point 340 170) (Point 368 170) ) ) ) (terminals on) (active detail) ) ) (context 6 (name "DevTest2") (interface (sequence in) (sequence out) (output 1 (type data) (name "X") (lock constraints) (optional yes) ) ) (implementation (locked no) (trigMode deg) (nextID 1) (component 0 "FORMULA" (interface (sequence in) (sequence out) (output 1 (name "Result") (lock name constraints) ) ) (implementation (component expr 1 "random(-1, 11)") ) (views (icon ) (detail (origin 131 159) (extent 129 32) ) (terminals on) (active detail) ) ) (configuration (connect D0:1 O1:1) ) ) (views (detail (origin 35 23) (extent 334 300) (configuration (connect D0:1 O1:1 (Point 312 175) (Point 340 175) (Point 340 170) (Point 368 170) ) ) ) (terminals on) (active detail) ) ) (context 7 (name "DevTest3") (interface (sequence in) (sequence out) (output 1 (type data) (name "X") (lock constraints) (optional yes) ) ) (implementation (locked no) (trigMode deg) (nextID 1) (component 0 "FORMULA" (interface (sequence in) (sequence out) (output 1 (name "Result") (lock name constraints) ) ) (implementation (component expr 1 "random(-1, 11)") ) (views (icon ) (detail (origin 131 159) (extent 129 32) ) (terminals on) (active detail) ) ) (configuration (connect D0:1 O1:1) ) ) (views (detail (origin 35 23) (extent 340 300) (configuration (connect D0:1 O1:1 (Point 312 175) (Point 343 175) (Point 343 170) (Point 374 170) ) ) ) (terminals on) (active detail) ) ) (context 8 (name "LogTest") (interface (sequence in) (sequence out) (input 1 (name "A") (optional yes) ) ) (implementation (locked no) (trigMode deg) (nextID 1) (component 0 "TOFILE" (interface (sequence in) (sequence out) (input 1 (name "A") (optional yes) ) ) (implementation (attr iopath file append "vlogfile.txt" (readTerm "\n") (fs "\r\n") (eol "\r\n") (multiField fullSyntax) (arrayFormat block) ) (procedure WRITE TEXT a.Name STR FW:6 LJ WRITE TEXT a.Result REAL FIX:2 FW:5 RJ WRITE TEXT A.Pass INT FW:2 RJ WRITE TEXT A.TimeStamp TIME:HMS:H24 FW:12 RJ EOL ) ) (views (icon ) (detail (origin 89 109) (extent 382 185) ) (terminals on) (active detail) ) ) (configuration (connect I1:1 D0:1) ) ) (views (detail (origin 35 23) (extent 525 336) (configuration (connect I1:1 D0:1 (Point 35 190) (Point 50 190) (Point 50 201) (Point 56 201) ) ) ) (terminals on) (active detail) ) ) ) (locked no) (trigMode deg) (nextID 46) (component 17 "SEQUENCER" (interface (sequence in) (sequence out) (output 1 (name "Return") (tag "Return") (lock name constraints) (optional yes) ) (output 2 (name "Log") (tag "Log") (lock name constraints) (optional yes) ) ) (implementation (component logproc "logTest(thisTest)") (component logfields "name" "pass" "result" "timestamp" "description") (procedure Init EXECEX:InitTest() //Initialize Test Setup test1 LOGEN TESTEX:DevTest1() RANGEEX: 0 LE 5 LE 10 //Device Test 1. test2 LOGEN TESTEX:DevTest2() RANGEEX: 0 LE 5 LE 10 //Device Test 2. test3 LOGEN TESTEX:DevTest3() RANGEEX: TestLimit[0] LE 5 LE TestLimit[1] //Device Test 3. ) ) (views (icon ) (detail (origin 40 269) (extent 340 102) ) (terminals on) (active detail) ) ) (component 18 "TEXTDISPLAY" (interface (sequence in) (sequence out) (input 1 (name "Data") ) ) (implementation (component clearAtPrerun 1) (component clearAtActivate 1) ) (views (icon ) (detail (origin 470 278) (extent 141 25) ) (active detail) ) ) (component 30 "TEXTDISPLAY" (interface (sequence in) (sequence out) (input 1 (name "Data") ) ) (implementation (component clearAtPrerun 1) (component clearAtActivate 1) ) (views (icon ) (detail (origin 186 417) (extent 428 27) ) (active detail) ) ) (component 31 "TOSTRING" (interface (sequence in) (sequence out) (input 1 (name "A") (optional yes) ) (output 1 (name "result") (lock name constraints) ) ) (implementation (attr iopath string write "string" (readTerm "\n") (fs " ") (eol "\n") (multiField fullSyntax) (arrayFormat block) ) (procedure WRITE TEXT A.test1.Name, ", " WRITE TEXT A.test1.Result, ", " REAL FIX:2 WRITE TEXT A.test1.Pass, ", " INT WRITE TEXT A.test1.TimeStamp, ", " DATE:WDMY WRITE TEXT A.test1.Description EOL ) ) (views (icon (origin 89 422) (extent 63 16) ) (detail (origin 117 156) (extent 387 128) ) (terminals on) (active icon) ) ) (component 33 "TOSTRING" (interface (sequence in) (sequence out) (input 1 (name "A") (optional yes) ) (output 1 (name "result") (lock name constraints) ) ) (implementation (attr iopath string write "string" (readTerm "\n") (fs " ") (eol "\n") (multiField fullSyntax) (arrayFormat block) ) (procedure WRITE TEXT A.test2.Name, ", " WRITE TEXT A.test2.Result, ", " REAL FIX:2 WRITE TEXT A.test2.Pass, ", " INT WRITE TEXT A.test2.TimeStamp, ", " DATE:WDMY WRITE TEXT A.test2.Description EOL ) ) (views (icon (origin 89 482) (extent 63 16) ) (detail (origin 97 276) (extent 387 128) ) (terminals on) (active icon) ) ) (component 34 "TEXTDISPLAY" (interface (sequence in) (sequence out) (input 1 (name "Data") ) ) (implementation (component clearAtPrerun 1) (component clearAtActivate 1) ) (views (icon ) (detail (origin 186 477) (extent 428 27) ) (active detail) ) ) (component 35 "TOSTRING" (interface (sequence in) (sequence out) (input 1 (name "A") (optional yes) ) (output 1 (name "result") (lock name constraints) ) ) (implementation (attr iopath string write "string" (readTerm "\n") (fs " ") (eol "\n") (multiField fullSyntax) (arrayFormat block) ) (procedure WRITE TEXT A.test3.Name, ", " WRITE TEXT A.test3.Result, ", " REAL FIX:2 WRITE TEXT A.test3.Pass, ", " INT WRITE TEXT A.test3.TimeStamp, ", " DATE:WDMY WRITE TEXT A.test3.Description EOL ) ) (views (icon (origin 89 542) (extent 63 16) ) (detail (origin 87 276) (extent 387 128) ) (terminals on) (active icon) ) ) (component 36 "TEXTDISPLAY" (interface (sequence in) (sequence out) (input 1 (name "Data") ) ) (implementation (component clearAtPrerun 1) (component clearAtActivate 1) ) (views (icon ) (detail (origin 186 537) (extent 428 27) ) (active detail) ) ) (component 37 "LABEL" (name "Elementary Sequencer Operation") (interface (sequence in) (sequence out) ) (implementation (component labelValue "Elementary Sequencer Operation") ) (views (icon (extent 232 0) ) (detail (origin 130 49) (extent 421 42) (just c) ) (title off) (active detail) (font "Arial" 26 bold) ) ) (component 41 "NOTE" (interface ) (implementation (component text 21 5 Elementary Sequencer Example / v1.2 / 31 aug 97 / gvg * This little program demonstrates VEE Sequencer operation. It uses three dummy test functions -- "DevTest1", "DevTest2", and "DevTest3" -- that return random numbers to perform the tests, and an auxiliary function named "InitTest" to seed the random-number generator. The v1.1 version of this example added a function named "logTest" to perform logging to a file name "vlogfile.txt". The v1.2 version added a global variable to show how limits could be invoked dynamically. * Revision history: v1.0 / not dated / gvg v1.1 / 18 jun 97 / gvg / Added logTest function. v1.2 / 31 aug 97 / gvg / Added global variable. [<>] ) ) (views (icon (origin 346 174) (extent 68 52) (iconImage "notepad.icn") ) (detail (origin 58 86) (extent 544 329) (editing enabled) ) (active icon) ) ) (component 44 "CONSTANT" (name "Real") (subType "Real") (interface (sequence in) (sequence out) (output 1 (name "Real") (lock name constraints) ) ) (implementation (component value Real (numDims 1) (size 2) (data [ 0 10 ] ) ) (component initValue Real (data 0 ) ) ) (views (icon ) (detail (origin 14 123) (extent 113 55) (showFormat real) ) (active detail) ) ) (component 45 "TOGLOBAL" (interface (sequence in) (sequence out) (input 1 (name "Data") (tag "Data") ) ) (implementation (component globalName TestLimit) ) (views (icon ) (detail (origin 185 124) (extent 81 53) ) (terminals on) (active detail) ) ) (configuration (connect D11:0 D0:0) (connect D0:1 D1:1) (connect D3:1 D2:1) (connect D0:2 D3:1) (connect D0:2 D4:1) (connect D4:1 D5:1) (connect D0:2 D6:1) (connect D6:1 D7:1) (connect D10:1 D11:1) ) ) (views (detail (origin 0 24) (extent 640 418) (configuration (connect D11:0 D0:0 (Point 220 179) (Point 220 248) ) (connect D0:1 D1:1 (Point 432 290) (Point 467 290) ) (connect D3:1 D2:1 (Point 154 430) (Point 183 430) ) (connect D0:2 D3:1 (Point 432 350) (Point 450 350) (Point 450 390) (Point 70 390) (Point 70 430) (Point 86 430) ) (connect D0:2 D4:1 (Point 432 350) (Point 450 350) (Point 450 390) (Point 70 390) (Point 70 490) (Point 86 490) ) (connect D4:1 D5:1 (Point 154 490) (Point 183 490) ) (connect D0:2 D6:1 (Point 432 350) (Point 450 350) (Point 450 390) (Point 70 390) (Point 70 520) (Point 80 520) (Point 80 550) (Point 86 550) ) (connect D6:1 D7:1 (Point 154 550) (Point 183 550) ) (connect D10:1 D11:1 (Point 129 150) (Point 142 150) ) ) (stackingOrder 7 5 2 3 4 6 1 9 10 11 0 8) ) (active detail) (numberFormats (realFormat standard) (realSigDigits 4) (realRadixSpec 4) (integerBase decimal) ) ) )