Labview Programming Reference Manual 7-30-2024!1!3000
Labview Programming Reference Manual 7-30-2024!1!3000
Programming
Reference
Manual
2024-07-29
LabVIEW Programming Reference Manual
Contents
LabVIEW Programming Reference Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325
Programming . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327
Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 329
For Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 331
While Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334
Timed Structures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 335
Timed Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337
Timed Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345
Create Timing Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
Create 1kHz Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 350
Create 1MHz Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 351
Create Software-Triggered Timing Source . . . . . . . . . . . . . . . . . . 352
Fire Software-Triggered Timing Source . . . . . . . . . . . . . . . . . . . . . . . . . . 352
Clear Timing Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 353
Synchronize Timed Structure Starts . . . . . . . . . . . . . . . . . . . . . . . . . . . . 354
Stop Timed Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 356
Build Timing Source Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 357
Case Structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 358
Event Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 360
In Place Element Structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363
Array Index / Replace Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 364
Unbundle / Bundle Elements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365
Variant To / From Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 366
In Place In / Out Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
Waveform Unbundle / Bundle Elements . . . . . . . . . . . . . . . . . . . . . . . . . 368
Data Value Reference Read / Write Element . . . . . . . . . . . . . . . . . . . . . . 369
Array Split / Replace Subarrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 371
Variant Attribute Get / Replace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 372
Map Get / Replace Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
Flat Sequence Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 376
Formula Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 378
2 ni.com
LabVIEW Programming Reference Manual
© National Instruments 3
LabVIEW Programming Reference Manual
4 ni.com
LabVIEW Programming Reference Manual
© National Instruments 5
LabVIEW Programming Reference Manual
6 ni.com
LabVIEW Programming Reference Manual
© National Instruments 7
LabVIEW Programming Reference Manual
8 ni.com
LabVIEW Programming Reference Manual
© National Instruments 9
LabVIEW Programming Reference Manual
10 ni.com
LabVIEW Programming Reference Manual
© National Instruments 11
LabVIEW Programming Reference Manual
12 ni.com
LabVIEW Programming Reference Manual
© National Instruments 13
LabVIEW Programming Reference Manual
14 ni.com
LabVIEW Programming Reference Manual
© National Instruments 15
LabVIEW Programming Reference Manual
16 ni.com
LabVIEW Programming Reference Manual
© National Instruments 17
LabVIEW Programming Reference Manual
18 ni.com
LabVIEW Programming Reference Manual
© National Instruments 19
LabVIEW Programming Reference Manual
20 ni.com
LabVIEW Programming Reference Manual
© National Instruments 21
LabVIEW Programming Reference Manual
22 ni.com
LabVIEW Programming Reference Manual
© National Instruments 23
LabVIEW Programming Reference Manual
24 ni.com
LabVIEW Programming Reference Manual
© National Instruments 25
LabVIEW Programming Reference Manual
26 ni.com
LabVIEW Programming Reference Manual
© National Instruments 27
LabVIEW Programming Reference Manual
28 ni.com
LabVIEW Programming Reference Manual
© National Instruments 29
LabVIEW Programming Reference Manual
30 ni.com
LabVIEW Programming Reference Manual
© National Instruments 31
LabVIEW Programming Reference Manual
32 ni.com
LabVIEW Programming Reference Manual
© National Instruments 33
LabVIEW Programming Reference Manual
34 ni.com
LabVIEW Programming Reference Manual
© National Instruments 35
LabVIEW Programming Reference Manual
36 ni.com
LabVIEW Programming Reference Manual
© National Instruments 37
LabVIEW Programming Reference Manual
38 ni.com
LabVIEW Programming Reference Manual
© National Instruments 39
LabVIEW Programming Reference Manual
40 ni.com
LabVIEW Programming Reference Manual
© National Instruments 41
LabVIEW Programming Reference Manual
42 ni.com
LabVIEW Programming Reference Manual
© National Instruments 43
LabVIEW Programming Reference Manual
44 ni.com
LabVIEW Programming Reference Manual
© National Instruments 45
LabVIEW Programming Reference Manual
46 ni.com
LabVIEW Programming Reference Manual
© National Instruments 47
LabVIEW Programming Reference Manual
48 ni.com
LabVIEW Programming Reference Manual
© National Instruments 49
LabVIEW Programming Reference Manual
50 ni.com
LabVIEW Programming Reference Manual
© National Instruments 51
LabVIEW Programming Reference Manual
52 ni.com
LabVIEW Programming Reference Manual
© National Instruments 53
LabVIEW Programming Reference Manual
54 ni.com
LabVIEW Programming Reference Manual
© National Instruments 55
LabVIEW Programming Reference Manual
56 ni.com
LabVIEW Programming Reference Manual
© National Instruments 57
LabVIEW Programming Reference Manual
58 ni.com
LabVIEW Programming Reference Manual
© National Instruments 59
LabVIEW Programming Reference Manual
60 ni.com
LabVIEW Programming Reference Manual
Histogram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3494
General Histogram VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3497
Correlation Coefficient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3502
Correlation Coefficient (Spearman) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3503
Correlation Coefficient (Kendall's Tau) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3504
Probability . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3505
Continuous CDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3507
Beta CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3508
Cauchy CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3509
Chi-Squared CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3510
Chi-Squared (Non-Central) CDF VI . . . . . . . . . . . . . . . . . . . . . . . . 3512
Exp CDF VI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3513
Extreme Value CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3514
F CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3515
Gamma CDF VI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3517
Laplace CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3518
Logistic CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3519
Lognormal CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3520
Normal CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3522
Pareto CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3523
Rayleigh CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3524
Student t CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3526
Triangular CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3527
Uniform CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3528
Weibull CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3530
Continuous Inverse CDF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3531
Beta Inverse CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3532
Cauchy Inverse CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3533
Chi-Squared Inverse CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3534
Chi-Squared (Non-Central) Inverse CDF VI . . . . . . . . . . . . . . . . . 3535
Exp Inverse CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3536
Extreme Value Inverse CDF VI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3538
F Inverse CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3539
Gamma Inverse CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3540
Laplace Inverse CDF VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3541
Logistic Inverse CDF VI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3542
© National Instruments 61
LabVIEW Programming Reference Manual
62 ni.com
LabVIEW Programming Reference Manual
© National Instruments 63
LabVIEW Programming Reference Manual
64 ni.com
LabVIEW Programming Reference Manual
© National Instruments 65
LabVIEW Programming Reference Manual
66 ni.com
LabVIEW Programming Reference Manual
© National Instruments 67
LabVIEW Programming Reference Manual
68 ni.com
LabVIEW Programming Reference Manual
© National Instruments 69
LabVIEW Programming Reference Manual
70 ni.com
LabVIEW Programming Reference Manual
© National Instruments 71
LabVIEW Programming Reference Manual
72 ni.com
LabVIEW Programming Reference Manual
© National Instruments 73
LabVIEW Programming Reference Manual
74 ni.com
LabVIEW Programming Reference Manual
© National Instruments 75
LabVIEW Programming Reference Manual
Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4362
............................................................ 4367
Align and Resample . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4370
............................................................ 4374
Trigger and Gate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4375
Waveform Measurements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4380
Signal Generation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4383
Signal Generator by Duration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4386
Tones and Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4389
Gaussian Modulated Sine Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4391
Gaussian Monopulse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4393
Sinc Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4395
Periodic Sinc Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4397
Sine Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4398
Triangle Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4400
Pulse Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4402
Ramp Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4403
Ramp Pattern by Samples VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4405
Ramp Pattern by Delta VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4407
Chirp Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4410
Sine Wave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4411
Triangle Wave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4413
Square Wave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4415
Sawtooth Wave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4417
Arbitrary Wave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4420
Uniform White Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4422
Gaussian White Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4424
Periodic Random Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4427
Binary MLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4428
Impulse Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4431
Gamma Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4432
Poisson Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4434
Binomial Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4436
Bernoulli Noise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4438
Pulse Train . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4440
Quasi Random . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4443
76 ni.com
LabVIEW Programming Reference Manual
© National Instruments 77
LabVIEW Programming Reference Manual
78 ni.com
LabVIEW Programming Reference Manual
© National Instruments 79
LabVIEW Programming Reference Manual
80 ni.com
LabVIEW Programming Reference Manual
© National Instruments 81
LabVIEW Programming Reference Manual
82 ni.com
LabVIEW Programming Reference Manual
© National Instruments 83
LabVIEW Programming Reference Manual
84 ni.com
LabVIEW Programming Reference Manual
© National Instruments 85
LabVIEW Programming Reference Manual
86 ni.com
LabVIEW Programming Reference Manual
© National Instruments 87
LabVIEW Programming Reference Manual
88 ni.com
LabVIEW Programming Reference Manual
© National Instruments 89
LabVIEW Programming Reference Manual
90 ni.com
LabVIEW Programming Reference Manual
© National Instruments 91
LabVIEW Programming Reference Manual
92 ni.com
LabVIEW Programming Reference Manual
© National Instruments 93
LabVIEW Programming Reference Manual
94 ni.com
LabVIEW Programming Reference Manual
© National Instruments 95
LabVIEW Programming Reference Manual
96 ni.com
LabVIEW Programming Reference Manual
© National Instruments 97
LabVIEW Programming Reference Manual
98 ni.com
LabVIEW Programming Reference Manual
© National Instruments 99
LabVIEW Programming Reference Manual
100 ni.com
LabVIEW Programming Reference Manual
102 ni.com
LabVIEW Programming Reference Manual
Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5834
FL Create Variable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5835
FL Get Variable VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5838
FL Set Variable VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5840
FL Get Number of Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5843
FL Get Variable Names . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5844
FL Plot Variable VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5844
Membership. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5846
FL Create Membership Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5847
FL Create Membership Function (Triangle) VI . . . . . . . . . . . . . . 5848
FL Create Membership Function (Trapezoid) VI . . . . . . . . . . . . . 5850
FL Create Membership Function (Singleton) VI . . . . . . . . . . . . . 5852
FL Create Membership Function (Sigmoid) VI . . . . . . . . . . . . . . 5854
FL Create Membership Function (Gaussian) VI . . . . . . . . . . . . . 5857
FL Create Membership Function (User-Defined) VI . . . . . . . . . . 5859
FL Get Membership Function VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5862
FL Get Membership Function (Fuzzy System) VI . . . . . . . . . . . . 5863
FL Get Membership Function (MF Array) VI . . . . . . . . . . . . . . . . . 5865
FL Set Membership Function VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5869
FL Set Membership Function (Fuzzy System) VI . . . . . . . . . . . . 5869
FL Set Membership Function (MF array) VI . . . . . . . . . . . . . . . . . 5872
FL Get Number of Membership Functions . . . . . . . . . . . . . . . . . . . . . . 5876
FL Get Membership Function Names VI. . . . . . . . . . . . . . . . . . . . . . . . . 5877
FL Get Membership Function Names (Fuzzy System) VI . . . . . 5877
FL Get Membership Function Names (MF Array) VI . . . . . . . . . . 5879
Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5881
FL Create Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5883
FL Get Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5887
FL Set Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5890
FL Get Number of Rules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5892
FL Get Rules as Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5893
FL Create Antecedent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5894
FL Create Consequent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5896
FL Integrate Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5897
FL System VI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5901
Express . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5906
Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5907
Instrument Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5908
Simulate Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5909
Simulate Arbitrary Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5917
Acquire Sound . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5919
Read From Measurement File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5921
Prompt User for Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5926
File Dialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5928
Signal Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5932
Spectral Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5933
Distortion Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5939
Tone Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5942
Dual Channel Spectral Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5944
Amplitude and Level Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5951
Timing and Transition Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5955
Curve Fitting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5958
Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5963
Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5968
Convolution and Correlation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5974
Simulate Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5976
Mask and Limit Testing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5983
Create Histogram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5987
Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5989
Instrument Drivers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5990
Build Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5991
Display Message to User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5994
Play Waveform . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5996
Write To Measurement File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5997
Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6005
Signal Manipulation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6008
Merge Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6010
Split Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6011
Select Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6012
............................................................ 6013
Align and Resample . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6014
Collector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6018
104 ni.com
LabVIEW Programming Reference Manual
............................................................ 6019
Sample Compression . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6019
............................................................ 6023
Trigger and Gate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6024
Relay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6028
............................................................ 6030
Append Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6030
............................................................ 6033
Repack Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6033
............................................................ 6035
Extract Portion of Signal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6035
............................................................ 6037
Delay Values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6038
............................................................ 6039
Convert from Dynamic Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6040
............................................................ 6041
Convert to Dynamic Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6042
............................................................ 6043
Group Digital Signals . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6044
Set Dynamic Data Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6046
Get Dynamic Data Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6048
Execution Control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6051
While Loop with Button . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6052
Flat Sequence Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6052
Case Structure. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6054
Time Delay . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6056
Elapsed Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6056
Arithmetic & Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6059
Formula . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6060
Scaling and Mapping . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6064
Time Domain Math. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6066
Express Numeric . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6068
Add Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6071
Subtract Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6072
Multiply Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6074
Divide Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6075
106 ni.com
LabVIEW Programming Reference Manual
108 ni.com
LabVIEW Programming Reference Manual
Addons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6162
Find LabVIEW Add-ons... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6163
Toolkits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6163
Favorites. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6164
User Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6164
Express User Libraries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6164
Property and Method Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6165
LabVIEW 3D Graph . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6165
LabVIEW 3D Graph Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6165
Graph:Projection Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6172
Graph:Background Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6172
Graph:View Direction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6173
Graph:Fast Draw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6173
Graph:3d Picture Control Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6174
Graph:X-Y Grid Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6175
Graph:Y-Z Grid Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6175
Graph:X-Z Grid Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6176
Graph:Lighting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6176
Graph:Disable Updates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6177
Plots:Active Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6177
Plots:Draw XY Projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6178
Plots:Draw YZ Projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6178
Plots:Draw XZ Projection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6179
Plots:Surface Draw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6179
Plots:Surface Color Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6180
Plots:Surface Opacity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6181
Plots:Surface Shading . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6181
Plots:Contour Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6182
Plots:Contour Axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6182
Plots:Contour Draw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6183
Plots:Contour Antialiasing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6183
Plots:Contour Width . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6184
Plots:Contour Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6184
Plots:Contour Levels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6185
Plots:Contour Interval . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6185
Plots:Contour Level List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6186
110 ni.com
LabVIEW Programming Reference Manual
112 ni.com
LabVIEW Programming Reference Manual
AllVIsInMemory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6256
AppKind . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6256
ApplicationDirectory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6257
AppName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6257
AppTargetCPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6258
AppTargetOS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6258
AutomaticClose. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6258
CmdArgs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6259
DefaultDataLocation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6259
ExportedVIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6260
Language . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6260
OSBuildNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6260
OSDetailedName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6261
OSName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6261
OSVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6262
PrintDefaultPrinter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6262
PrintersAvailable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6262
PrintingColorDepth . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6263
PrintMethod. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6263
PrintSetupCustomClusterConstants . . . . . . . . . . . . . . . . . . . . . . . . . . . 6263
PrintSetupCustomConnector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6264
PrintSetupCustomControlDesc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6264
PrintSetupCustomControls . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6264
PrintSetupCustomControlTypes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6265
PrintSetupCustomDescription . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6265
PrintSetupCustomDiagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6265
PrintSetupCustomDiagramHidden . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6266
PrintSetupCustomDiagramRepeat . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6266
PrintSetupCustomExpressVIConfigInfo . . . . . . . . . . . . . . . . . . . . . . . . . 6266
PrintSetupCustomHierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6267
PrintSetupCustomHistory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6267
PrintSetupCustomLabel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6267
PrintSetupCustomPanel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6268
PrintSetupCustomPanelBorder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6268
PrintSetupCustomSubVIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6268
PrintSetupFileWrapText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6269
PrintSetupJPEGQuality. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6269
PrintSetupPNGCompressLevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6270
RTHostConnected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6270
SaveVersion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6270
SaveVersions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6271
ShowFPTipStrips . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6271
UserName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6272
Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6272
VersionYear . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6272
VIServerPort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6273
Enumerations (ActiveX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6273
AppKindEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6273
AppTargCPUEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6274
AppTargOSEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6274
ExecStateEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6275
FPRunTimePosEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6275
FPStateEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6276
HTMLImageFormatEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6276
LibraryItemScopeEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6277
PageOrientationEnum. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6277
PrintFormatEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6277
PrintMarginsEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6278
PrintMethodsEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6278
PrintSetupCustomLabelEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6279
VIExecSysEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6279
VIFPBehaviorEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6280
VILockStateEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6280
VIPriorityEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6281
VITypeEnum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6281
Project Properties and Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6282
Project Methods (ActiveX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6282
Close . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6283
CloseWindow. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6283
DeployItems . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6283
OpenWindow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6284
Save . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6284
114 ni.com
LabVIEW Programming Reference Manual
SaveForPrevious . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6285
Project Properties (ActiveX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6285
ActiveItemsInTree. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6287
Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6287
Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6288
MyComputer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6288
Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6288
Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6289
Root . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6289
SelectedItemsInTree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6289
Targets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6290
WindowState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6290
ProjectItem Properties and Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6290
ProjectItem Methods (ActiveX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6290
AddFile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6292
AddItem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6292
AddItemFromMemory . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6293
Delete . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6294
DeleteTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6294
GetAllDescendents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6295
GetTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6296
GetTagNames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6296
GetXMLTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6297
SetTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6297
SetXMLTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6298
ProjectItem Properties (ActiveX). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6298
Children . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6302
ContainsConflicts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6302
DisplayName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6303
FindCallers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6303
FindChildren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6303
FindConflicts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6304
FindFriends . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6304
FindItemsIncorrectlyClaimedByLibrary . . . . . . . . . . . . . . . . . . . . . . . . 6304
FindItemsThatMakeThisADependency . . . . . . . . . . . . . . . . . . . . . . . . . 6305
FindItemsWithNoCallers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6305
FindSubVIs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6305
FindVariableCallers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6306
Icon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6306
InConflict . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6306
ItemID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6307
LibraryItemType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6307
LibraryItemTypeString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6307
Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6308
Parent . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6308
Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6309
Project. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6309
Target . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6309
TypeGUID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6310
TypeString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6310
VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6310
VINoLoad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6311
VisibleInTree . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6311
Library Properties and Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6311
Library Methods (ActiveX). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6312
DeleteLibTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6313
DisconnectFromLibrary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6314
GetLibTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6314
GetLockState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6315
GetSourceScope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6316
GetTagNames . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6316
HiliteInProjectWindow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6317
Save . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6317
SaveCopy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6318
SaveForPrevious . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6318
SetLibTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6319
SetLockState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6320
SetSourceScope . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6320
SetSourceScopeAndPropagate . . . . . . . . . . . . . . . . . . . . . . . . . . . 6321
Library Properties (ActiveX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6322
AlarmsEventsDBComputer. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6324
AlarmsEventsDBName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6325
116 ni.com
LabVIEW Programming Reference Manual
AlarmsEventsDBPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6325
AlarmsEventsEnable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6325
AlarmsEventsUseDataLoggingDB . . . . . . . . . . . . . . . . . . . . . . . . . 6326
ContainsCompiledCode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6326
DataLoggingDBComputer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6326
DataLoggingDBName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6327
DataLoggingDBPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6327
DataLoggingEnable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6327
DataLoggingLifespan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6328
Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6328
HelpDocumentPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6329
HelpDocumentTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6329
LocalName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6330
QualifiedName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6330
Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6331
XInterfaceLibrary Properties and Methods . . . . . . . . . . . . . . . . . . . . . . 6331
XInterfaceLibrary Methods (ActiveX) . . . . . . . . . . . . . . . . . . . . . . 6331
AddAbility . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6332
AddMethod . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6332
NewProperty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6333
PropertyFolder Properties and Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6333
PropertyFolder Methods (ActiveX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6333
AddPropertyVI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6334
XPropertyFolder Properties and Methods . . . . . . . . . . . . . . . . . . . . . . 6334
XPropertyFolder Properties (ActiveX) . . . . . . . . . . . . . . . . . . . . . 6334
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6335
HelpTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6335
Identifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6336
LongName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6336
TargetItem Properties and Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6336
TargetItem Methods (ActiveX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6336
RefreshDependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6337
TargetItem Properties (ActiveX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6337
BuildSpecifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6337
Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6338
VI Properties and Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6338
118 ni.com
LabVIEW Programming Reference Manual
BDModificationBitSet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6377
BDSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6378
Callers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6378
CloneName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6378
CloseFPAfterCall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6379
CodeSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6379
DataSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6379
Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6379
EditMode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6380
ExecInlining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6380
ExecIsInlineable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6381
ExecPriority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6381
ExecState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6381
ExpandWhenDroppedAsSubVI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6381
FPAllowRTPopup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6382
FPBehavior. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6382
FPHiliteReturnButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6382
FPKeepWinProps . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6383
FPMinimizable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6383
FPModificationBitSet. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6384
FPMonitor. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6384
FPResizable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6384
FPRunTransparently . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6385
FPShowMenuBar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6385
FPSize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6385
FPState . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6386
FPTitleBarVisible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6386
FPTransparency . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6387
FPWinBounds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6387
FPWinClosable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6388
FPWinCustomTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6388
FPWinIsFrontMost . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6389
FPWinPanelBounds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6389
FPWinTitle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6390
HelpDocumentPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6390
HelpDocumentTag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6391
HelpDocumentUrl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6391
HelpUseOnline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6392
HistAddCommentsAtSave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6392
HistoryText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6392
HistPromptAtClose. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6393
HistPromptForCommentsAtSave . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6393
HistRecordAppComments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6393
HistUseDefaults . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6394
IsCloneVI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6394
IsProbe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6395
IsReentrant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6395
Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6395
LogAtFinish . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6396
LogFilePath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6396
Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6396
OwningApp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6397
Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6397
PreferredExecSystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6397
PrintHeaderDatePrint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6398
PrintHeaderModifyDate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6398
PrintHeaderPageNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6398
PrintHeaderVIIcon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6399
PrintHeaderVIName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6399
PrintingBDScaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6399
PrintingFPScaling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6400
PrintingHeaders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6400
PrintingHeaderVIPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6401
PrintingOrientation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6401
PrintLogFileAtFinish . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6401
PrintMargins . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6401
ReentrancyType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6402
RevisionNumber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6402
RunOnOpen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6403
RunTimeMenuPath . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6403
ShowFPOnCall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6403
ShowFPOnLoad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6404
120 ni.com
LabVIEW Programming Reference Manual
SuspendOnCall . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6404
TBShowAbortButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6404
TBShowFreeRunButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6405
TBShowRunButton . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6405
TBVisible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6405
VIType . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6406
DataSocket Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6407
Buffer Maximum Bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6407
Buffer Maximum Packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6407
Buffer Utilization (Bytes). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6408
Buffer Utilization (Packets) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6408
Connection Status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6409
URL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6409
Filesystem Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6409
Filesystem Statistics Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6409
Get Bytes Free VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6410
Get Bytes Total VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6410
Is Read Only VI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6411
LabVIEW Manager Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6412
File Manager Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6412
FAddPath (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6415
FAppendName (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . 6416
FAppPath (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6416
FArrToPath (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6417
FCopy (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6418
FCreate (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6419
FCreateAlways (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . . 6421
FDepth (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6423
FDestroyPath (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . . . 6424
FDirName (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6424
FDisposeRefNum (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . 6425
FEmptyPath (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . . . . 6426
FExists (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6427
FFlattenPath (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . . . 6427
FFlush (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6428
FGetAccessRights (LabVIEW Manager Function) . . . . . . . . . . . . . . . . . . . . . . 6429
122 ni.com
LabVIEW Programming Reference Manual
124 ni.com
LabVIEW Programming Reference Manual
126 ni.com
LabVIEW Programming Reference Manual
128 ni.com
LabVIEW Programming Reference Manual
130 ni.com
LabVIEW Programming Reference Manual
Cursor:Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6652
Cursor:Position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6652
Cursor:X Scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6653
Cursor:Y Scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6653
Cursor:Watch Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6654
Cursor:Watch All Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6655
Cursor:Plot Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6655
Cursor:Label Offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6656
Cursor:Selection Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6656
Cursor:Line Style . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6657
Cursor:Line Width . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6657
Cursor:Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6658
Plot Specific:Active Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6658
Plot Specific:Error Bar Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6659
Plot Specific:Error Bar Line Style . . . . . . . . . . . . . . . . . . . . . . . . . 6660
Plot Specific:Error Bar Line Width. . . . . . . . . . . . . . . . . . . . . . . . . 6660
Plot Specific:Error Bar Point Style . . . . . . . . . . . . . . . . . . . . . . . . 6661
Plot Specific:Error Bar Interpolation . . . . . . . . . . . . . . . . . . . . . . 6661
Plot Specific:Error Bar Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6662
Plot Specific:Error Bar Point Fill Color . . . . . . . . . . . . . . . . . . . . . 6662
Plot Specific:Error Bar Fill to . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6663
Plot Specific:Error Bar Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6663
Plot Specific:Marker Line Style . . . . . . . . . . . . . . . . . . . . . . . . . . . 6664
Plot Specific:Marker Line Width . . . . . . . . . . . . . . . . . . . . . . . . . . 6665
Plot Specific:Marker Line Color . . . . . . . . . . . . . . . . . . . . . . . . . . . 6665
Plot Specific:Error Bar Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6666
Annotation List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6666
2D Error Bar Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6667
Export Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6667
2D Feather . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6668
2D Feather Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6668
Graph:Graph Legend Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6674
Graph:Plot Legend Visible. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6675
Graph:Plot Legend Auto Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6675
Graph:Plot Legend Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6676
Graph:X Scrollbar Visible. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6676
132 ni.com
LabVIEW Programming Reference Manual
134 ni.com
LabVIEW Programming Reference Manual
136 ni.com
LabVIEW Programming Reference Manual
138 ni.com
LabVIEW Programming Reference Manual
140 ni.com
LabVIEW Programming Reference Manual
142 ni.com
LabVIEW Programming Reference Manual
144 ni.com
LabVIEW Programming Reference Manual
146 ni.com
LabVIEW Programming Reference Manual
148 ni.com
LabVIEW Programming Reference Manual
150 ni.com
LabVIEW Programming Reference Manual
152 ni.com
LabVIEW Programming Reference Manual
154 ni.com
LabVIEW Programming Reference Manual
156 ni.com
LabVIEW Programming Reference Manual
158 ni.com
LabVIEW Programming Reference Manual
160 ni.com
LabVIEW Programming Reference Manual
162 ni.com
LabVIEW Programming Reference Manual
164 ni.com
LabVIEW Programming Reference Manual
166 ni.com
LabVIEW Programming Reference Manual
X Scale:Filpped . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7433
X Scale:Mapping Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7433
X Scale:Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7434
X Scale:Style . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7434
X Scale:Scale Fit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7435
X Scale:Offset and Multiplier:Offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7435
X Scale:Offset and Multiplier:Multiplier . . . . . . . . . . . . . . . . . . . . . . . . . 7436
X Scale:Tick:Major Tick Color. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7436
X Scale:Tick:Minor Tick Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7437
X Scale:Grid:Major Grid Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7437
X Scale:Grid:Minor Grid Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7438
X Scale:Range:Minimum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7438
X Scale:Range:Maximum. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7439
X Scale:Range:Increment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7440
X Scale:Range:Minor Increment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7440
X Scale:Range:Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7441
X Scale:Marker:Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7441
X Scale:Marker:FG Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7442
X Scale:Marker:BG Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7442
X Scale:Marker:Font Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7443
X Scale:Marker:Font Size. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7443
X Scale:Marker:Font Bold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7444
X Scale:Marker:Font Italic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7444
X Scale:Marker:Font Strike . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7445
X Scale:Marker:Font Underline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7445
X Scale:Name Label:Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7446
X Scale:Name Label:FG Color. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7447
X Scale:Name Label:BG Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7447
X Scale:Name Label:Font Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7448
X Scale:Name Label:Font Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7448
X Scale:Name Label:Font Bold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7449
X Scale:Name Label:Font Italic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7449
X Scale:Name Label:Font Strike . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7450
X Scale:Name Label:Font Underline. . . . . . . . . . . . . . . . . . . . . . . . . . . . 7450
X Scale:Name Label:Justification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7451
X Scale:Name Label:Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7451
Y Scale:Editable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7452
Y Scale:Filpped . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7452
Y Scale:Mapping Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7453
Y Scale:Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7454
Y Scale:Style. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7454
Y Scale:Scale Fit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7455
Y Scale:Offset and Multiplier:Offset . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7455
Y Scale:Offset and Multiplier:Multiplier . . . . . . . . . . . . . . . . . . . . . . . . . 7456
Y Scale:Tick:Major Tick Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7456
Y Scale:Tick:Minor Tick Color. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7457
Y Scale:Grid:Major Grid Color. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7457
Y Scale:Grid:Minor Grid Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7458
Y Scale:Range:Minimum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7458
Y Scale:Range:Maximum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7459
Y Scale:Range:Increment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7459
Y Scale:Range:Minor Increment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7460
Y Scale:Range:Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7461
Y Scale:Marker:Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7461
Y Scale:Marker:FG Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7462
Y Scale:Marker:BG Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7462
Y Scale:Marker:Font Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7463
Y Scale:Marker:Font Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7463
Y Scale:Marker:Font Bold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7464
Y Scale:Marker:Font Italic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7464
Y Scale:Marker:Font Strike . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7465
Y Scale:Marker:Font Underline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7465
Y Scale:Name Label:Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7466
Y Scale:Name Label:FG Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7466
Y Scale:Name Label:BG Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7467
Y Scale:Name Label:Font Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7468
Y Scale:Name Label:Font Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7468
Y Scale:Name Label:Font Bold. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7469
Y Scale:Name Label:Font Italic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7469
Y Scale:Name Label:Font Strike . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7470
Y Scale:Name Label:Font Underline . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7470
Y Scale:Name Label:Justification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7471
168 ni.com
LabVIEW Programming Reference Manual
170 ni.com
LabVIEW Programming Reference Manual
172 ni.com
LabVIEW Programming Reference Manual
174 ni.com
LabVIEW Programming Reference Manual
176 ni.com
LabVIEW Programming Reference Manual
Bounds . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7688
Bounds:Area Height . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7689
Bounds:Area Width. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7689
Dependencies:Found Dependency Names . . . . . . . . . . . . 7690
Dependencies:Found Dependency Paths . . . . . . . . . . . . . 7691
Dependencies:Missing Dependency Names . . . . . . . . . . . 7692
Dependencies:Missing Dependency Paths . . . . . . . . . . . . 7693
Group Member Refs[] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7694
Grouped . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7695
Locked . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7695
Master Bounds Rect . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7696
Position . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7697
Position:Left . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7698
Position:Top . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7699
Selected . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7699
Total Bounds Rect. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7700
UID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7701
Decoration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7701
Decoration Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7702
Colors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7702
Colors:BG Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7703
Colors:FG Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7704
Owning Pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7705
Size. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7705
Size:Height . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7706
Size:Width. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7707
Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7707
Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7708
Text Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7708
Move to Default Location . . . . . . . . . . . . . . . . . 7708
Text Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7709
Attached Object. . . . . . . . . . . . . . . . . . . . . . . . . . 7711
Document Bounds . . . . . . . . . . . . . . . . . . . . . . . 7712
Document Bounds:Height . . . . . . . . . . . . . . . . 7712
Document Bounds:Width . . . . . . . . . . . . . . . . . 7713
Enable Hyperlinks. . . . . . . . . . . . . . . . . . . . . . . . 7714
178 ni.com
LabVIEW Programming Reference Manual
Font . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7714
Font:Bold . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7715
Font:Color. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7716
Font:Italic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7717
Font:Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7717
Font:Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7718
Font:Strikeout . . . . . . . . . . . . . . . . . . . . . . . . . . . 7719
Font:Underline . . . . . . . . . . . . . . . . . . . . . . . . . . 7720
Justification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7720
Lock . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7721
Scroll Position . . . . . . . . . . . . . . . . . . . . . . . . . . . 7722
Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7723
Selection:End. . . . . . . . . . . . . . . . . . . . . . . . . . . . 7724
Selection:Start . . . . . . . . . . . . . . . . . . . . . . . . . . . 7725
Size to Text? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7726
Text. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7726
Text Colors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7728
Text Colors:BG Color . . . . . . . . . . . . . . . . . . . . . 7729
Text Colors:Text Color . . . . . . . . . . . . . . . . . . . . 7729
Text Overflow . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7730
Vertical Arrangement . . . . . . . . . . . . . . . . . . . . . 7731
NumericText . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7731
NumericText Properties. . . . . . . . . . . . . . . . . . . 7732
Display Format . . . . . . . . . . . . . . . . . . . . . 7732
Display Format:Format . . . . . . . . . . . . . . 7733
Display Format:Precision . . . . . . . . . . . . 7734
Format String . . . . . . . . . . . . . . . . . . . . . . . 7735
Scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7736
Scale Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7736
Display Format . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7738
Display Format:Format . . . . . . . . . . . . . . . . . . . . . . . . 7739
Display Format:Precision . . . . . . . . . . . . . . . . . . . . . . 7740
Editable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7740
Flipped . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7741
Format String . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7742
Mapping Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7742
Marker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7743
Marker Colors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7744
Marker Colors:BG Color . . . . . . . . . . . . . . . . . . . . . . . . 7744
Marker Colors:Text Color . . . . . . . . . . . . . . . . . . . . . . . 7745
Range. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7746
Range:Increment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7747
Range:Maximum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7747
Range:Minimum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7748
Range:Minor Increment . . . . . . . . . . . . . . . . . . . . . . . . 7749
Range:Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7749
Style . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7750
Tick Colors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7752
Tick Colors:Minor Tick Color . . . . . . . . . . . . . . . . . . . 7752
Tick Colors:Tick Color . . . . . . . . . . . . . . . . . . . . . . . . . 7753
Uniform Marker Spacing? . . . . . . . . . . . . . . . . . . . . . . 7754
Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7754
ColorScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7755
ColorScale Properties . . . . . . . . . . . . . . . . . . . . . . . . . 7755
High Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7756
Interpolate Color . . . . . . . . . . . . . . . . . . . . . . . . . 7756
Low Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7757
Marker Values[] . . . . . . . . . . . . . . . . . . . . . . . . . . 7758
Ramp Visible . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7759
RotaryColorScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7759
RotaryColorScale Properties . . . . . . . . . . . . . . 7759
Scale Position . . . . . . . . . . . . . . . . . . . . . . 7760
Scale Position:Range . . . . . . . . . . . . . . . . 7761
Scale Position:Start . . . . . . . . . . . . . . . . . 7761
GraphScale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7762
GraphScale Properties . . . . . . . . . . . . . . . . . . . . . . . . . 7762
Expand Digital Buses . . . . . . . . . . . . . . . . . . . . . 7763
Grid Colors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7764
Grid Colors:Major Color . . . . . . . . . . . . . . . . . . . 7765
Grid Colors:Minor Color . . . . . . . . . . . . . . . . . . . 7766
Loose Fit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7766
Marker Values[] . . . . . . . . . . . . . . . . . . . . . . . . . . 7767
180 ni.com
LabVIEW Programming Reference Manual
182 ni.com
LabVIEW Programming Reference Manual
184 ni.com
LabVIEW Programming Reference Manual
186 ni.com
LabVIEW Programming Reference Manual
188 ni.com
LabVIEW Programming Reference Manual
190 ni.com
LabVIEW Programming Reference Manual
192 ni.com
LabVIEW Programming Reference Manual
194 ni.com
LabVIEW Programming Reference Manual
196 ni.com
LabVIEW Programming Reference Manual
198 ni.com
LabVIEW Programming Reference Manual
Viewport:Size:Height . . . . . . . . . . . . . . . . 8299
Viewport:Size:Width . . . . . . . . . . . . . . . . . 8300
MixedSignalGraph Events . . . . . . . . . . . . . . . . . 8300
Cursor Grab . . . . . . . . . . . . . . . . . . . . . . . . 8301
Cursor Grab? . . . . . . . . . . . . . . . . . . . . . . . 8302
Cursor Move . . . . . . . . . . . . . . . . . . . . . . . . 8303
Cursor Release . . . . . . . . . . . . . . . . . . . . . . 8304
String . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8305
String Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8305
Append String . . . . . . . . . . . . . . . . . . . . . . . . . . . 8305
Byte Offset from Point . . . . . . . . . . . . . . . . . . . . 8306
Get Nth Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8307
Size to Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8309
String Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8309
Allow Dragging . . . . . . . . . . . . . . . . . . . . . . . . . . 8311
Allow Dropping . . . . . . . . . . . . . . . . . . . . . . . . . . 8311
Default Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8312
Display Format Visible? . . . . . . . . . . . . . . . . . . . 8313
Display Style. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8314
Enable Wrapping. . . . . . . . . . . . . . . . . . . . . . . . . 8314
Horizontal Scrollbar Visible . . . . . . . . . . . . . . . 8315
Limit To Single Line? . . . . . . . . . . . . . . . . . . . . . 8316
Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8317
Size:Height . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8318
Size:Width. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8318
Text. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8319
Update While Typing? . . . . . . . . . . . . . . . . . . . . 8320
Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8321
Value (Signaling) . . . . . . . . . . . . . . . . . . . . . . . . . 8321
Vertical Scrollbar Visible . . . . . . . . . . . . . . . . . . 8322
String Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8323
Drag Starting . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8323
Drag Starting? . . . . . . . . . . . . . . . . . . . . . . . . . . . 8325
ComboBox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8328
ComboBox Properties . . . . . . . . . . . . . . . . . . . . 8328
Allow Undefined Strings . . . . . . . . . . . . . 8329
200 ni.com
LabVIEW Programming Reference Manual
202 ni.com
LabVIEW Programming Reference Manual
204 ni.com
LabVIEW Programming Reference Manual
Colors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8463
Colors:BG Color . . . . . . . . . . . . . . . . . . . . . 8464
Colors:FG Color . . . . . . . . . . . . . . . . . . . . . 8465
Fixed Tab Dimension . . . . . . . . . . . . . . . . 8465
Fixed Tab Dimension:Height . . . . . . . . . 8467
Fixed Tab Dimension:Width . . . . . . . . . . 8467
Justify Tabs. . . . . . . . . . . . . . . . . . . . . . . . . 8468
Page Labels Display Visible? . . . . . . . . . . 8469
Tab Control Pane Dimension . . . . . . . . . 8470
Tab Control Pane Dimension:Height . . 8470
Tab Control Pane Dimension:Width . . . 8471
Tab Into . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8472
Tab Layout . . . . . . . . . . . . . . . . . . . . . . . . . 8472
Tab Location. . . . . . . . . . . . . . . . . . . . . . . . 8473
Tab Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8474
Tabs Visible? . . . . . . . . . . . . . . . . . . . . . . . . 8475
AbsTime . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8475
AbsTime Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . 8475
Data Entry Limits . . . . . . . . . . . . . . . . . . . . . . . . 8476
Data Entry Limits:Increment . . . . . . . . . . . . . . 8477
Data Entry Limits:Maximum . . . . . . . . . . . . . . . 8478
Data Entry Limits:Minimum . . . . . . . . . . . . . . . 8479
Format String . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8479
Numeric Text . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8480
Response to Value Outside Limits . . . . . . . . . . 8481
Response to Value Outside Limits:Increment. . . . .
8483
Response to Value Outside Limits:Maximum . . . . .
8484
Response to Value Outside Limits:Minimum . . . . .
8485
DigitalTable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8486
DigitalTable Methods . . . . . . . . . . . . . . . . . . . . . . . . . . 8486
Export Data to Clipboard . . . . . . . . . . . . . . . . . . 8486
Export Data to Excel . . . . . . . . . . . . . . . . . . . . . . 8487
Export Image . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8488
206 ni.com
LabVIEW Programming Reference Manual
208 ni.com
LabVIEW Programming Reference Manual
210 ni.com
LabVIEW Programming Reference Manual
PickPoint. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8648
Projection:Frustum . . . . . . . . . . . . . . . . . . . . . . 8649
Projection:Orthographic . . . . . . . . . . . . . . . . . . 8651
Projection:Perspective . . . . . . . . . . . . . . . . . . . 8652
Redraw . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8654
Render to Image . . . . . . . . . . . . . . . . . . . . . . . . . 8654
Setup Camera . . . . . . . . . . . . . . . . . . . . . . . . . . . 8655
WindowToObjectCoords . . . . . . . . . . . . . . . . . . 8656
SceneGraphDisplay Properties . . . . . . . . . . . . . . . . . 8657
Automatic Projection Mode . . . . . . . . . . . . . . . 8658
Background Color . . . . . . . . . . . . . . . . . . . . . . . . 8659
Camera Controller:Auto Redraw . . . . . . . . . . . 8660
Camera Controller:Type . . . . . . . . . . . . . . . . . . 8661
Content Bounds . . . . . . . . . . . . . . . . . . . . . . . . . 8661
Content Bounds:Height . . . . . . . . . . . . . . . . . . . 8662
Content Bounds:Width . . . . . . . . . . . . . . . . . . . 8663
Content Position . . . . . . . . . . . . . . . . . . . . . . . . . 8663
Content Position:Horizontal. . . . . . . . . . . . . . . 8664
Content Position:Vertical . . . . . . . . . . . . . . . . . 8665
ModelView Matrix . . . . . . . . . . . . . . . . . . . . . . . . 8666
Projection Matrix. . . . . . . . . . . . . . . . . . . . . . . . . 8666
LabVIEWClassControl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8667
LabVIEWClassControl Methods . . . . . . . . . . . . . . . . . 8667
ReplaceWithControlOfOtherClass. . . . . . . . . . 8668
LabVIEWClassControl Properties . . . . . . . . . . . . . . . 8668
LabVIEW Class Name . . . . . . . . . . . . . . . . . . . . . 8669
Qualified Name . . . . . . . . . . . . . . . . . . . . . . . . . . 8669
MixedCheckbox . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8670
MixedCheckbox Properties . . . . . . . . . . . . . . . . . . . . . 8670
Allow Mixed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8671
Button Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8672
Button Size:Height . . . . . . . . . . . . . . . . . . . . . . . 8672
Button Size:Width . . . . . . . . . . . . . . . . . . . . . . . . 8673
Strings [] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8674
Text. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8675
Toggle Key Binding . . . . . . . . . . . . . . . . . . . . . . . 8676
MultiSegmentPipe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8678
MultiSegmentPipe Properties . . . . . . . . . . . . . . . . . . 8679
Colors [2]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8679
Flange 1:Depth . . . . . . . . . . . . . . . . . . . . . . . . . . 8680
Flange 1:Width . . . . . . . . . . . . . . . . . . . . . . . . . . . 8681
Flange 2:Depth . . . . . . . . . . . . . . . . . . . . . . . . . . 8683
Flange 2:Width . . . . . . . . . . . . . . . . . . . . . . . . . . . 8684
Pipe Radius . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8685
StubDDO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8686
Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8686
Set Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8687
Scroll to Element . . . . . . . . . . . . . . . . . . . . . . . . 8687
Set Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8688
Horizontal Scrollbar Visible . . . . . . . . . . . . . . . 8688
Number of Visible Elements . . . . . . . . . . . . . . . 8689
Set Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8690
Top Visible Element . . . . . . . . . . . . . . . . . . . . . . 8690
Vertical Scrollbar Visible . . . . . . . . . . . . . . . . . . 8691
Map . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8692
Map Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8692
Scroll To Key. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8692
Map Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8693
Horizontal Scrollbar Visible . . . . . . . . . . . . . . . 8693
Map Key. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8694
Map Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8695
Number of Visible Key Value Pairs. . . . . . . . . . 8695
Top Visible KeyValue Pair . . . . . . . . . . . . . . . . . 8696
Vertical Scrollbar Visible . . . . . . . . . . . . . . . . . . 8697
Panel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8697
Panel Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8698
Align Selection. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8698
Clear Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8699
Convert Panel To Screen Coordinates . . . . . . . . . . . 8700
Convert Screen To Panel Coordinates . . . . . . . . . . . 8701
Copy Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8702
Distribute Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . 8702
212 ni.com
LabVIEW Programming Reference Manual
214 ni.com
LabVIEW Programming Reference Manual
216 ni.com
LabVIEW Programming Reference Manual
Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8809
ControlTerminal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8810
ControlTerminal Methods . . . . . . . . . . . . . . . . . . . . . . 8810
Change To Constant . . . . . . . . . . . . . . . . . . . . . . 8810
Change to Shared Variable Node . . . . . . . . . . 8811
Toggle Direction . . . . . . . . . . . . . . . . . . . . . . . . . 8812
ControlTerminal Properties . . . . . . . . . . . . . . . . . . . . 8812
Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8813
Icon View? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8814
Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8814
InnerTerminal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8815
InnerTerminal Properties . . . . . . . . . . . . . . . . . . . . . . 8815
Tunnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8815
OuterTerminal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8816
OuterTerminal Properties . . . . . . . . . . . . . . . . . . . . . . 8816
Tunnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8816
ParameterTerminal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8817
ParameterTerminal Properties . . . . . . . . . . . . . . . . . 8817
Wiring Rule . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8817
OverridableParameterTerminal . . . . . . . . . . . . . . . . 8818
OverridableParameterTerminal Properties . 8818
Fixed-Point:Maximum Word Length . . . 8820
Fixed-Point:Overflow Policy . . . . . . . . . . 8821
Fixed-Point:Quantization Policy . . . . . . 8821
Fixed-Point:Representation:Actual . . . . 8822
Fixed-Point:Representation:Actual:Delta . . .
8823
Fixed-Point:Representation:Actual:Range
Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8823
Fixed-Point:Representation:Actual:Range
Min . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8824
Fixed-Point:Representation:Bits . . . . . . 8825
Fixed-Point:Representation:Bits:Integer
Word Length . . . . . . . . . . . . . . . . . . . . . . . . 8826
Fixed-Point:Representation:Bits:Signed . . . .
8826
Fixed-Point:Representation:Bits:Word
Length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8827
Fixed-Point:Representation:Desired . . 8828
Fixed-Point:Representation:Desired:Delta . .
8829
Fixed-Point:Representation:Desired:Range
Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8829
Fixed-Point:Representation:Desired:Range
Min . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8830
Fixed-Point:Representation:Include
Overflow Status Policy . . . . . . . . . . . . . . . 8831
Numeric Override Policy . . . . . . . . . . . . . 8832
Numeric Override Representation . . . . 8832
Representation . . . . . . . . . . . . . . . . . . . . . 8833
Uses Fixed-Point Overflow and
Quantization . . . . . . . . . . . . . . . . . . . . . . . 8834
Constant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8834
Constant Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8834
Change to Control. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8835
Change to Indicator . . . . . . . . . . . . . . . . . . . . . . . . . . . 8836
Change to Shared Variable Node . . . . . . . . . . . . . . . 8836
Copy Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8837
Disconnect From Typedef . . . . . . . . . . . . . . . . . . . . . . 8838
Paste Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8838
Update From Typedef . . . . . . . . . . . . . . . . . . . . . . . . . 8839
Constant Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8840
Auto-Update From Typedef . . . . . . . . . . . . . . . . . . . . 8840
Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8841
Is Typedef? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8842
Label . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8842
Terminal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8843
Tip Strip . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8843
Typedef:Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8844
Typedef:VI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8845
Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8845
PathConstant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8846
218 ni.com
LabVIEW Programming Reference Manual
8871
Fixed-Point Representation:Actual:Range Min. . . .
8872
Fixed-Point Representation:Bits . . . . . . . . . . . 8873
Fixed-Point Representation:Bits:Integer Word
Length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8873
Fixed-Point Representation:Bits:Signed . . . . 8874
Fixed-Point Representation:Bits:Word Length . . . .
8875
Fixed-Point Representation:Desired. . . . . . . . 8876
Fixed-Point Representation:Desired:Delta . . 8876
Fixed-Point Representation:Desired:Range Max . .
8877
Fixed-Point Representation:Desired:Range Min . .
8878
Fixed-Point Representation:Include Overflow
Status? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8879
Representation . . . . . . . . . . . . . . . . . . . . . . . . . . 8879
DigitalNumericConstant . . . . . . . . . . . . . . . . . . . . . . . 8880
DigitalNumericConstant Properties . . . . . . . . 8880
Display Format . . . . . . . . . . . . . . . . . . . . . 8881
Display Format:Format . . . . . . . . . . . . . . 8882
Display Format:Precision . . . . . . . . . . . . 8882
Format String . . . . . . . . . . . . . . . . . . . . . . . 8883
Numeric Text . . . . . . . . . . . . . . . . . . . . . . . 8884
Radix Visible? . . . . . . . . . . . . . . . . . . . . . . . 8884
Unit Label . . . . . . . . . . . . . . . . . . . . . . . . . . 8885
NamedNumericConstant . . . . . . . . . . . . . . . . . . . . . . 8886
NamedNumericConstant Properties . . . . . . . 8886
Digital Display . . . . . . . . . . . . . . . . . . . . . . 8886
Items[] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8887
RingConstant . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8887
RingConstant Properties . . . . . . . . . . . . . 8888
Allow Undef Values? . . . . . . . . . . . . 8888
Strings And Values [] . . . . . . . . . . . . 8889
EnumConstant. . . . . . . . . . . . . . . . . . . . . . . . . . . 8889
220 ni.com
LabVIEW Programming Reference Manual
StringConstant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8890
StringConstant Properties . . . . . . . . . . . . . . . . . . . . . 8890
Display Format Visible? . . . . . . . . . . . . . . . . . . . 8890
Display Style. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8891
Limit To Single Line? . . . . . . . . . . . . . . . . . . . . . 8892
Scrollbar Visible?. . . . . . . . . . . . . . . . . . . . . . . . . 8892
Size To Text? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8893
Text. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8894
ComboBoxConstant . . . . . . . . . . . . . . . . . . . . . . . . . . . 8894
ComboBoxConstant Properties . . . . . . . . . . . . 8894
Strings And Values []. . . . . . . . . . . . . . . . . 8895
Strings [] . . . . . . . . . . . . . . . . . . . . . . . . . . . 8896
ClusterConstant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8896
ClusterConstant Methods . . . . . . . . . . . . . . . . . . . . . . 8897
Auto Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8897
ReorderElements . . . . . . . . . . . . . . . . . . . . . . . . 8898
ClusterConstant Properties . . . . . . . . . . . . . . . . . . . . 8898
Auto Sizing Style . . . . . . . . . . . . . . . . . . . . . . . . . 8899
Elements[] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8900
Horizontal Scrollbar Visible . . . . . . . . . . . . . . . 8900
Vertical Scrollbar Visible . . . . . . . . . . . . . . . . . . 8901
View As Icon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8902
FixedConstant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8902
FixedConstant Properties . . . . . . . . . . . . . . . . . . . . . . 8902
Style . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8903
BooleanConstant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8903
IONameConstant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8903
IONameConstant Properties . . . . . . . . . . . . . . . . . . . 8903
Menu Button Visible . . . . . . . . . . . . . . . . . . . . . . 8904
Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8905
DSCTagConstant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8905
DAQChannelNameConstant . . . . . . . . . . . . . . . . . . . . 8905
VISAResourceNameConstant . . . . . . . . . . . . . . . . . . . 8905
IVILogicalNameConstant . . . . . . . . . . . . . . . . . . . . . . 8905
DAQmxNameConstant . . . . . . . . . . . . . . . . . . . . . . . . . 8906
DAQmxNameConstant Properties. . . . . . . . . . 8906
222 ni.com
LabVIEW Programming Reference Manual
TypedRefNumConstant . . . . . . . . . . . . . . . . . . . . . . . . 8928
TypedRefNumConstant Properties . . . . . . . . . 8928
Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8928
DataValRefNumConstant . . . . . . . . . . . . . . . . . 8929
DataValRefNumConstant Properties . . 8929
Is External . . . . . . . . . . . . . . . . . . . . . 8929
LabVIEWClassConstant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8930
SetConstant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8930
SetConstant Methods . . . . . . . . . . . . . . . . . . . . . . . . . 8930
Scroll To Element . . . . . . . . . . . . . . . . . . . . . . . . 8930
SetConstant Properties . . . . . . . . . . . . . . . . . . . . . . . . 8931
Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8932
Horizontal Scrollbar Visible . . . . . . . . . . . . . . . 8933
Number of Visible Elements . . . . . . . . . . . . . . . 8933
Top Visible Element . . . . . . . . . . . . . . . . . . . . . . 8934
Vertical Scrollbar Visible . . . . . . . . . . . . . . . . . . 8935
MapConstant . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8935
MapConstant Methods . . . . . . . . . . . . . . . . . . . . . . . . 8935
Scroll To Key. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8936
MapConstant Properties . . . . . . . . . . . . . . . . . . . . . . . 8937
Horizontal Scrollbar Visible . . . . . . . . . . . . . . . 8937
Map Key. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8938
Map Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8938
Number of Visible Key Value Pairs. . . . . . . . . . 8939
Top Visible KeyValue Pair . . . . . . . . . . . . . . . . . 8940
Vertical Scrollbar Visible . . . . . . . . . . . . . . . . . . 8940
FormulaParameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8941
FormulaParameter Properties . . . . . . . . . . . . . . . . . . . . . . . 8941
Input? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8941
Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8942
Terminal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8943
ScriptNodeParameter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8943
ScriptNodeParameter Properties . . . . . . . . . . . . . . . 8943
Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8944
MathScriptNodeParameter . . . . . . . . . . . . . . . . . . . . . . . . . 8944
MathScriptNodeParameter Properties . . . . . . . . . . 8944
Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8945
Tunnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8945
Tunnel Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8945
Inside Terminals[] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8946
Outside Terminal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8946
LoopTunnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8947
LoopTunnel Properties . . . . . . . . . . . . . . . . . . . . . . . . 8947
Condition Terminal. . . . . . . . . . . . . . . . . . . . . . . 8947
Index Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8948
Is Conditional? . . . . . . . . . . . . . . . . . . . . . . . . . . . 8949
RightShiftRegister . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8949
RightShiftRegister Properties. . . . . . . . . . . . . . . . . . . 8950
Is An Error Register . . . . . . . . . . . . . . . . . . . . . . . 8950
Left Registers[] . . . . . . . . . . . . . . . . . . . . . . . . . . . 8951
LeftShiftRegister . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8951
LeftShiftRegister Methods . . . . . . . . . . . . . . . . . . . . . . 8951
Add Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8952
LeftShiftRegister Properties . . . . . . . . . . . . . . . . . . . . 8952
Is An Error Register . . . . . . . . . . . . . . . . . . . . . . . 8953
Right Shift Register . . . . . . . . . . . . . . . . . . . . . . . 8953
ConditionalTunnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8954
ConditionalTunnel Methods. . . . . . . . . . . . . . . . . . . . 8954
Clear Linked Input Tunnel . . . . . . . . . . . . . . . . . 8955
Link Input Tunnel . . . . . . . . . . . . . . . . . . . . . . . . 8955
Link Input Tunnel And Wire . . . . . . . . . . . . . . . 8956
Replace With Case Selector . . . . . . . . . . . . . . . 8957
ConditionalTunnel Properties . . . . . . . . . . . . . . . . . . 8958
Linked Input Tunnel . . . . . . . . . . . . . . . . . . . . . . 8958
Use Default if Unwired . . . . . . . . . . . . . . . . . . . . 8959
SelectorTunnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8960
RegionTunnel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8960
SequenceLocal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8960
SequenceLocal Properties . . . . . . . . . . . . . . . . . . . . . . . . . . 8960
Terminals[] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8960
Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8961
Node Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8961
224 ni.com
LabVIEW Programming Reference Manual
TypeCast . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8981
TypeCast Properties . . . . . . . . . . . . . . . . . . . . . . 8982
Convert 4.x data? . . . . . . . . . . . . . . . . . . . 8982
FlattenUnflattenString. . . . . . . . . . . . . . . . . . . . . . . . . 8982
FlattenUnflattenString Properties . . . . . . . . . 8983
Convert 4.x data? . . . . . . . . . . . . . . . . . . . 8983
FlattenString . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8984
FlattenString Properties . . . . . . . . . . . . . 8984
Expose Typedefs . . . . . . . . . . . . . . . 8984
GPIBReadWrite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8985
GPIBReadWrite Properties . . . . . . . . . . . . . . . . 8985
Synchronous I/O? . . . . . . . . . . . . . . . . . . . 8985
ArrayToCluster . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8986
ArrayToCluster Properties . . . . . . . . . . . . . . . . . 8986
Cluster Size . . . . . . . . . . . . . . . . . . . . . . . . . 8986
FileDialog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8987
SubVI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8987
SubVI Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8987
Inline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8987
Relink To VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8989
SubVI Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8989
Bad SubVI Linkage . . . . . . . . . . . . . . . . . . . . . . . 8990
Grow Terms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8991
Missing VI Name . . . . . . . . . . . . . . . . . . . . . . . . . 8992
Missing VI Path . . . . . . . . . . . . . . . . . . . . . . . . . . . 8993
Skip Subroutine Call If Busy . . . . . . . . . . . . . . . 8993
SubVI Setup:Close Front Panel After Call . . . . 8994
SubVI Setup:Open Front Panel When Loaded . . . .
8995
SubVI Setup:Show Front Panel When Called . . . . .
8996
SubVI Setup:Suspend When Called . . . . . . . . 8996
Terminals Visible? . . . . . . . . . . . . . . . . . . . . . . . . 8997
VI Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8998
VI Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8998
VI Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8999
226 ni.com
LabVIEW Programming Reference Manual
Enabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9018
Shared Clones:Pre-Allocate . . . . . . . . . . . . . . . 9018
Subdiagram Label Visible . . . . . . . . . . . . . . . . . 9019
Tunnels[] . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9020
Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9020
Loop Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . 9021
Add Shift Register . . . . . . . . . . . . . . . . . . . 9021
Loop Properties. . . . . . . . . . . . . . . . . . . . . . . . . . 9022
Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9022
Loop Counter . . . . . . . . . . . . . . . . . . . . . . . 9023
Shift Registers[] . . . . . . . . . . . . . . . . . . . . . 9024
ForLoop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9024
ForLoop Properties. . . . . . . . . . . . . . . . . . 9024
Chunk Size Tunnel . . . . . . . . . . . . . 9026
Dynamic Parallel Instances Tunnel . . . .
9026
Has Conditional Terminal? . . . . . . 9027
Is Debugging Allowed. . . . . . . . . . . 9028
Is Parallelism Enabled? . . . . . . . . . 9029
Iteration Terminal Hidden? . . . . . . 9029
Loop Count . . . . . . . . . . . . . . . . . . . . 9030
Loop End Ref . . . . . . . . . . . . . . . . . . 9031
Number of Static Parallel Instances . . .
9031
Parallel Schedule . . . . . . . . . . . . . . 9032
Stop If True? . . . . . . . . . . . . . . . . . . . 9033
WhileLoop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9033
WhileLoop Methods . . . . . . . . . . . . . . . . . 9034
Replace With TimeLoop . . . . . . . . . 9034
WhileLoop Properties . . . . . . . . . . . . . . . 9035
Iteration Terminal Hidden? . . . . . . 9035
Loop End Ref . . . . . . . . . . . . . . . . . . 9036
Stop If True? . . . . . . . . . . . . . . . . . . . 9036
TimedLoop . . . . . . . . . . . . . . . . . . . . . . . . . 9037
TimedLoop Methods . . . . . . . . . . . 9037
Replace With TimedSequence . . .
228 ni.com
LabVIEW Programming Reference Manual
9038
Replace With WhileLoop . . . 9038
MultiFrameStructure . . . . . . . . . . . . . . . . . . . . . . . . . . 9039
MultiFrameStructure Methods . . . . . . . . . . . . . 9039
Add Frame . . . . . . . . . . . . . . . . . . . . . . . . . 9040
Duplicate Frame . . . . . . . . . . . . . . . . . . . . 9041
Rearrange Frames . . . . . . . . . . . . . . . . . . . 9041
Rearrange Frames By Index . . . . . . . . . . 9042
Remove Frame . . . . . . . . . . . . . . . . . . . . . . 9043
MultiFrameStructure Properties . . . . . . . . . . . 9044
Frame Count . . . . . . . . . . . . . . . . . . . . . . . 9044
Frame Selector Rect . . . . . . . . . . . . . . . . . 9045
Frames[] . . . . . . . . . . . . . . . . . . . . . . . . . . . 9046
Visible Frame . . . . . . . . . . . . . . . . . . . . . . . 9046
Sequence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9047
Sequence Methods . . . . . . . . . . . . . . . . . . 9047
Convert To Flat Sequence . . . . . . . 9048
Sequence Properties . . . . . . . . . . . . . . . . 9048
Sequence Locals[] . . . . . . . . . . . . . . 9049
ExternalNode . . . . . . . . . . . . . . . . . . . . . . . 9049
CaseStructure . . . . . . . . . . . . . . . . . . . . . . . . . . . 9049
CaseStructure Methods . . . . . . . . . . . . . . 9050
Get Frame Index . . . . . . . . . . . . . . . 9050
Remove Default . . . . . . . . . . . . . . . . 9051
Remove Empty Cases . . . . . . . . . . . 9052
Set Default Case . . . . . . . . . . . . . . . 9052
CaseStructure Properties . . . . . . . . . . . . 9053
Case Insensitive Match. . . . . . . . . . 9054
Default Case . . . . . . . . . . . . . . . . . . . 9054
Frame Names . . . . . . . . . . . . . . . . . . 9055
Selector . . . . . . . . . . . . . . . . . . . . . . . 9056
EventStructure . . . . . . . . . . . . . . . . . . . . . . . . . . 9056
EventStructure Methods . . . . . . . . . . . . . 9057
Get Event Data Node . . . . . . . . . . . 9057
Get Event Filter Node . . . . . . . . . . . 9058
Get Handled Events . . . . . . . . . . . . 9059
230 ni.com
LabVIEW Programming Reference Manual
JunctionNode . . . . . . . . . . . . . . . . . . . . . . . . . . . 9080
RegionNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9080
InPlaceElementStructure . . . . . . . . . . . . . . . . . . . . . . 9080
InPlaceElementStructure Methods . . . . . . . . . 9080
Add In Place Pair . . . . . . . . . . . . . . . . . . . . 9081
InPlaceElementStructure Properties . . . . . . . 9082
DecomposerList[] . . . . . . . . . . . . . . . . . . . 9082
Recomposer List[] . . . . . . . . . . . . . . . . . . . 9083
TargetStructureNode . . . . . . . . . . . . . . . . . . . . . . . . . . 9084
ClosureStructureNode . . . . . . . . . . . . . . . . . . . . . . . . . 9084
Formula . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9084
Formula Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9084
Add Input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9084
Add Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9085
Formula Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . 9086
Formula Expression . . . . . . . . . . . . . . . . . . . . . . 9087
Formula Parameters[] . . . . . . . . . . . . . . . . . . . . 9087
Scrollbar Visible?. . . . . . . . . . . . . . . . . . . . . . . . . 9088
ScriptNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9089
MathScriptNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9089
MathScriptNode Methods . . . . . . . . . . . . . . . . . 9089
Set MathScript Node Line Breakpoint . . . . . .
9089
InlineCNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9090
GrowableFunction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9090
GrowableFunction Methods . . . . . . . . . . . . . . . . . . . . 9091
Resize:Add Chunk . . . . . . . . . . . . . . . . . . . . . . . . 9091
Resize:Remove Chunk . . . . . . . . . . . . . . . . . . . . 9092
GrowableFunction Properties . . . . . . . . . . . . . . . . . . 9093
Terminal Height. . . . . . . . . . . . . . . . . . . . . . . . . . 9093
BuildClusterArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9094
CompoundArithmetic . . . . . . . . . . . . . . . . . . . . . . . . . 9094
CompoundArithmetic Properties . . . . . . . . . . 9094
Invert Inputs?[] . . . . . . . . . . . . . . . . . . . . . 9095
Invert Output . . . . . . . . . . . . . . . . . . . . . . . 9095
Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9096
IndexArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9097
IndexArray Properties . . . . . . . . . . . . . . . . . . . . 9097
Array Input Terminal . . . . . . . . . . . . . . . . 9097
Index Count . . . . . . . . . . . . . . . . . . . . . . . . 9098
Index Terminals[][] . . . . . . . . . . . . . . . . . . 9099
Output Terminals[] . . . . . . . . . . . . . . . . . . 9099
CIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9100
CIN Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9100
Add Parameter After . . . . . . . . . . . . . . . . . 9101
Create C File . . . . . . . . . . . . . . . . . . . . . . . . 9102
Load Code Resource . . . . . . . . . . . . . . . . . 9102
Purge Code Resource . . . . . . . . . . . . . . . . 9103
Remove Parameter . . . . . . . . . . . . . . . . . . 9104
CIN Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . 9105
Code Resource Path . . . . . . . . . . . . . . . . . 9105
Input Terminals[] . . . . . . . . . . . . . . . . . . . 9106
Output Terminals[] . . . . . . . . . . . . . . . . . . 9106
ParameterCount . . . . . . . . . . . . . . . . . . . . 9107
CallLibrary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9108
CallLibrary Methods . . . . . . . . . . . . . . . . . . . . . . 9108
Create C File . . . . . . . . . . . . . . . . . . . . . . . . 9108
Prototype . . . . . . . . . . . . . . . . . . . . . . . . . . 9109
CallLibrary Properties . . . . . . . . . . . . . . . . . . . . 9110
Abort Callback . . . . . . . . . . . . . . . . . . . . . . 9111
Any Thread? . . . . . . . . . . . . . . . . . . . . . . . . 9112
Calling Convention . . . . . . . . . . . . . . . . . . 9112
Dynamic Library? . . . . . . . . . . . . . . . . . . . 9113
Error Checking Level . . . . . . . . . . . . . . . . 9114
Function Name . . . . . . . . . . . . . . . . . . . . . 9115
Input Terminals[] . . . . . . . . . . . . . . . . . . . 9115
Library Path . . . . . . . . . . . . . . . . . . . . . . . . 9116
Output Terminals [] . . . . . . . . . . . . . . . . . 9117
Parameter Info . . . . . . . . . . . . . . . . . . . . . . 9117
Reserve Callback . . . . . . . . . . . . . . . . . . . . 9118
Unreserve Callback. . . . . . . . . . . . . . . . . . 9119
FormatScanString. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9119
232 ni.com
LabVIEW Programming Reference Manual
Constructor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9144
Constructor Properties . . . . . . . . . . . . . . 9144
Constructor Node Class Name . . . 9144
Input Terminals [] . . . . . . . . . . . . . . 9145
Output Terminals [] . . . . . . . . . . . . 9146
Bundler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9146
Bundler Methods . . . . . . . . . . . . . . . . . . . . . . . . 9147
AddInputAfter . . . . . . . . . . . . . . . . . . . . . . 9147
RemoveInput . . . . . . . . . . . . . . . . . . . . . . . 9148
Bundler Properties . . . . . . . . . . . . . . . . . . . . . . . 9149
Input Count . . . . . . . . . . . . . . . . . . . . . . . . 9149
Input Terminals . . . . . . . . . . . . . . . . . . . . . 9150
BuildArray . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9150
BuildArray Properties . . . . . . . . . . . . . . . . 9150
Concatenate Inputs . . . . . . . . . . . . 9151
NamedBundler . . . . . . . . . . . . . . . . . . . . . . . . . . 9151
NamedBundler Properties . . . . . . . . . . . 9152
Available Elements[]. . . . . . . . . . . . 9152
Element Names[] . . . . . . . . . . . . . . 9153
Full Element Names[] . . . . . . . . . . . 9154
Full Names Visible? . . . . . . . . . . . . . 9154
Unbundler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9155
Unbundler Methods . . . . . . . . . . . . . . . . . . . . . . 9155
Add Output After . . . . . . . . . . . . . . . . . . . . 9156
Remove Output . . . . . . . . . . . . . . . . . . . . . 9157
Unbundler Properties . . . . . . . . . . . . . . . . . . . . 9157
Output Count . . . . . . . . . . . . . . . . . . . . . . . 9158
Output Terminals[] . . . . . . . . . . . . . . . . . . 9158
NamedUnbundler . . . . . . . . . . . . . . . . . . . . . . . . 9159
NamedUnbundler Properties . . . . . . . . . 9159
Available Elements[]. . . . . . . . . . . . 9160
Element Names[] . . . . . . . . . . . . . . 9160
Full Element Names[] . . . . . . . . . . . 9161
Full Names Visible? . . . . . . . . . . . . . 9162
RegisterForEvents . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9163
RegisterForEvents Properties. . . . . . . . . . . . . . 9163
234 ni.com
LabVIEW Programming Reference Manual
Write?. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9182
InPlaceBorderNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9183
InPlaceBorderNode Properties . . . . . . . . . . . . . . . . . 9183
Partner . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9183
InPlaceElementNode . . . . . . . . . . . . . . . . . . . . . . . . . . 9184
InPlaceVariantNode . . . . . . . . . . . . . . . . . . . . . . . . . . . 9184
InPlaceArrayNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9184
InPlaceArrayNode Methods . . . . . . . . . . . . . . . 9184
Resize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9184
InPlaceArrayNode Properties . . . . . . . . . . . . . . 9185
Array Input Terminal . . . . . . . . . . . . . . . . 9186
Index Count . . . . . . . . . . . . . . . . . . . . . . . . 9187
Index Terminalsl[][] . . . . . . . . . . . . . . . . . 9187
Output Terminals[] . . . . . . . . . . . . . . . . . . 9188
Terminal Height . . . . . . . . . . . . . . . . . . . . . 9189
InPlaceClusterNode . . . . . . . . . . . . . . . . . . . . . . . . . . . 9189
InPlaceClusterNode Methods. . . . . . . . . . . . . . 9190
Add Output After . . . . . . . . . . . . . . . . . . . . 9190
Remove Output . . . . . . . . . . . . . . . . . . . . . 9191
Resize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9192
InPlaceClusterNode Properties . . . . . . . . . . . . 9193
Available Elements[]. . . . . . . . . . . . . . . . . 9193
Element Names[] . . . . . . . . . . . . . . . . . . . 9194
Full Element Names[]. . . . . . . . . . . . . . . . 9195
Full Names Visible? . . . . . . . . . . . . . . . . . . 9195
Output Count . . . . . . . . . . . . . . . . . . . . . . . 9196
Output Terminals[] . . . . . . . . . . . . . . . . . . 9197
Terminal Height . . . . . . . . . . . . . . . . . . . . . 9198
InPlaceDataValRefNode . . . . . . . . . . . . . . . . . . . . . . . 9198
InPlaceDataValRefNode Properties . . . . . . . . 9198
Allow Parallel Read Only Access . . . . . . 9199
InPlaceArraySplitNode . . . . . . . . . . . . . . . . . . . . . . . . 9199
InPlaceArraySplitNode Properties . . . . . . . . . 9200
Array Terminal . . . . . . . . . . . . . . . . . . . . . . 9200
Length Terminals . . . . . . . . . . . . . . . . . . . 9201
Split Count . . . . . . . . . . . . . . . . . . . . . . . . . 9202
236 ni.com
LabVIEW Programming Reference Manual
238 ni.com
LabVIEW Programming Reference Manual
240 ni.com
LabVIEW Programming Reference Manual
242 ni.com
LabVIEW Programming Reference Manual
244 ni.com
LabVIEW Programming Reference Manual
246 ni.com
LabVIEW Programming Reference Manual
248 ni.com
LabVIEW Programming Reference Manual
Identifier . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9501
Long Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9502
LibraryData . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9502
LVClassPropDefFolder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9502
LVClassPropDefFolder Properties . . . . . . . . . . . . . . . . . . . . . . . . . 9502
LongName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9503
ShortName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9504
SortKey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9505
UniqueDataName . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9505
BuildSpecification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9506
Scene. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9506
SceneTexture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9506
SceneTexture Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9506
Transformation:Clear Transformation . . . . . . . . . . . . . . . . 9507
Transformation:Get Rotation . . . . . . . . . . . . . . . . . . . . . . . . 9508
Transformation:Get Scale . . . . . . . . . . . . . . . . . . . . . . . . . . . 9509
Transformation:Get Translation . . . . . . . . . . . . . . . . . . . . . 9509
Transformation:Rotate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9510
Transformation:Scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9511
Transformation:Set Rotation . . . . . . . . . . . . . . . . . . . . . . . . 9512
Transformation:Set Scale . . . . . . . . . . . . . . . . . . . . . . . . . . . 9513
Transformation:Set Translation . . . . . . . . . . . . . . . . . . . . . 9513
Transformation:Translate . . . . . . . . . . . . . . . . . . . . . . . . . . . 9514
SceneTexture Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9515
Apply Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9516
Blend Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9516
Filter Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9517
Horizontal Wrap Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9518
Image. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9519
Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9521
Vertical Wrap Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9521
SceneNode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9522
SceneNode Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9522
Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9522
SceneLight . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9523
SceneLight Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9523
250 ni.com
LabVIEW Programming Reference Manual
Transformation:Clear . . . . . . . . . . . . . . . . . . . . . . . . . . 9554
Transformation:Get Rotation . . . . . . . . . . . . . . . . . . . 9554
Transformation:Get Scale . . . . . . . . . . . . . . . . . . . . . . 9555
Transformation:Get Translation . . . . . . . . . . . . . . . . 9556
Transformation:Rotate . . . . . . . . . . . . . . . . . . . . . . . . 9556
Transformation:Scale . . . . . . . . . . . . . . . . . . . . . . . . . 9557
Transformation:Set Rotation . . . . . . . . . . . . . . . . . . . 9558
Transformation:Set Scale . . . . . . . . . . . . . . . . . . . . . . 9559
Transformation:Set Translation . . . . . . . . . . . . . . . . 9560
Transformation:Translate . . . . . . . . . . . . . . . . . . . . . . 9561
SceneObject Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9562
Billboard:Axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9565
Billboard:Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9565
Billboard:Normal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9566
Billboard:Positions . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9566
Blending:Bin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9567
Blending:Function:Destination . . . . . . . . . . . . . . . . . 9568
Blending:Function:Source . . . . . . . . . . . . . . . . . . . . . 9569
Blending:Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9569
Draw Style:Face Culling Mode . . . . . . . . . . . . . . . . . . 9570
Draw Style:Frontface Mode. . . . . . . . . . . . . . . . . . . . . 9571
Draw Style:Line Width . . . . . . . . . . . . . . . . . . . . . . . . . 9571
Draw Style:Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9572
Draw Style:Point Size . . . . . . . . . . . . . . . . . . . . . . . . . . 9572
Drawable. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9573
Fog:Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9574
Fog:Density . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9575
Fog:End . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9575
Fog:Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9576
Fog:Start . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9577
Line Stipple:Factor . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9577
Line Stipple:Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9578
Line Stipple:Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . 9578
Material:Ambient . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9579
Material:Color Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . 9580
Material:Diffuse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9581
Material:Emission . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9581
Material:Shininess . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9582
Material:Specular . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9583
PolygonOffset:Factor . . . . . . . . . . . . . . . . . . . . . . . . . . 9584
PolygonOffset:Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . 9585
PolygonOffset:Units . . . . . . . . . . . . . . . . . . . . . . . . . . . 9585
Specials:Anti-aliasing . . . . . . . . . . . . . . . . . . . . . . . . . 9586
Specials:Autonormalizing . . . . . . . . . . . . . . . . . . . . . . 9586
Specials:Depth Test . . . . . . . . . . . . . . . . . . . . . . . . . . . 9587
Specials:Lighting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9588
Specials:Shade Model . . . . . . . . . . . . . . . . . . . . . . . . . 9588
Specials:Texturing . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9589
Texture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9590
Transformation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9590
View Port:Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9591
View Port:View Port . . . . . . . . . . . . . . . . . . . . . . . . . . . 9591
SceneClipPlane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9592
SceneClipPlane Properties . . . . . . . . . . . . . . . . . . . . . . . . . . 9592
Number . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9593
Plane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9593
SceneDrawable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9594
SceneGeometry . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9594
SceneGeometry Properties . . . . . . . . . . . . . . . . . . . . . . . . . 9594
Texture Generator Mode . . . . . . . . . . . . . . . . . . . . . . . 9595
Texture Generator S Plane . . . . . . . . . . . . . . . . . . . . . 9596
Texture Generator T Plane . . . . . . . . . . . . . . . . . . . . . 9596
SceneMesh . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9597
SceneMesh Methods . . . . . . . . . . . . . . . . . . . . . . . . . . 9597
Delaunay Mesh . . . . . . . . . . . . . . . . . . . . . . . . . . 9598
Set Mesh Parameters . . . . . . . . . . . . . . . . . . . . . 9599
Share Arrays . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9602
SceneMesh Properties . . . . . . . . . . . . . . . . . . . . . . . . . 9603
Color Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9604
Color Binding Mode . . . . . . . . . . . . . . . . . . . . . . 9605
Draw Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9606
Indices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9606
252 ni.com
LabVIEW Programming Reference Manual
254 ni.com
LabVIEW Programming Reference Manual
Alarming:HiHi:Priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9696
Alarming:Lo:Ack Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9696
Alarming:Lo:Allow Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9697
Alarming:Lo:Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9698
Alarming:Lo:Deadband . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9699
Alarming:Lo:Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9700
Alarming:Lo:Enabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9701
Alarming:Lo:Level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9701
Alarming:Lo:Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9702
Alarming:Lo:Priority. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9703
Alarming:LoLo:Ack Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9704
Alarming:LoLo:Allow Log . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9705
Alarming:LoLo:Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9705
Alarming:LoLo:Deadband . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9706
Alarming:LoLo:Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9707
Alarming:LoLo:Enabled. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9708
Alarming:LoLo:Level . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9709
Alarming:LoLo:Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9710
Alarming:LoLo:Priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9711
Alarming:RateOfChange:Ack Type . . . . . . . . . . . . . . . . . . . . . . . . 9711
Alarming:RateOfChange:Allow Log . . . . . . . . . . . . . . . . . . . . . . . 9712
Alarming:RateOfChange:Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9713
Alarming:RateOfChange:Change . . . . . . . . . . . . . . . . . . . . . . . . . 9714
Alarming:RateOfChange:Description . . . . . . . . . . . . . . . . . . . . . . 9715
Alarming:RateOfChange:Enabled . . . . . . . . . . . . . . . . . . . . . . . . . 9716
Alarming:RateOfChange:Name . . . . . . . . . . . . . . . . . . . . . . . . . . . 9716
Alarming:RateOfChange:Priority . . . . . . . . . . . . . . . . . . . . . . . . . 9717
Alarming:RateOfChange:Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9718
Alarming:U32BitField:Ack Type . . . . . . . . . . . . . . . . . . . . . . . . . . . 9719
Alarming:U32BitField:Alarm On . . . . . . . . . . . . . . . . . . . . . . . . . . 9720
Alarming:U32BitField:Allow Log . . . . . . . . . . . . . . . . . . . . . . . . . . 9721
Alarming:U32BitField:Area . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9721
Alarming:U32BitField:Description . . . . . . . . . . . . . . . . . . . . . . . . 9722
Alarming:U32BitField:Enabled . . . . . . . . . . . . . . . . . . . . . . . . . . . 9723
Alarming:U32BitField:InvertMask . . . . . . . . . . . . . . . . . . . . . . . . . 9724
Alarming:U32BitField:Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9725
256 ni.com
LabVIEW Programming Reference Manual
Alarming:U32BitField:Priority . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9726
Alarming:U32BitField:Select Mask . . . . . . . . . . . . . . . . . . . . . . . . 9726
Data Type (Variant). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9727
Description. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9728
I/O:Alias Access Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9729
I/O:Alias Project Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9729
I/O:Channel Index. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9730
I/O:Direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9731
I/O:Enable Timestamp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9731
I/O:Mode . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9732
I/O:Network Published . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9733
Initial Value:Enabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9733
Initial Value:Initial Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9734
Logging:Deadband . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9735
Logging:Enabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9736
Logging:Log Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9736
Logging:Log Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9737
Logging:String Format. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9738
Logging:Time Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9739
Logging:Value Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9739
Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9740
Network:Access Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9741
Network:Buffer Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9742
Network:Element Size . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9743
Network:Points Per Waveform . . . . . . . . . . . . . . . . . . . . . . . . . . . 9744
Network:Project Binding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9745
Network:Project Path . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9746
Network:URL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9746
Network:Use Binding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9747
Network:Use Buffering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9748
Real-Time:Array Length. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9749
Real-Time:Buffer Length . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9750
Real-Time:Datapoints In Waveform . . . . . . . . . . . . . . . . . . . . . . . 9750
Real-Time:Enabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9751
Real-Time:Use Buffering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9752
Scaling:Coerce. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9752
Scaling:Enabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9753
Scaling:EngUnit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9754
Scaling:Engineering Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9755
Scaling:Engineering Min . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9756
Scaling:Invert . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9756
Scaling:Invert Mask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9757
Scaling:Raw Max . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9758
Scaling:Raw Min . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9759
Scaling:Select Mask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9760
Scaling:Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9761
Single-Process:Enable Timestamp . . . . . . . . . . . . . . . . . . . . . . . . 9762
Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9763
Update Deadband:Enabled . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9763
Update Deadband:Source . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9764
Update Deadband:User . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9765
VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9765
VI Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9766
Abort VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9772
Adapt Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9773
Block Diagram:Clean Up . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9774
Block Diagram:Get Image Scaled . . . . . . . . . . . . . . . . . . . . . . . . . 9775
Block Diagram:Remove Bad Wires . . . . . . . . . . . . . . . . . . . . . . . . 9778
Clear History . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9778
Compile:VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9779
Configure Panel As Top-Level Hidden . . . . . . . . . . . . . . . . . . . . . 9781
Control VI Apply Changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9782
Control Value:Get . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9783
Control Value:Get All . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9784
Control Value:Set . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9785
Create from Data Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9787
Create from Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9789
Debugging:Get Debug Button Display State . . . . . . . . . . . . . . . . 9790
Debugging:Step Into . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9792
Debugging:Step Out. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9792
Debugging:Step Over . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9793
Default Values:Make Current Default . . . . . . . . . . . . . . . . . . . . . . 9794
258 ni.com
LabVIEW Programming Reference Manual
260 ni.com
LabVIEW Programming Reference Manual
262 ni.com
LabVIEW Programming Reference Manual
264 ni.com
LabVIEW Programming Reference Manual
10041
Version Information:Resource Manufacturer Name . . . . . . . . 10042
Version Information:Version of Implementation . . . . . . . . . . . 10042
Version Information:Version of Specification. . . . . . . . . . . . . . 10043
PXI Interrupt Event Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10043
Event Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10044
Event Information:Event Type . . . . . . . . . . . . . . . . . . . . . . . . . . . 10044
Event Information:PXI/PCI Received Interrupt Data . . . . . . . . 10045
Event Information:PXI/PCI Received Interrupt Sequence . . . 10046
Version Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10046
Version Information:Resource Manufacturer Identification . . . . . . .
10046
Version Information:Resource Manufacturer Name . . . . . . . . 10047
Version Information:Version of Implementation . . . . . . . . . . . 10047
Version Information:Version of Specification. . . . . . . . . . . . . . 10048
Service Request Event Properties. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10048
Event Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10049
Event Information:Event Type . . . . . . . . . . . . . . . . . . . . . . . . . . . 10049
Version Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10050
Version Information:Resource Manufacturer Identification . . . . . . .
10050
Version Information:Resource Manufacturer Name . . . . . . . . 10051
Version Information:Version of Implementation . . . . . . . . . . . 10051
Version Information:Version of Specification. . . . . . . . . . . . . . 10052
Trigger Event Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10052
Event Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10053
Event Information:Event Type . . . . . . . . . . . . . . . . . . . . . . . . . . . 10053
Event Information:Received Trigger ID . . . . . . . . . . . . . . . . . . . 10054
Version Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10055
Version Information:Resource Manufacturer Identification . . . . . . .
10055
Version Information:Resource Manufacturer Name . . . . . . . . 10056
Version Information:Version of Implementation . . . . . . . . . . . 10056
Version Information:Version of Specification. . . . . . . . . . . . . . 10057
USB Interrupt Event Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10057
Event Information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10058
266 ni.com
LabVIEW Programming Reference Manual
268 ni.com
LabVIEW Programming Reference Manual
270 ni.com
LabVIEW Programming Reference Manual
272 ni.com
LabVIEW Programming Reference Manual
274 ni.com
LabVIEW Programming Reference Manual
276 ni.com
LabVIEW Programming Reference Manual
278 ni.com
LabVIEW Programming Reference Manual
280 ni.com
LabVIEW Programming Reference Manual
282 ni.com
LabVIEW Programming Reference Manual
284 ni.com
LabVIEW Programming Reference Manual
286 ni.com
LabVIEW Programming Reference Manual
288 ni.com
LabVIEW Programming Reference Manual
290 ni.com
LabVIEW Programming Reference Manual
292 ni.com
LabVIEW Programming Reference Manual
System ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10526
Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10527
Document Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10527
Document Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10528
Document Encoding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10528
Document Type. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10528
Load External DTD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10529
Preserve Whitespace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10529
Process Namespaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10530
Process Schema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10530
Schema Full Checking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10530
Validate On Load. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10531
XML Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10531
Document Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10532
Create Attribute. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10533
Create Attribute NS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10533
Create CDATA Section . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10534
Create Comment. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10534
Create Document Fragment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10535
Create Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10535
Create Element NS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10535
Create Entity Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10536
Create Processing Instruction . . . . . . . . . . . . . . . . . . . . . . . . . . . 10536
Create Text Node. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10536
Get Element by ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10537
Get Elements By Tag Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10537
Get Elements By Tag Name Array . . . . . . . . . . . . . . . . . . . . . . . . 10537
Get Elements By Tag Name NS . . . . . . . . . . . . . . . . . . . . . . . . . . 10538
Get Elements By Tag Name NS Array . . . . . . . . . . . . . . . . . . . . . 10538
Import Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10538
Load File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10539
Load String . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10539
Save File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10539
Save File (Pretty Print) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10540
Notation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10540
Notation Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10540
Public ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10540
System ID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10541
Node Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10541
Child Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10542
Child Nodes Array . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10542
Element Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10543
First Child . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10543
Last Child . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10543
Local Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10544
Namespace Prefix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10544
Namespace URI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10544
Next Sibling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10545
Node Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10545
Node Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10545
Node Value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10546
Owner Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10546
Parent Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10547
Previous Sibling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10547
Node Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10547
Append Child . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10548
Clone Node . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10548
Get XML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10549
Get XML (Pretty Print) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10549
Has Attributes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10549
Has Child Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10550
Insert Before . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10550
Is Supported . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10550
Normalize . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10551
Remove Child . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10551
Replace Child. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10551
Implementation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10551
Implementation Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10551
Create Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10552
Create Document Type . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10552
Has Feature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10552
NamedNodeMap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10553
294 ni.com
LabVIEW Programming Reference Manual
296 ni.com
LabVIEW Programming Reference Manual
10672
Advanced Page (.NET Interop Assembly Properties Dialog Box) . . . . . . . . . . . . 10674
Destinations Page (.NET Interop Assembly Properties Dialog Box) . . . . . . . . . 10678
Information Page (.NET Interop Assembly Properties Dialog Box) . . . . . . . . . . 10680
Pre/Post Build Actions Page (.NET Interop Assembly Properties Dialog Box) . . . . . .
10681
Preview Page (.NET Interop Assembly Properties Dialog Box). . . . . . . . . . . . . . 10683
Run-Time Languages Page (.NET Interop Assembly Properties Dialog Box) . 10684
Source File Settings Page (.NET Interop Assembly Properties Dialog Box) . . . 10685
Source Files Page (.NET Interop Assembly Properties Dialog Box) . . . . . . . . . . 10689
Version Information Page (.NET Interop Assembly Properties Dialog Box). . . 10690
Windows Security Page (.NET Interop Assembly Properties Dialog Box) . . . . 10692
Add Targets and Devices Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10693
Add VI Hierarchy Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10695
All Windows Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10696
Add .NET Controls to Palette Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10697
Add ActiveX Controls to Palette Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10698
Add to Project and Update Dependencies Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . 10698
Application Properties Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10699
Additional Exclusions Page (Application Properties Dialog Box). . . . . . . . . . . . 10700
Advanced Page (Application Properties Dialog Box) . . . . . . . . . . . . . . . . . . . . . . 10702
Destinations Page (Application Properties Dialog Box) . . . . . . . . . . . . . . . . . . . . 10707
Icon Page (Application Properties Dialog Box) . . . . . . . . . . . . . . . . . . . . . . . . . . . 10709
Information Page (Application Properties Dialog Box) . . . . . . . . . . . . . . . . . . . . 10710
Pre/Post Build Actions Page (Application Properties Dialog Box) . . . . . . . . . . . 10711
Preview Page (Application Properties Dialog Box) . . . . . . . . . . . . . . . . . . . . . . . . 10712
Run-Time Languages Page (Application Properties Dialog Box) . . . . . . . . . . . . 10713
Shared Variable Deployment Page (Application Properties Dialog Box) . . . . . 10714
Source File Settings Page (Application Properties Dialog Box) . . . . . . . . . . . . . 10715
Source Files Page (Application Properties Dialog Box) . . . . . . . . . . . . . . . . . . . . 10719
Version Information Page (Application Properties Dialog Box) . . . . . . . . . . . . . 10721
Web Services Page (Application Properties Dialog box) . . . . . . . . . . . . . . . . . . . 10722
Windows Security Page (Application Properties Dialog Box) . . . . . . . . . . . . . . . 10724
Apply Icon Changes To Member VIs Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10726
Authentication Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10726
Automatic Recovery Error Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10727
298 ni.com
LabVIEW Programming Reference Manual
300 ni.com
LabVIEW Programming Reference Manual
302 ni.com
LabVIEW Programming Reference Manual
Pre/Post Build Actions Page (Packed Library Properties Dialog Box) . . . . . . . . 11068
Preview Page (Packed Library Properties Dialog Box) . . . . . . . . . . . . . . . . . . . . . 11070
Source Files Page (Packed Library Properties Dialog Box) . . . . . . . . . . . . . . . . . 11070
Source File Settings Page (Packed Library Properties Dialog Box) . . . . . . . . . . 11072
Version Information Page (Packed Library Properties Dialog Box) . . . . . . . . . . 11075
Page Setup Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11077
Palette Documentation Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11078
Perforce Changelist Description Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11079
Perforce Configuration Options Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11080
Perforce File Information Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11081
Perforce Project Options Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11082
Perforce Revision History Dialog Box. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11084
Perforce Submit Form Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11085
Polymorphic VI Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11086
Prepare Example VIs for NI Example Finder Dialog Box. . . . . . . . . . . . . . . . . . . . . . . . . 11088
Build Data File Page (Prepare Example VIs for NI Example Finder Dialog Box). . . . . .
11091
Preview Palette Changes Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11092
Print Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11093
Print Preview Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11103
Print Settings Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11104
Printer Setup Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11104
Probe Watch Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11105
Edit Items Page (Properties Dialog Box) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11106
Profile Performance and Memory Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11107
Project & System Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11111
Project Dependency Conflicts Detected Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11113
Project Explorer Window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11113
Project File Information Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11113
Project Library Properties Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11114
Documentation Page (Project Library Properties Dialog Box) . . . . . . . . . . . . . . 11116
Friends Page (Project Library Properties Dialog Box) . . . . . . . . . . . . . . . . . . . . . 11117
General Settings Page (Project Library Properties Dialog Box) . . . . . . . . . . . . . 11117
Item Settings Page (Project Library Properties Dialog Box) . . . . . . . . . . . . . . . . 11119
Protection Page (Class/Interface Properties Dialog Box) . . . . . . . . . . . . . . . . . . 11120
Project Properties Dialog Box . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11121
304 ni.com
LabVIEW Programming Reference Manual
306 ni.com
LabVIEW Programming Reference Manual
308 ni.com
LabVIEW Programming Reference Manual
310 ni.com
LabVIEW Programming Reference Manual
empty . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11412
Class input terminal is not marked as required. . . . . . . . . . . . . . . . . . . . . . 11412
Class or error data is assigned to the wrong side of the connector pane . . . . .
11412
Class output terminal does not return the input class . . . . . . . . . . . . . . . 11413
Class type of input terminal does not match class type of output terminal . . .
11413
Constant value includes broken or missing LabVIEW class . . . . . . . . . . . 11413
Dynamic front panel terminal cannot be placed inside a structure . . . . 11413
Illegal Property Node recursion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11414
Incompatible property definition override. . . . . . . . . . . . . . . . . . . . . . . . . . 11414
Invalid accessor VI connector pane . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11415
Neither bundle nor unbundle of this LabVIEW class is allowed on this VI . . . . .
11415
One of the class inputs to this Max and Min function does not originate at the
Data Value Reference Read Element border node . . . . . . . . . . . . . . . . . . . 11415
One of the class inputs to this Select function does not originate at the Data
Value Reference Read Element border node . . . . . . . . . . . . . . . . . . . . . . . . 11416
One of the class inputs to this Select function does not originate at the
dynamic control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11417
One of the class terminals is static and the other class terminal is dynamic . .
11418
One of the inputs to this Max & Min function does not originate at the
dynamic input front panel terminal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11419
One or more of the inputs to this tunnel or shift register does not originate at
the dynamic input front panel terminal . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11419
One or more of the set of VIs that this dynamic dispatch subVI or property
item may call are broken . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11420
Parent class does not define this method. . . . . . . . . . . . . . . . . . . . . . . . . . . 11421
Property is not readable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11422
Property is not writable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11422
Reentrant VI with dynamic input terminal must use 'Shared clone reentrant
execution' option . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11422
Reference creation and deletion for this class is restricted . . . . . . . . . . . 11422
Refers to a broken LabVIEW class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11422
Refers to a dynamic member VI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11423
312 ni.com
LabVIEW Programming Reference Manual
314 ni.com
LabVIEW Programming Reference Manual
Node contains terminals that are wired but not valid . . . . . . . . . . . . . . . . 11446
Property Node cannot write to property that is read-only for strict type
definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11446
Read only: cannot write to this shared variable . . . . . . . . . . . . . . . . . . . . . 11446
Shared Variable is broken. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11447
Shared Variable local access mode not supported for this variable . . . . 11447
Shared variable timeout mode not supported for this variable type . . . 11447
State of the XNode is incompatible with the library that defines the XNode . .
11447
The reference input for all styles of Call By Reference nodes must be a strict
VI reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11448
This variable can only access a typedef in public scope . . . . . . . . . . . . . . 11448
Unexpected XNode error occurred . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11448
Write only: cannot read from this shared variable . . . . . . . . . . . . . . . . . . . 11448
XNode is not executable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11449
Project Library Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11449
Library that contains the VI or item is not properly licensed . . . . . . . . . . 11449
Owning library has blocked execution of the VI . . . . . . . . . . . . . . . . . . . . . 11449
The owning library of this VI is missing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11449
This VI's owning library is missing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11450
This VI claims to be part of a library, but that library does not claim to own
this VI. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11450
VI's record of owning library's password does not match library's actual
password . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11450
The VI cannot access the referenced function . . . . . . . . . . . . . . . . . . . . . . . 11450
Script Node Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11451
One or more inputs (or outputs) share the same name . . . . . . . . . . . . . . 11451
Script node terminal has no name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11451
Script node terminal type conflict . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11452
Script node terminal type not supported by server . . . . . . . . . . . . . . . . . . 11453
Script support DLL not found . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11453
Script text is being edited by server . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11453
String Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11454
Format specifier type mismatch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11454
Too few format specifiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11454
Too many format specifiers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11455
316 ni.com
LabVIEW Programming Reference Manual
318 ni.com
LabVIEW Programming Reference Manual
320 ni.com
LabVIEW Programming Reference Manual
This class cannot inherit from the community scoped item in a locked
library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11521
This VI attempts to override a static VI in an ancestor class . . . . . . . . . . . 11521
Polymorphic VI Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11521
Dynamic dispatch VIs cannot be members of polymorphic VIs . . . . . . . . 11521
Invalid polymorphic subsystem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11521
Polymorphic instances have different connector pane terminals. . . . . . 11522
Polymorphic instances have different terminal directions on connector
panes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11522
Polymorphic VIs cannot contain instances that also are polymorphic VIs . . . .
11522
This polymorphic VI has no subVIs or has subVIs with different connector
patterns . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11522
Control VI has unapplied changes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11522
This object is not allowed in a VI on which you enable inlining . . . . . . . . . . . . . 11522
This VI does not match other VIs in the method; connector pane patterns are
different . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11523
This VI does not match other VIs in the method; connector pane terminal(s) are
different . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11523
This VI does not match other VIs in the method; execution priorities are
different . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11523
This VI does not match other VIs in the method; one is reentrant, one is not . . . . . .
11523
This VI does not match other VIs in the method; preferred execution systems are
different . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11524
This VI does not match other VIs in the method; the scope is different . . . . . . 11524
This VI is configured with inlining and automatic error handling enabled . . . 11524
This VI is configured with inlining and debugging enabled . . . . . . . . . . . . . . . . 11524
This recursive VI is configured with inlining enabled . . . . . . . . . . . . . . . . . . . . . . 11524
VI containing Shared Variable node needs to be loaded in a project . . . . . . . . 11525
Ranges of LabVIEW Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11525
3D Picture Control Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11525
Deployment Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11527
EPICS Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11528
FTP Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11530
General LabVIEW Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11531
322 ni.com
LabVIEW Programming Reference Manual
Other Resources
Changes in LabVIEW
Learn about updates – including new features and behavior changes — introduced in
each version of LabVIEW. This collection of "what's new" information documents the
evolution of LabVIEW.
324 ni.com
Functions
Functions
The VIs and functions located on the Functions palette depend on the visible palette
categories. Click the Customize button on the Functions palette and select Change
Visible Palettes from the shortcut menu to display all palette categories on the
Functions palette. You also can click the Change Visible Palettes link at the bottom of a
pinned Functions palette to display the palette categories.
The VIs and functions on the Functions palette can return general or specific LabVIEW
error codes.
Programming Use the Programming VIs and functions as the basic building blocks for a VI.
Use the Measurement I/O VIs and functions to interface with NI-DAQmx and other
data acquisition devices. This palette displays the VIs and functions for the
Measurement hardware drivers you install.
I/O
If driver VIs you expected to find on this palette are missing, you must install
support for the driver in the current version of LabVIEW.
Use the Instrument I/O VIs and functions to interface with GPIB, serial, modular,
PXI, and other types of instruments. Use the NI Instrument Driver Finder to search
for and install instrument drivers. If an instrument driver is not available in the NI
Instrument Driver Finder, you can use the Create New Instrument Driver Project
Instrument I/O
wizard to create a new instrument driver.
If driver VIs you expected to find on this palette are missing, you must install
support for the driver in the current version of LabVIEW.
SoftMotion are not installed, you cannot access the help files. Install these
additional packages from the media included with LabVIEW.
Signal Use the Signal Processing VIs to perform signal generation, digital filtering, data
Processing windowing, and spectrum analysis.
Data Use the Data Communication VIs and functions to exchange data between
Communication applications.
Use the Connectivity VIs and functions to work with .NET objects, ActiveX-enabled
applications, input devices, register addresses, source control, Web services,
Connectivity
Windows registry keys, and other software, including National Instruments
products you purchase.
Control & Use the Control and Simulation VIs and Functions to design, analyze, simulate,
Simulation and deploy dynamic system models.
Express Use the Express VIs and functions to build common measurement tasks.
Use the Addons category to access LabVIEW add-ons and to locate palettes of
Addons
some modules or toolkits that you have installed in LabVIEW.
Use the Favorites category to group together items on the Functions palette that
Favorites you access frequently. You can add items to the Favorites category using the
Category (Standard), Category (Icons and Text), Icons, and Icons and Text
326 ni.com
Functions
formats. You then can organize your Favorites using the Organize Favorites dialog
box.
Use the User Libraries palette to add VIs to the Functions palette. By default, the
User Libraries
User Libraries palette does not contain any objects.
Programming
Use the Programming VIs and functions as the basic building blocks for a VI.
Use the Cluster, Class & Variant VIs and functions to create and manipulate
Cluster, Class, & clusters and LabVIEW classes, convert LabVIEW data to a format you can
Variant manipulate independent of data type, add attributes to the data, and convert
variant data to LabVIEW data.
Use the Numeric VIs and functions to create and perform arithmetic and complex
mathematical operations on numbers and to convert numbers from one data
Numeric
type to another. Use the VIs and functions on the Elementary and Special
Functions and VIs palette to perform trigonometric and logarithmic functions.
Use the Boolean functions to perform logical operations on single Boolean values
Boolean
or arrays of Boolean values.
Use the String functions to concatenate two or more strings, extract a subset of
String strings from a string, convert data into strings, and format a string for use in a
word processing or spreadsheet application.
Use the Waveform VIs and functions to build waveforms that include the
Waveform waveform values, channel information, and timing information, and to set and
retrieve waveform attributes and components.
Collection Use the Collection VIs and functions to manipulate collection data.
Use the File I/O VIs and functions to open and close files, read from and write to
File I/O files, create directories and files you specify in the path control, retrieve directory
information, and write strings, numbers, arrays, and clusters to files.
Use the Timing VIs and Functions to manipulate the speed at which an operation
Timing
executes and to retrieve time and date information from the computer clock.
Dialog & User Use the Dialog & User Interface VIs and functions to create dialog boxes to prompt
Interface users with instructions.
Graphics & Use the Graphics & Sound VIs to create custom displays, import and export data
Sound from graphics files, and play sounds.
328 ni.com
Functions
Use the Application Control VIs and functions to programmatically control VIs
Application
and LabVIEW applications on the local computer or across a network. You can use
Control
these VIs and functions to configure multiple VIs at the same time.
Use the Report Generation VIs to create and manipulate reports of LabVIEW
Report
applications. You also can use the VIs on this palette to insert text, tables, and
Generation
graphs into bookmark locations.
Structures
Use the structures to build VIs.
Palette
Description
Object
Executes its subdiagram n times, where n is the value wired to the count (N)
For Loop terminal. The iteration (i) terminal provides the current loop iteration count, which
ranges from 0 to n-1.
Repeats the code within its subdiagram until a specific condition occurs. A While
While Loop
Loop always executes at least one time.
Use the Timed Structures and VIs to control the rate and priority at which a timed
Timed
structure executes its subdiagram, synchronize the start time of timed structures,
Structures
create timing sources, and establish a hierarchy of timing sources.
Contains one or more subdiagrams, or cases, exactly one of which executes when
Case
the structure executes. The value wired to the case selector determines which case
Structure
to execute.
Waits until an event occurs, then executes the appropriate case to handle that
Event
event. The Event structure has one or more subdiagrams, or event cases, exactly
Structure
one of which executes when the structure executes to handle an event. This
Palette
Description
Object
structure can time out while waiting for notification of an event. Wire a value to the
Timeout terminal at the top left of the Event structure to specify the number of
milliseconds the Event structure waits for an event. The default is -1, which
indicates never to time out.
Controls how the LabVIEW compiler performs certain operations and, in some
cases, increases memory and VI efficiency. Use the In Place Element structure when
you operate on a data element within an array, cluster, variant, or waveform
In Place
without requiring the LabVIEW compiler to copy data values and maintain those
Element
values in memory. You also can use this structure to operate on any data type that
Structure
you want to maintain within the same data space in memory. Right-click the border
of the structure and select the border node that matches the operation you want to
perform.
Consists of one or more subdiagrams, or frames, that execute sequentially. Use the
Flat Sequence structure to ensure that a subdiagram executes before or after
Flat another subdiagram. Data flow for the Flat Sequence structure differs from data
Sequence flow for other structures. Frames in a Flat Sequence structure execute from left to
Structure right and when all data values wired to a frame are available. The data leaves each
frame as the frame finishes executing. This means the input of one frame can
depend on the output of another frame.
Evaluates mathematical formulas and expressions similar to C on the block
diagram. The following built-in functions are allowed in formulas: abs, acos, acosh,
Formula asin, asinh, atan, atan2, atanh, ceil, cos, cosh, cot, csc, exp, expm1, floor, getexp,
Node getman, int, intrz, ln, lnp1, log, log2, max, min, mod, pow, rand, rem, sec, sign, sin,
sinc, sinh, sizeOfDim, sqrt, tan, tanh. There are some differences between the
parser in the Mathematics VIs and the Formula Node.
Diagram Has one or more subdiagrams, or cases, of which only the Enabled subdiagram
Disable executes. Use the Diagram Disable structure to disable a section of the block
Structure diagram.
Has one or more subdiagrams, exactly one of which LabVIEW uses for the duration
of execution, depending on the configuration of the conditions of the subdiagram.
Conditional Use this structure when you want to disable specific sections of code on the block
Disable diagram based on some user-defined condition. Right-click the structure border to
Structure add or delete a subdiagram. When you add a subdiagram or right-click the structure
border and select Edit Condition For This Subdiagram from the shortcut menu,
you can configure conditions in the Configure Condition dialog box.
Type Has one or more subdiagrams, exactly one of which LabVIEW compiles and
Specialization executes, depending on the order and the compilation result of the subdiagram.
330 ni.com
Functions
Palette
Description
Object
LabVIEW declines subdiagrams in order if they have syntax errors. LabVIEW accepts
the first subdiagram that does not have syntax errors and ignores the remaining
subdiagrams. If all subdiagrams have syntax errors, this structure accepts the last
subdiagram. Syntax errors are errors within the structure, such as broken wires, not
Structure errors caused by subVIs or other dependencies. Use this structure to customize
sections of code in a malleable VI (.vim) for specific data types. You also can use this
structure in conjunction with the Assert Type VIs and functions to force a malleable
VI to accept only a subset of the acceptable data types or to decline specific data
types.
Represents a shared variable on the block diagram. To bind a Shared Variable node
to a shared variable from the active project, add a Shared Variable node to the
Shared block diagram and double-click or right-click the node and select Select
Variable Variable>>Browse from the shortcut menu to display the Browse for Variable dialog
box. You also can drag a shared variable from the Project Explorer window onto the
block diagram of a VI in the same project to create a Shared Variable node.
Use local variables to read or write to one of the controls or indicators on the front
Local Variable
panel of a VI.
Global
Use global variables to access and pass data among several VIs.
Variable
Use the decorations located on the Decorations palette to group or separate objects
Decorations on a block diagram with boxes, lines, or arrows. These objects are for decoration
only and do not modify data.
Feedback
Stores data from one VI execution or loop iteration to the next.
Node
For Loop
Executes its subdiagram n times, where n is the value wired to the count (N) terminal.
The iteration (i) terminal provides the current loop iteration count, which ranges from
0 to n-1.
Terminal Inputs
• —The count terminal specifies the number of times to execute the code inside
the For Loop. If you wire 0 or a negative number to the count terminal, the loop
does not execute.
You can use the input of the parallel instances terminal and the Number of
generated parallel loop instances in the For Loop Iteration Parallelism dialog box
to improve For Loop performance by oversubscribing or undersubscribing.
• —(Optional) The chunk size terminal specifies the custom iteration schedule
used to execute chunks of loop iterations in parallel when you enable parallel For
Loop iterations. You should specify a custom schedule only if the For Loop would
benefit from a schedule different from the default.
By default, the conditional terminal is set to Stop if True. You can change the
332 ni.com
Functions
To display this terminal, set the For Loop to stop when a condition occurs.
Terminal Outputs
• —(Optional) The count terminal indicates the number of times to execute the
code inside the For Loop.
• —(Optional) The iteration terminal indicates the number of completed iterations.
The first iteration is 0.
• —(Optional) Right-click the terminal and select P Terminal Output to specify the
output of the parallel instances terminal. The terminal provides the following
outputs:
• Number of Instances—Number of loop instances LabVIEW is running in parallel.
This number is the minimum of the value wired to the parallel instances
terminal and the Number of generated parallel loop instances in the For Loop
Iteration Parallelism dialog box.
• Current Instance ID—Numeric identifier between 0 and P–1 assigned to the
loop instance that is executing the current iteration.
• —(Optional) Indicates the size of the chunk containing the loop iteration that
LabVIEW is currently executing.
Loop tunnels allow you to pass data through the For Loop. You can change the tunnel
mode to handle data that passes through the For Loop in different ways, as listed in
the following table.
• —The tunnel passes data into and out of the For Loop without additional
manipulation.
• —Shift registers access data from the previous loop iteration and pass data to
the next loop iteration.
• —When you wire an array or a collection data type to the input tunnel of the For
Loop, the auto-index tunnels read and process one element in the array or
collection per loop iteration.
You can configure the For Loop to return the last value of the last loop iteration, an
indexed array of every value generated by the loop, or a concatenated array of every
value generated by the loop by right-clicking the loop output tunnel and selecting
Tunnel Mode from the shortcut menu.
While Loop
Repeats the code within its subdiagram until a specific condition occurs. A While Loop
always executes at least one time.
• —Subdiagram—Contains code that the While Loop executes once per iteration.
• —Iteration Terminal (i)—Provides the current loop iteration count. The loop
count always starts at zero for the first iteration. If the iteration count exceeds
2,147,483,647, or 231-1, the iteration terminal remains at 2,147,483,647 for all
further iterations. If you need to keep count of more than 2,147,483,647 iterations,
you can use shift registers with a greater integer range.
• —Conditional Terminal—Evaluates a Boolean input value to determine whether
to continue executing the While Loop. To specify whether the loop stops for a TRUE
or FALSE Boolean value, configure the continuation behavior of the loop. You also
334 ni.com
Functions
can determine when the loop stops by wiring an error cluster to the conditional
terminal.
Tip To create a While Loop that automatically wires a stop button to the
conditional terminal, add the While Loop from the Execution Control palette.
Timed Structures
Use the Timed Structures and VIs to control the rate and priority at which a timed
structure executes its subdiagram, synchronize the start time of timed structures,
create timing sources, and establish a hierarchy of timing sources.
The VIs and functions on this palette can return Timed Loop Error Codes.
Palette
Description
Object
Executes one or more subdiagrams, or frames, sequentially each iteration of the loop
Timed Loop at the period you specify. Use the Timed Loop when you want to develop VIs with
multirate timing capabilities, precise timing, feedback on loop execution, timing
Palette
Description
Object
characteristics that change dynamically, or several levels of execution priority. Right-
click the structure border to add, delete, insert, and merge frames.
A Timed Sequence structure consists of one or more subdiagrams, or frames, timed
by an internal or external timing source that execute sequentially. A Timed Sequence
structure executes each frame only once and, unlike a Timed Loop, does not repeat
Timed
iterations. Use the Timed Sequence structure when you want to develop VIs that
Sequence
execute only once with precise timing, execution feedback, timing characteristics
that change dynamically, or several levels of execution priority. Right-click the Timed
Sequence structure border to add, delete, insert, and merge frames.
Creates a 1 kHz, 1MHz, or software-triggered timing source you can use to control the
Create
execution of a timed structure. Each timing source has its own unit of timing and/or
Timing
start time and does not start until the first timed structure that uses the timing source
Source
starts. You must manually select the polymorphic instance you want to use.
Fire
Software-
Fires a software-triggered timing source. Use the Create Timing Source VI to create a
Triggered
software-triggered timing source.
Timing
Source
Clear Stops and deletes the timing source you created or specified for use by another
Timing resource. The VI clears the timing source when the current iterations of all active
Source timed structures that reference the timing source complete.
Synchronize
Synchronizes the start of Timed Loops or Timed Sequence structures you enter in
Timed
timed structure names by adding the names to the synchronization group you
Structure
specify in synchronization group name.
Starts
Stop Timed Aborts the execution of the Timed Loop or Timed Sequence structure you enter in
Structure name.
Build
Timing Creates a hierarchy of timing sources based on the names you enter in timing source
Source names.
Hierarchy
336 ni.com
Functions
Examples
Timed Loop
Executes one or more subdiagrams, or frames, sequentially each iteration of the loop
at the period you specify. Use the Timed Loop when you want to develop VIs with
multirate timing capabilities, precise timing, feedback on loop execution, timing
characteristics that change dynamically, or several levels of execution priority. Right-
click the structure border to add, delete, insert, and merge frames.
Note If you use the Timed Loop in an FPGA VI, you must use a single-cycle
Timed Loop. A single-cycle Timed Loop executes one subdiagram per FPGA
clock cycle. Single-cycle Timed Loops do not support frames.
The iteration (i) terminal provides the current loop iteration count, which is zero for
the first iteration. If iteration count exceeds 2,147,483,647, or 231-1, the iteration
terminal remains at 2,147,483,647 for all further iterations. If you need to keep count of
more than 2,147,483,647 iterations, you can use shift registers with a greater integer
range.
The Timed Loop includes the (1) Input and (4) Output nodes, and (2) Left and (3) Right
Data nodes for each frame, as shown in the previous illustration. By default, nodes of
the Timed Loop do not display all of the available input and output terminals. You can
resize nodes or right-click a node and use the shortcut menu to display node
terminals. Right-click the border of a Timed Loop and select Show Left Data Node or
Show Right Data Node from the shortcut menu to display each node.
Double-click the Input Node or right-click the structure and select Configure Timed
Loop to display the Configure Timed Loop dialog box, where you can configure the
Timed Loop. The values you enter in the Configure Timed Loop dialog box appear next
to the input terminals on the Input Node.
The following table lists node terminals of the Timed Loop. The Timed Loop includes
many nodes whose values are relative to the start of the timing source. If you do not
request synchronization, the start time of the timing source is the start time of the first
loop that uses the timing source. If multiple loops are part of a synchronization group,
the start time of the timing source is when the last loop is ready to execute.
Specifies the time when the Timed Loop must complete the iteration. The
deadline value is relative to the start of the timing source and is specified in units
Deadline of the timing source. Specifying a value of -1 indicates no deadline. If you do not
specify a value for this input, the structure uses the value of Period as the deadline
value.
Propagates errors through the structure. The Timed Loop does not execute if Error
Error
receives an error condition.
Specifies how the Timed Loop handles late executions. There are five available
modes—No change, Process missed periods maintaining original phase, Process
Mode
missed periods ignoring original phase, Discard missed periods maintaining
original phase, and Discard missed periods ignoring original phase.
Structure Specifies a name for the Timed Loop.
338 ni.com
Functions
Name
Specifies the length of time a Timed Loop waits to begin execution. The offset
Offset value is relative to the start of the timing source and is specified in units of the
timing source.
Specifies a period for the Timed Loop in the same units as the timing source
specified by Source Name.
Specifies the priority of the execution of the Timed Loop. The priority of a timed
structure specifies when the structure executes on the block diagram relative to
Priority
other objects on the block diagram. The value for the Priority input must be a
positive integer between 1 and 65,535.
Specifies the processor you want to handle execution. The default is -2, which
means LabVIEW automatically assigns a processor. To manually assign a
Processor processor, enter a number between 0 and 255, where 0 represents the first
processor. If you enter a number that exceeds the number of available processors,
you generate a run-time error and the timed structure does not execute.
Specifies the name of the timing source to use for controlling the structure. The
Source
timing source must be created on the block diagram using the Create Timing
Name
Source VI or selected from the Configure Timed Loop dialog box.
Specifies the maximum amount of time a Timed Loop can wait to begin execution.
The default is -1,which means that no timeout is specified for the next frame. The
Timeout
timeout value is relative to the start of the timing source or the end of the previous
iteration and is specified in units of the frame timing source.
Actual End
[f-1] Returns the actual end time for the previous frame (f-1). The actual end value is
(Unavailable relative to the start time of the timing source and is specified in units of the timing
in singe- source.
frame
Timed
Loop)
Actual End Returns the actual end time for the previous iteration (i-1). The actual end value is
[i-1] (First relative to the start time of the timing source and is specified in units of the timing
frame only) source.
Actual Start
[f]
(Unavailable Returns the actual start time of the current frame (f). The actual start value is relative
in single- to the start time of the timing source and is specified in units of the frame timing
frame source.
Timed
Loop)
Actual Start Returns the actual start time of the current iteration (i). The actual start value is
[i] (First relative to the start time of the timing source and is specified in units of the timing
frame only) source.
Deadline Returns the deadline value for the current frame.
Error Propagates errors through the structure.
Expected
End [f-1]
(Unavailable Returns the expected end time for the previous frame (f-1). The expected end value is
in single- relative to the start time of the timing source and is specified in units of the timing
frame source. The expected end (f-1) is equal to the start of the next period.
Timed
Loops)
Expected
Returns the expected end time for the previous iteration (i-1). The expected end
End [i-1]
value is relative to the start time of the timing source and is specified in units of the
(First frame
timing source.
only)
Returns the expected start time of the current frame (f). The expected start value is
Expected
relative to the start time of the timing source and is specified in units of the frame
Start [f]
timing source.
Expected
Returns the expected start time of the current iteration (i). The expected start value is
Start [i]
relative to the start time of the timing source and is specified in units of the timing
(First frame
source.
only)
Finished Returns TRUE if the Timed Loop does not complete the previous frame before the
Late? [f-1] specified deadline.
340 ni.com
Functions
Finished
Late? [i-1] Returns TRUE if the Timed Loop does not complete the previous iteration before the
(First frame specified deadline.
only)
Frame
Duration
(Unavailable
Returns the duration time of the previous frame. The frame duration is relative to the
in single-
start of the frame and is specified in units of the frame timing source.
frame
Timed
Loops
Returns the end time of the previous iteration or frame in nanoseconds. If the timed
loop uses an absolute timing source, Global End Time returns a timestamp.
Global End Otherwise, Global End Time returns a 64-bit integer. If the timed loop runs on an RT
Time target, Global End Time is based on the system time of the target and can be
synchronized with an external clock. If the timed loop runs on Windows, Global End
Time is based on the Windows system time.
Returns the start time of the current iteration or frame in nanoseconds. If the timed
loop uses an absolute timing source, Global Start Time returns a timestamp.
Global Start Otherwise, Global Start Time returns a 64-bit integer. If the timed loop runs on an RT
Time target, Global Start Time is based on the system time of the target and can be
synchronized with an external clock. If the timed loop runs on Windows, Global Start
Time is based on the Windows system time.
Iteration
Returns a time stamp of the duration of the previous iteration. The iteration duration
Duration
value is relative to the start of the iteration and is specified in units of the timing
(First frame
source.
only)
Mode (First
Returns the mode value for the current iteration.
frame only)
Offset (First
Returns the offset value for the start of the current iteration.
frame only)
Period (First
Returns the period value for the current frame.
frame only)
Priority Returns the priority value for the current frame.
Returns the processor you assigned to handle execution, if you assigned one.
Processor
Otherwise, returns -2, which means LabVIEW automatically assigned a processor.
Start
Returns the start value for the current frame.
(Unavailable
in first
frame)
Timeout Returns the timeout value for the current frame.
Returns an enumerated type with the reason for the execution start of the current
Wakeup
iteration. The possible values are 0 for Normal, 1 for Aborted, 2 for Asynchronous
Reason
wakeup, 3 for a Timing source error, 4 for a Timed loop error, and 5 for Timeout.
Specifies the time when the Timed Loop must complete the next frame. The
Deadline deadline value is relative to the start of the next frame and is specified in units
of the timing source. The default is -1, which means unchanged.
Propagates errors or warnings out of the Timed Loop subdiagram. If Error
receives an error condition, the Timed Loop executes the next frame untimed. If
Error Error receives an error condition in the last frame, the structure finishes
executing the current iteration untimed, exits the loop, and returns the error
condition on the Output node.
Specifies the Mode for the next iteration of the Timed Loop. There are five
Mode (Last available modes—No change, Process missed periods maintaining original
frame only) phase, Process missed periods ignoring original phase, Discard missed periods
maintaining original phase, and Discard missed periods ignoring original phase.
Specifies the length of time the next iteration waits to begin execution. The
Offset (Last offset value is relative to the start of the next iteration and is specified in units of
frame only) the timing source. The default is -1, which means unchanged. If you set an
offset for the next iteration, you must set a new Mode value.
Specifies a period for the next iteration of a Timed Loop in units as the timing
source. The default is -1, which means unchanged.
Specifies the Priority for the next iteration of the Timed Loop. The priority
Priority specifies when the next iteration executes on the block diagram relative to
other objects on the block diagram. The value for the Priority input must be a
342 ni.com
Functions
Actual End
[f-1]
(Unavailable Returns the actual end time for the previous frame (f-1). The actual end value is
in single- relative to the start time of the timing source and is specified in units of the timing
frame source.
Timed
Loops)
Returns the actual end time for the previous iteration (i-1). The actual end value is
Actual End
relative to the start time of the timing source and is specified in units of the timing
[i-1]
source.
Propagates errors received by the Timed Loop and returns errors from the
Error
subdiagram.
Expected
End [f-1]
Returns the expected end time for the previous frame (f-1). The expected end value is
(Unavailable
relative to the timing source if the frame timing source is not reset at the beginning of
in single-
the iterations. The expected end value is specified in units of the timing source. The
frame
expected end (f-1) is equal to the start of the next period.
Timed
Loops)
Returns the expected end time for the previous iteration (i-1). The expected end
Expected value is relative to the timing source if the frame timing source is not reset at the
End [i-1] beginning of the iterations. The expected end value is specified in units of the timing
source.
Finished
Late? [f-1]
(Unavailable
Returns TRUE if the Timed Loop does not complete the previous frame before the
in single-
specified deadline.
frame
Timed
Loops)
Finished Returns TRUE if the Timed Loop does not complete the previous iteration before the
Late? [i-1] specified deadline.
Frame
Duration
(Unavailable
Returns the duration time of the previous frame. The frame duration is relative to the
in single-
start of the frame and is specified in units of the frame timing source.
frame
Timed
Loops)
Returns the end time of the previous iteration or frame in nanoseconds. If the timed
loop uses an absolute timing source, Global End Time returns a timestamp.
Global End Otherwise, Global End Time returns a 64-bit integer. If the timed loop runs on an RT
Time target, Global End Time is based on the system time of the target and can be
synchronized with an external clock. If the timed loop runs on Windows, Global End
Time is based on the Windows system time.
Returns a time stamp of the execution length of the previous iteration. The iteration
Iteration
duration is relative to the start of the iteration and is specified in units of the timing
Duration
source.
Returns the processor you assigned to handle execution, if you assigned one.
Processor
Otherwise, returns -2, which means LabVIEW automatically assigned a processor.
Refer to the Configuring Timed Loops topic for more information about using and
configuring the Timed Loop.
To convert a Timed Loop to a While Loop, right-click the Timed Loop and select
Replace with While Loop from the shortcut menu. To convert a Timed Loop to a Timed
Sequence structure, right-click the Timed Loop and select Replace with Timed
344 ni.com
Functions
Unlike the While Loop, the Timed Loop does not require wiring to the stop terminal. If
you do not wire anything to the stop terminal, the loop will run interminably.
Refer to the Timed Loop (FPGA Module) topic for more information about using and
configuring the Timed Loop in FPGA Vis.
Examples
Timed Sequence
The Timed Sequence structure includes the (1) Input and (4) Output nodes, and (2) Left
and (3) Right Data nodes for each frame, as shown in the previous illustration. By
default, nodes of the Timed Sequence structure do not display all of the available
input and output terminals. You can resize nodes or right-click a node and use the
shortcut menu to display node terminals. Right-click the border of a Timed Sequence
structure and select Show Left Data Node or Show Right Data Node from the shortcut
menu to display each node.
Double-click the Input Node to display the Configure Timed Sequence dialog box,
where you can configure the Timed Sequence structure. The values you enter in the
Configure Timed Sequence dialog box appear as options in the Input Node.
The following table lists node terminals of the Timed Sequence structure.
Specifies the time when the first frame must complete. The deadline value is
Deadline relative to the start of the Timed Sequence structure and is specified in units of
the frame timing source. Specifying a value of -1 indicates no deadline.
Propagates errors through the structure. The Timed Sequence structure does not
Error
execute if Error receives an error condition.
Structure
Specifies a name for the Timed Sequence structure.
Name
Specifies the length of time a Timed Sequence structure waits to begin execution
Offset of the first frame. The offset value is relative to the start of the Timed Sequence
structure and is specified in units of the timing source.
Specifies the priority for the execution of the Timed Sequence structure. The
priority specifies when the Timed Sequence structure executes on the block
Priority
diagram relative to other objects on the block diagram. The value for the Priority
input must be a positive integer between 1 and 65,535.
Specifies the processor you want to handle execution. The default is -2, which
means LabVIEW automatically assigns a processor. To manually assign a
Processor processor, enter a number between 0 and 255, where 0 represents the first
processor. If you enter a number that exceeds the number of available processors,
you generate a run-time error and the timed structure does not execute.
Specifies the name of the timing source to use for controlling the structure. The
Source
timing source must be created on the block diagram using the Create Timing
Name
Source VI or selected from the Configure Timed Sequence dialog box.
Specifies the maximum amount of time a Timed Sequence structure can wait to
begin execution of the first frame. The default is -1, which means that no timeout
Timeout
is specified for the next frame. The timeout value is relative to the start of the
structure and is specified in units of the frame timing source.
Actual End
Returns the actual end time for the previous frame (f-1). The actual end value is
[f-1]
relative to the start time of the Timed Sequence structure and is specified in units
(Unavailable in
of the frame timing source.
first frame)
346 ni.com
Functions
Actual Start [i] Returns the actual start time of the current iteration (i). The actual start value is
(First frame relative to the start time of the Timed Sequence structure and is specified in units
only) of the structure timing source.
Returns the actual start time of the current frame (f). The actual start value is
Actual Start [f] relative to the start time of the Timed Sequence structure and is specified in units
of the frame timing source.
Deadline Returns the deadline value for the current frame.
Error Propagates errors through the structure.
Expected End
Returns the expected end time for the previous frame (f-1). The expected end value
[f-1]
is relative to the start time of the Timed Sequence structure and is specified in
(Unavailable in
units of the frame timing source.
first frame)
Expected Start Returns the expected start time of the current iteration (i). The expected start value
[i] (First frame is relative to the start time of the Timed Sequence structure and is specified in
only) units of the structure timing source.
Returns the expected start time of the current frame (f). The expected start value is
Expected Start
relative to the start time of the Timed Sequence structure and is specified in units
[f]
of the frame timing source.
Finished Late?
[f-1] Returns TRUE if the Timed Sequence structure does not complete the previous
(Unavailable in frame before the specified deadline.
first frame)
Frame
Duration Returns the duration time of the previous frame. The frame duration is relative to
(Unavailable in the start of the frame and is specified in units of the frame timing source.
first frame)
Global End
Time
Returns a time stamp for the end of the previous frame in nanoseconds.
(Unavailable in
first frame)
Global Start
Returns a time stamp for the start of the current frame in nanoseconds.
Time
Offset (First
Returns the offset value for the start of the first frame.
frame only)
Priority Returns the priority value for the current frame.
Processor Returns the processor you assigned to handle execution, if you assigned one.
Deadline
Specifies the time when the next frame must complete. The deadline value is
(Unavailable
relative to the start of the next frame and is specified in units of the frame
in last
timing source. The default is -1, which means unchanged.
frame)
Propagates errors through the structure. If Error receives an error condition, the
Error
Timed Sequence structure executes the next frame untimed.
Specifies the priority for the execution of the next frame. The priority specifies
Priority
when the next frame executes on the block diagram relative to other objects on
(Unavailable
the block diagram. The value for the Priority input must be a positive integer
in last
between 1 and 65,535. The default is -1, which means no change from the
frame)
priority value of the previous frame.
Specifies the processor you want to handle execution. The default is -1, which
means LabVIEW assigns the same processor specified in the Input node. Enter
-2 to allow LabVIEW to assign the processor. To manually assign a processor,
Processor enter a number between 0 and 255, where 0 represents the first available
processor. If you enter a number that exceeds the number of available
processors, you generate a run-time error and the timed structure does not
execute.
Start
The start time specifies the time the next frame should start executing. Specify
(Unavailable
a start time value relative to the start of the current frame in units of the frame
in last
timing source. The default is -1, which means unspecified.
frame)
Timeout Specifies the maximum amount of time the next frame can wait to begin
(Unavailable execution. The default is -1, which means that no timeout is specified for the
in last next frame. The timeout value is relative to the end time of the current frame
frame) and is specified in units of the frame timing source.
348 ni.com
Functions
Returns the actual end time for the final frame (f-1). The actual end value is relative to
Actual
the start time of the Timed Sequence structure and is specified in units of the frame
End [f-1]
timing source.
Propagates errors received by the Timed Sequence structure and returns errors from
Error
the frames.
Returns the expected end time for the final frame (f-1). The expected end value is
Expected
relative to the timed structure if the frame timing source is not reset at the beginning of
End [f-1]
the iterations. The expected end value is specified in units of the timing source.
Finished
Late? Returns TRUE if the final frame does not complete before the specified deadline.
[f-1]
Frame Returns the duration time of the previous frame. The frame duration is relative to the
Duration start of the frame and is specified in units of the frame timing source.
Global
Returns a time stamp for the end of the previous frame in nanoseconds.
End Time
Returns a time stamp of the execution length of all of the frames. The iteration duration
Iteration
is relative to the start of the Timed Sequence structure and is specified in units of the
Duration
timing source.
Returns the processor you assigned to handle execution, if you assigned one.
Processor
Otherwise, returns -2, which means LabVIEW automatically assigned a processor.
Refer to the Configuring Timed Sequence Structures topic for information about using
and configuring the Timed Sequence structure.
Creates a 1 kHz, 1MHz, or software-triggered timing source you can use to control the
execution of a timed structure. Each timing source has its own unit of timing and/or
start time and does not start until the first timed structure that uses the timing source
starts. You must manually select the polymorphic instance you want to use.
Inputs/Outputs
• name (in) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• name (out) —
350 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• name (in) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• name (out) —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• trigger ID —
trigger ID is the numeric identifier of the software-triggered timing source. The valid range of
trigger ID values is 0-127. Because this parameter is implemented as an integer rather than a
string, it is safe to use the Fire Software-Triggered Timing Source VI in time-critical code.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
timing source name is the name of the timing source created by the VI. Wire this output to the
Source Name input of a timed structure.
• error out —
error out contains error information. This output provides standard error out functionality.
Fires a software-triggered timing source. Use the Create Timing Source VI to create a
software-triggered timing source.
352 ni.com
Functions
Inputs/Outputs
• trigger ID —
trigger ID is the numeric identifier of the software-triggered timing source. The valid range of
trigger ID values is 0-127. Because this parameter is implemented as an integer rather than a
string, it is safe to use the Fire Software-Triggered Timing Source VI in time-critical code.
• number of ticks —
number of ticks specifies the number of ticks to increment the internal tick counter of the
timing source. The default value is 1 tick.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• trigger ID out —
• error out —
error out contains error information. This output provides standard error out functionality.
When you use a software-triggered timing source to control a Timed Loop, you can use
the number of ticks input to trigger multiple successive Timed Loop iterations. When
the internal tick counter jumps past one or more Timed Loop periods, the Timed Loop
regards those periods as missed periods. If you remove the checkmark from the
Discard missed periods checkbox on the Configure Timed Loop dialog box, a single
call to this VI can trigger the Timed Loop to execute multiple iterations.
Stops and deletes the timing source you created or specified for use by another
resource. The VI clears the timing source when the current iterations of all active timed
structures that reference the timing source complete.
If the timing source is associated with a DAQmx task, the VI also clears the task.
Inputs/Outputs
• name —
name is the name of the timing source you want to stop and delete.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• parent —
parent is the name of the parent of the timing source the VI deleted. If the timing source has no
parent, parent is empty.
• error out —
error out contains error information. This output provides standard error out functionality.
Synchronizes the start of Timed Loops or Timed Sequence structures you enter in
timed structure names by adding the names to the synchronization group you specify
in synchronization group name.
All timed structures in a synchronization group wait until all the structures are ready to
execute.
354 ni.com
Functions
Inputs/Outputs
• clear (F) —
clear, if TRUE, removes all timed structures from synchronization group name before adding
the timed structures in timed structure names to the group.
Set clear to TRUE to remove any timed structures that do not correspond to a Timed Loop. The
default is FALSE.
• replace (T) —
replace replaces the timed structures in synchronization group name with the timed structures
you enter in timed structure names.
If replace is FALSE and the timing source is a member of another hierarchy, the VI returns an
error.
synchronization group name is the name for the group of timed structures you want to
synchronize.
• timeout ms (10000) —
timeout ms specifies the time, in milliseconds, that a timed structure waits on other members of
the synchronization group to arrive at the synchronization point.
If any of the timed structures in the group do not arrive in time, the timed structure returns an
error. The default is 10,000 ms. A value of –1 indicates to wait indefinitely.
timed structure names specifies the names of the timed structures you want to synchronize.
By default, the VI deletes the timed structure from its current group and adds it to the group you
specify in synchronization group name. If you set replace to FALSE and a timed structure you
specify in timed structure names is a member of another group, the VI returns an error to
indicate that it could not add the timed structure to the synchronization group.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
timed structures names out returns the names of all timed structures in the group after
LabVIEW adds the names to the synchronization group you specify.
• error out —
error out contains error information. This output provides standard error out functionality.
Use this VI only with timed structures configured to use either the 1 kHz Clock timing
source or the 1 MHz Clock timing source. National Instruments does not recommend
using this VI with absolute time timing sources, reset at structure start timing sources,
the Synchronize to Scan Engine timing source, or any external timing source.
Aborts the execution of the Timed Loop or Timed Sequence structure you enter in
name.
If you attempt to abort a running Timed Loop, the Timed Loop immediately executes
the current iteration and returns Aborted in the Wakeup Reason output of the Left
Data node.
Related Information
Inputs/Outputs
• priority —
priority changes the priority of the timed structure you are stopping. Use priority when you
want to stop two or more timed structures and want to ensure one stops before the other.
• name —
356 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Creates a hierarchy of timing sources based on the names you enter in timing source
names.
Inputs/Outputs
• replace (F) —
replace (F) replaces any timing source you entered in timing source names if a timing source by
that name already exists in the hierarchy of timing sources.
• hierarchy name —
hierarchy name is the name of the timing source hierarchy you want to create.
• parent —
parent is the valid timing source you want to start after the all the timing sources in hierarchy
name start.
timing source names is an array of names of the timing sources you want to add to the timing
source hierarchy.
If replace is TRUE, the new timing source replaces any timing source with the same name that
already exists in the timing source hierarchy. These timing sources start before the timing source
you enter in parent.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
The hierarchy determines the order in which the timing sources start. The parent
timing source does not start until after the timing sources in hierarchy name start. Use
this VI when you have timing sources that have signal dependencies, such as DAQ
counters routed to drive analog input connections. In such a case, the counter timing
source acts as the parent.
Case Structure
Contains one or more subdiagrams, or cases, exactly one of which executes when the
structure executes. The value wired to the case selector determines which case to
execute.
358 ni.com
Functions
• Selector label—Displays the value(s) for which the associated case executes. You
can specify a single value or a range of values. You also can use the selector label to
specify a default case.
• Subdiagram(case)—Contains the code that executes when the value wired to
the case selector matches the value that appears in the selector label. To modify
the number or order of subdiagrams, right-click the border of the Case structure
and select the appropriate option.
• Case selector—Selects which case to execute based on the value of the input
data. The input data can be a Boolean, string, integer, enumerated type or error
cluster. The data type you wire to the case selector determines the allowed cases
you can enter in the selector label.
Examples
Event Structure
Waits until an event occurs, then executes the appropriate case to handle that event.
The Event structure has one or more subdiagrams, or event cases, exactly one of which
executes when the structure executes to handle an event. This structure can time out
while waiting for notification of an event. Wire a value to the Timeout terminal at the
top left of the Event structure to specify the number of milliseconds the Event
structure waits for an event. The default is -1, which indicates never to time out.
You can configure a single event case to handle multiple events , but only one of these
events within the event case can occur at a time. You must place the Event structure in
a While loop to handle multiple events.
A single case in the Event structure cannot handle both notify and filter events . A case
can handle multiple notify events but can handle multiple filter events only if the
event data items are identical for all events. You can configure any number of Event
structures to respond to the same notify event or filter event on a specific object.
Before you configure events for the Event structure to handle, review the caveats and
recommendations for using events in LabVIEW.
360 ni.com
Functions
The following example shows an Event structure with the Key Down? event case.
• —The event selector label specifies which events cause the currently displayed
case to execute. To view other event cases, click the down arrow next to the case
name.
• — The Timeout terminal specifies the number of milliseconds to wait for an
event before timing out. If you wire a value to the Timeout terminal, you must
provide a Timeout event case to avoid an error.
• — The dynamic event terminals accept an event registration refnum or a cluster
of event registration refnums for dynamic event registration . If you wire the inside
right terminal, that terminal no longer carries the same data as the left terminal.
You can wire the event registration refnum or cluster of event registration refnums
to the inside right terminal through a Register For Events function and modify the
event dynamically . Depending on the palette from which you select the Event
structure, the dynamic event terminals might not appear by default. To display
these terminals, right-click the Event structure and select Show Dynamic Event
Terminals from the shortcut menu.
• —
The Event Data Node identifies the data LabVIEW returns when an event occurs.
Like the Unbundle By Name function, you can resize the node vertically and select
the items you need. Use the Event Data Node to access event data elements, such
as Type and Time, which are common to all events. Other event data elements,
like Char and VKey for example, vary based on the event you configure. You can
show or hide the Event Data Node for a case when all data items are unused. Right-
click the structure border and select Visible Items»Event Data Node for This Case
to show or hide the Event Data Node. You cannot hide a node when it is wired or
when it is inside a filter event case.
Note For more information about event data elements, click the Details
link in the event descriptions for the Control, Application, Pane, and VI
event class topics.
• — The Event Filter Node identifies the event data you can modify before the user
interface can process that data. This node appears in Event structure cases that
handle filter events . If you want to change event data, you can wire and modify
data items from the Event Data Node to the Event Filter Node. You also can change
the event data by wiring new values to the node terminals. To completely discard
an event, wire a TRUE value to the Discard? terminal. If you do not wire a value to a
data item of the Event Filter Node, that data item remains unchanged.
• — Like a Case structure, the Event structure supports tunnels. However, by
default you do not have to wire Event structure output tunnels in every case. All
unwired tunnels use the default value for the tunnel data type. Right-click a tunnel
and deselect Use Default If Unwired from the shortcut menu to revert to the
default Case structure behavior where tunnels must be wired in all cases. You also
can configure the tunnels to wire the input and output tunnels automatically in
unwired cases.
362 ni.com
Functions
Controls how the LabVIEW compiler performs certain operations and, in some cases,
increases memory and VI efficiency. Use the In Place Element structure when you
operate on a data element within an array, cluster, variant, or waveform without
requiring the LabVIEW compiler to copy data values and maintain those values in
memory. You also can use this structure to operate on any data type that you want to
maintain within the same data space in memory. Right-click the border of the
structure and select the border node that matches the operation you want to perform.
Right-click the border of the In Place Element structure and select from the following
nodes to add to the structure border:
You can right-click a node and select Mark As Modifier to indicate that LabVIEW
modifies the data you wire to the node, even if the block diagram does not indicate a
modification of data occurs. The Mark As Modifier option is useful when you work with
dynamic dispatch terminals. While the parent implementation of a dynamic dispatch
subVI might not modify the data wired to the node, a child implementation might
modify the data. Using the Mark As Modifier option then optimizes performance by
minimizing the number of copies of the data LabVIEW creates.
Note The Mark As Modifier option does not prevent access to the data and
cannot be used as a synchronization method. Instead, use semaphores or
data flow to control access to protected data and avoid race conditions.
Right-click the border of an In Place Element structure and select the Add Array Index /
Replace Elements option from the shortcut menu to place this border node on the In
Place Element structure.
Inputs/Outputs
• array —
• index —
index specifies the element you want to replace in the array. This border node gains an
additional index parameter for each additional dimension of the array in the array input.
• element —
• element —
• array —
array returns the array you input with the replaced element(s).
• index —
364 ni.com
Functions
Use this border node to perform operations on an element or elements of an array and
return the elements to the same location or locations in the array. Each array element
you index with the border node on the left side of the structure must be placed back
into the array with the border node on the right side of the structure by wiring the
element back into the array. This border node allows the LabVIEW compiler to avoid
making a complete value copy of the array and array elements in memory.
The border node on the left side of the structure is similar to the Index Array function.
The border node on the right side of the structure is similar to the Replace Array
Subset function.
Right-click the border of an In Place Element structure and select the Add Unbundle /
Bundle Elements option from the shortcut menu to place this border node on the In
Place Element structure.
Inputs/Outputs
• input cluster —
• element —
• element —
• output cluster —
Use this border node to perform operations on one or more cluster elements and
replace the elements in the same location in the cluster. Each cluster element you
unbundle with the border node on the left side of the structure must be bundled back
into the cluster with the border node on the right side of the structure. This node
allows the LabVIEW compiler to avoid storing a complete value copy of the cluster and
cluster elements in memory.
The border node on the left side of the structure is similar to the Unbundle by Name
function. The border node on the right side of the structure is similar to the Bundle by
Name function.
Right-click the border of an In Place Element structure and select the Add Variant To /
From Element option from the shortcut menu to place this border node on the In
Place Element structure.
Inputs/Outputs
• variant —
variant is the variant data you want to convert to the LabVIEW data type specified in type.
• type —
type is the LabVIEW data type to which you want to convert the variant data.
type can be any data type. However, this function returns an error if LabVIEW cannot convert the
data wired to variant to the data type you wire to this input. If the data is integers, you can
coerce the data to another numeric representation, such as an extended-precision, floating-
point number.
• data —
• error out —
366 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
This border node has error out terminals on both sides of the structure. The error output on the
left returns the actual error and the error output on the right duplicates the error from the left.
You need to wire only one of the error out terminals because they have the same error output.
• data —
• variant —
• error out —
Use this border node to perform operations on one or more variant data elements and
replace the variant data with the new data type in the same location in memory. Each
variant data element you retrieve with the border node on the left side of the structure
must be converted back to a variant with the border node on the right side of the
structure. This border node allows the LabVIEW compiler to avoid storing a complete
value copy of the variant and variant data elements in memory.
The border node on the left side of the structure is similar to the Variant to Data
function. The border node on the right side of the structure is similar to the To Variant
function.
Right-click the border of an In Place Element structure and select the Add In Place In /
Out Element option from the shortcut menu to place this border node on the In Place
Element structure.
Inputs/Outputs
• —
• —
• —
• —
Use this border node to perform operations on any data type and return the resulting
data to the same location in memory. Each data element input on the left side of the
structure must be wired to the border node on the right side of the structure. This
border node allows the LabVIEW compiler to avoid moving the specified data to
different memory locations and can increase memory and execution efficiency.
The border node on the left side of the structure accepts any data type as an input. You
must wire the same data type from the border node on the left side of the structure to
the input on the border node on the right side of the structure.
Right-click the border of an In Place Element structure and select the Add Waveform
Unbundle / Bundle Elements option from the shortcut menu to place this border node
on the In Place Element structure.
Inputs/Outputs
• waveform —
• Y—
• Y—
• output waveform —
368 ni.com
Functions
output waveform is the resulting waveform. If you did not wire an existing waveform, this is a
new waveform. If you wired an existing waveform, this is the edited waveform.
Use this border node to perform operations on one or more waveform components
and replace the components to the same location in the waveform. Each waveform
component you retrieve with the border node on the left side of the structure must be
replaced back into the waveform with the border node on the right side of the
structure. This border node allows the LabVIEW compiler to avoid storing a complete
value copy of the waveform and waveform components in memory.
The border node on the left side of the structure is similar to the Get Waveform
Components function. The border node on the right side of the structure is similar to
the Build Waveform function.
Accepts a data value reference or an external data value reference as an input, allows
you to operate on the data within the In Place Element structure, and replaces that
data in the original memory space. You can enable read-only access to the data value
reference by right-clicking the border node on the right of the structure and selecting
Allow Parallel Read-only Access. When the border node on the right is unwired,
LabVIEW allows multiple, concurrent read-only operations and does not modify the
data value reference.
Right-click the border of an In Place Element structure and select Add Data Value
Reference Read / Write Element from the shortcut menu to place this border node on
the In Place Element structure. You cannot find these border nodes in the palette
search or quick drop search.
Inputs/Outputs
• data value reference —
data value reference is the reference that points to the data you want to access.
• data value —
Note LabVIEW cannot resize the data in an external data value reference. This node
produces an error if the array in an external data value reference is a different size
than the array you wire to the right side of the border node. If you wire an array with
more elements than are in the reference array to the border node on the right,
LabVIEW truncates the elements to fit in the reference array. If you wire an array with
fewer elements to the border node on the right, LabVIEW adds default data to the
reference array until it is filled.
• error out —
error out contains error information. This output provides standard error out functionality.
This border node has error out terminals on both sides of the structure. The error output on the
left returns the actual error and the error output on the right duplicates the error from the left.
You need to wire only one of the error out terminals because they have the same error output.
• data value —
data value reference is the reference that points to the new data.
• error out —
If a data value reference points to a class object, you cannot replace that class object
with a different LabVIEW class object inside the In Place Element structure. However,
you can replace any other object with an object of the same type.
Note This border node provides serialized access to the reference you wire
to the structure. When part of a VI obtains access to the reference, LabVIEW
blocks the rest of the VI or other VIs from simultaneous access. If you attempt
370 ni.com
Functions
to access a reference twice at the same time in the same structure, LabVIEW
returns a run-time error. If you attempt to access the reference after you
obtain access inside the In Place Element structure, the VI might hang. You
can enable multiple, concurrent read-only operations that do not modify the
data value reference by right-clicking the border node on the right of the
structure and selecting Allow Parallel Read-only Access.
Split an array into subarrays along a dimension you specify and operate on the
subarrays in place within the structure. Right-click the border of an In Place Element
structure and select the Add Array Split / Replace Subarrays option from the shortcut
menu to place this border node on the In Place Element structure.
Inputs/Outputs
• array —
• split length —
split length specifies the length of the resulting subarray. Each split length results in an
additional subarray. You must wire all or none of the split length inputs. If you do not wire any
split length inputs, LabVIEW automatically determines the length of the resulting subarray.
• element —
• element —
• element —
• element —
• array —
array is the array this border node returns with the replaced element(s), row(s), column(s), or
page(s).
• split length —
This border node allows the LabVIEW compiler to avoid making a complete value copy
of the array and array elements in memory.
Right-click this border node and select Split Dimension to specify in which dimension
to split the array. For example, if you select 1 for a two-dimensional array, LabVIEW
creates the subarrays from columns of the original array. If you select 0, LabVIEW
creates the subarrays from rows of the original array.
If you wire more elements than are in the original array to the border node on the right
side of the structure, LabVIEW truncates the elements to fit in the original memory
space. If you wire fewer elements than are in the original array to the border node,
LabVIEW adds additional array elements to fill the original memory space.
Right-click the border of an In Place Element structure and select the Add Variant
Attribute Get / Replace option from the shortcut menu to place this border node on
the In Place Element structure.
Inputs/Outputs
• variant —
variant specifies the variant for which you want to retrieve or change an attribute.
• attribute name —
372 ni.com
Functions
attribute name specifies the name of the attribute whose value you want to retrieve or change.
• attribute —
attribute returns the original value of the attribute if found? is TRUE. This parameter returns an
empty attribute if found? is FALSE.
• found? —
found? returns TRUE if the attribute was found with the specified attribute name and the
specified attribute name is not a duplicate name of a previously found attribute. The indicator
returns FALSE if the specified attribute name was not found, or if the specified attribute name
was a duplicate name of a previously found attribute.
• attribute —
• variant —
• attribute name —
• found? —
Use this border node to access and modify one or more attributes of a variant without
copying the attributes out of the variant. Each attribute value you retrieve with the
border node on the left side of the structure must be replaced with an attribute value
using the border node on the right side of the structure.
The border node on the left side of the structure is similar to the Get Variant Attribute
function. The border node on the right side of the structure is similar to the Set Variant
Attribute function.
Note If the attribute with the specified attribute name is not found by the
node on the left side of the structure, the node on the right side of the
structure ignores the attribute. To allow the node on the right side to add the
attribute to the variant if the attribute was not found, refer to the example
listed in the Example section for an illustration of how to add the syntax to
this border node.
Examples
Use this border node to access and modify a value in a map without copying the value
out of the map. Use the border node on the left side of the structure to retrieve a value
in a map. Use the border node on the right side of the structure to modify or discard
the retrieved value.
To place this border node on the In Place Element structure, right-click the border of
an In Place Element structure and select the Add Map Get / Replace Value option from
the shortcut menu. Alternatively, you can use the In Place Map Access VI, which places
an In Place Element structure on the block diagram with this border node added.
Inputs/Outputs
• map —
map specifies the map in which you want to look for a key. This input accepts a map of any data
type. The default data type is a map of 32-bit signed integers.
• key —
key specifies the key to look for in the map. The key must be of the same data type as the
374 ni.com
Functions
• default value —
default value specifies the value to return in value if the specified key does not exist in the map.
This input must be of the same data type as the existing values in the map.
key not found? returns TRUE if map does not include an entry with the specified key. Otherwise,
key not found? returns FALSE .
This output exists on both the left and right border nodes. The two key not found? outputs
return the same value.
• value —
value returns the value of the entry with the associated key if key not found? is FALSE. If key not
found? is TRUE, this output returns the value in default value.
• action —
action specifies the operation to perform on the map based on the TRUE or FALSE value of key
not found?. This input assumes the value 0 if unwired.
Delete Entry—If key not found? is FALSE, this node deletes the entry with the specified key
2
from the map. If key not found? is TRUE, this node does nothing.
Modify Entry only if found (default)—If key not found? is FALSE, this node replaces the existing
0
associated value with the new value. If key not found? is TRUE, this node does nothing.
Add or Modify Entry—If key not found? is FALSE, this node replaces the existing associated
1 value with the new value. If key not found? is TRUE, this node adds the new key and the
associated value to the map.
• value —
value specifies the new value of the entry with the associated key.
• map —
• key —
key returns the same value as the key input on the left side of the border node.
Examples
Consists of one or more subdiagrams, or frames, that execute sequentially. Use the
Flat Sequence structure to ensure that a subdiagram executes before or after another
subdiagram. Data flow for the Flat Sequence structure differs from data flow for other
structures. Frames in a Flat Sequence structure execute from left to right and when all
data values wired to a frame are available. The data leaves each frame as the frame
finishes executing. This means the input of one frame can depend on the output of
another frame.
Unlike in the Stacked Sequence structure, you do not need to use sequence locals to
pass data from frame to frame in the Flat Sequence structure. Since the Flat Sequence
structure displays each frame on the block diagram, you can wire from frame to frame
without using sequence locals and without hiding code.
When you add or delete frames in a Flat Sequence structure, the structure resizes
automatically.
You cannot drag tunnels across the frames of a Flat Sequence structure.
To avoid overusing Flat Sequence structures, attempt to control the data flow of your
VI by establishing data dependency or using flow-through parameters.
376 ni.com
Functions
structure, right-click the Flat Sequence structure and select Replace with Timed
Sequence from the shortcut menu.
To create a Stacked Sequence structure, place a Flat Sequence structure on the block
diagram, right-click the Flat Sequence structure, and select Replace with Stacked
Sequence.
To scroll through the available subdiagrams, click the decrement and increment
arrows in the selector label. You can add, duplicate, rearrange, or delete the
subdiagrams. You can use a sequence local terminal to pass data from one frame to
any subsequent frame.
Use the Stacked Sequence structure if you want to conserve space on the block
diagram. Use the Flat Sequence structure to avoid using sequence locals and to better
document the block diagram. To convert the Stacked Sequence structure to a Flat
Sequence structure, right-click the Stacked Sequence structure and select
Replace»Replace with Flat Sequence from the shortcut menu.
To convert the Stacked Sequence structure to a Case structure, right-click the Stacked
Sequence structure and select Replace»Replace with Case Structure from the
shortcut menu.
The Stacked Sequence structure does not start to execute until all data wired to the
structure arrive. The data wired from each frame leave only when all the frames
complete execution.
To avoid overusing Stacked Sequence structures, attempt to control the data flow of
the VI by establishing data dependency or using flow-through parameters.
Formula Node
Refer to Creating Formula Nodes and Formula Node Syntax for more information
about the Formula Node and the Formula Node syntax. Also, keep in mind the allowed
operators in the Formula Node.
• Formula Nodes accept only the period (.) as a decimal separator. The nodes do
not recognize localized decimal separators.
• Formula Nodes accept only pi as a constant. The constant is case-sensitive.
• You cannot add Formula Nodes to a VI on which you enable inlining.
Has one or more subdiagrams, or cases, of which only the Enabled subdiagram
executes. Use the Diagram Disable structure to disable a section of the block diagram.
Place a Diagram Disable structure around the code you want to disable. In the Enabled
378 ni.com
Functions
subdiagram, include any code that you want to enable in place of the code in the
Disabled subdiagram.
After you create a Diagram Disable structure, you can add, duplicate, rearrange, or
delete the subdiagrams. To scroll through the available subdiagrams, click the
decrement and increment arrows in the selector label. You also can remove the
structure without deleting objects in the structure.
The Diagram Disable structure allows you to disable a section of a block diagram. To
disable specific sections of code on the block diagram based on some user-defined
condition, use the Conditional Disable structure. To disable specific sections of code
on the block diagram based on compilation results, use the Type Specialization
structure.
Examples
• labview\examples\Structures\Disable Structures\Diagram
Disable Structure.vi
Has one or more subdiagrams, exactly one of which LabVIEW uses for the duration of
execution, depending on the configuration of the conditions of the subdiagram. Use
this structure when you want to disable specific sections of code on the block diagram
based on some user-defined condition. Right-click the structure border to add or
delete a subdiagram. When you add a subdiagram or right-click the structure border
and select Edit Condition For This Subdiagram from the shortcut menu, you can
After you create a Conditional Disable structure, you can add, duplicate, rearrange, or
delete the subdiagrams. To scroll through the available subdiagrams, click the
decrement and increment arrows in the selector label. You also can remove the
structure without deleting objects in the structure. If multiple subdiagrams have
conditions that are satisfied, only the first subdiagram will be enabled. If necessary,
you can reorder the subdiagrams so that the desired subdiagram executes.
The Conditional Disable structure allows you to disable specific sections of code on
the block diagram based on some user-defined condition. To disable specific sections
of code on the block diagram based on compilation results, use the Type
Specialization structure. To disable a section of a block diagram, use the Diagram
Disable structure.
Examples
• labview\examples\Structures\Disable Structures\
Conditional Disable Structure.vi
Has one or more subdiagrams, exactly one of which LabVIEW compiles and executes,
depending on the order and the compilation result of the subdiagram. LabVIEW
380 ni.com
Functions
declines subdiagrams in order if they have syntax errors. LabVIEW accepts the first
subdiagram that does not have syntax errors and ignores the remaining subdiagrams.
If all subdiagrams have syntax errors, this structure accepts the last subdiagram.
Syntax errors are errors within the structure, such as broken wires, not errors caused
by subVIs or other dependencies. Use this structure to customize sections of code in a
malleable VI (.vim) for specific data types. You also can use this structure in
conjunction with the Assert Type VIs and functions to force a malleable VI to accept
only a subset of the acceptable data types or to decline specific data types.
After you create a Type Specialization structure, you can add, duplicate, rearrange, or
delete the subdiagrams. To scroll through the available subdiagrams, click the
decrement and increment arrows in the selector label. You also can remove the
structure without deleting objects in the structure.
The Type Specialization structure allows you to disable specific sections of code on the
block diagram based on compilation results. To disable specific sections of code on
the block diagram based on some user-defined condition, use the Conditional Disable
structure. To disable a section of a block diagram, use the Diagram Disable structure.
Examples
Shared Variable
Represents a shared variable on the block diagram. To bind a Shared Variable node to
a shared variable from the active project, add a Shared Variable node to the block
diagram and double-click or right-click the node and select Select Variable>>Browse
from the shortcut menu to display the Browse for Variable dialog box. You also can
drag a shared variable from the Project Explorer window onto the block diagram of a VI
in the same project to create a Shared Variable node.
Note The behavior of the Shared Variable node differs when it is bound to a
physical I/O channel. Refer to the Using I/O Variables topic for information
about I/O variables.
Inputs/Outputs
• ?—
Variable specifies the value to write to the Shared Variable node. You must wire a value to this
input when the Shared Variable node is configured to write data, or the VI will be broken. This
input is available only when the Shared Variable node is configured to write data.
• ms timeout (0) —
ms timeout specifies a timeout period in milliseconds for a Shared Variable node configured to
read data. The shared variable waits the specified amount of time for updated data, and the
timed out? indicator returns whether the shared variable received updated data in the specified
time period or timed out. Updated data can represent a new value or an existing value that
simply confirms a valid connection with the shared variable in the active project. To add a ms
timeout input to the Shared Variable node, right-click the Shared Variable node and select Show
Timeout from the shortcut menu. You only can enable a timeout period for Shared Variable
nodes configured to read data. You cannot enable a timeout period for nodes that access I/O
variables locally.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
382 ni.com
Functions
• ?—
Variable specifies the current value of the shared variable that the Shared Variable node
represents. This output is available only when the Shared Variable node is configured to read
data. If the Shared Variable node times out, Variable returns the value that the node last read. If
the node times out before reading any data or if the type of data is incompatible, data returns a
value of 0, empty, or an equivalent value.
• timed out? —
timed out? displays whether a Shared Variable node read new data within the specified timeout
period or timed out. To add a timed out? output to the Shared Variable node, right-click the
Shared Variable node and select Show Timeout from the shortcut menu. You only can enable a
timeout period for Shared Variable nodes configured to read data. You cannot enable a timeout
period for nodes that access I/O variables locally.
If the timeout expires, the Shared Variable node returns the last value written to the variable and
does not return an error.
• timestamp —
timestamp displays the timestamp data for the shared variable. To add a timestamp output to
the Shared Variable node for a single-process shared variable or an I/O variable, you must first
place a checkmark in the Enable timestamp checkbox on the Variable page of the Shared
Variable Properties dialog box, and then right-click the Shared Variable node and select Show
Timestamp from the shortcut menu. You can use this output only with shared variable nodes
that are configured to read data.
• error out —
error out contains error information. This output provides standard error out functionality.
When you drag a shared variable from the Project Explorer window to the block
diagram or place a Shared Variable node on the block diagram, LabVIEW configures
the Shared Variable node to read data. To configure the Shared Variable node to write
data, right-click the Shared Variable node and select Change to Write from the
shortcut menu.
Note You can create, configure, and host shared variables only on Windows,
RT targets, and certain PDA targets. You can use the DataSocket VI and
functions to read or write shared variables from other platforms.
To specify how a Shared Variable node connects to a shared variable, you can set the
node to absolute or target-relative. An absolute Shared Variable node always connects
to the shared variable on the target on which you created the shared variable. A target-
relative Shared Variable node always connects to the shared variable on the target on
which you run the VI that contains the Shared Variable node. To change an absolute
Shared Variable node to target-relative, right-click the Shared Variable node and select
Reference Mode»Target Relative from the shortcut menu. To change a target-relative
Shared Variable node to absolute, right-click the Shared Variable node and select
Reference Mode»Absolute from the shortcut menu.
Note
(Windows) This behavior is specific to Windows and only occurs when you
open the VI in a project. If you open the VI in the main application instance,
you do not receive notification of missing shared variables.
You must add the IP address to the .aliases file. If the VI fails to find the alias, the
Shared Variable node uses the last known IP address. If the shared variable is no
longer deployed at the last known IP address, the Shared Variable node will return an
error.
384 ni.com
Functions
If you publish a shared variable with less than 8 kilobytes of data, it can take up to 10
milliseconds for LabVIEW to send that data over the network. The Flush Shared
Variable Data VI allows you to flush the buffer immediately and eliminate this delay.
Note You can right-click a Shared Variable node and select Replace with
Programmatic Access from the shortcut menu to switch to programmatic
access. By using programmatic shared variable access, you can create clean,
scalable block diagrams.
Local Variable
Use local variables to read or write to one of the controls or indicators on the front
panel of a VI.
When you create a local variable, a local variable icon for the object appears on the
block diagram. Writing to a local variable is similar to passing data to any other
terminal. However, you can write to a local variable even if it is a control or read from a
local variable even if it is an indicator. In effect, with a local variable, you can access a
front panel object as both an input and an output.
Inputs/Outputs
• —
Global Variable
Use global variables to access and pass data among several VIs.
When you create a global variable, LabVIEW automatically creates a special global VI,
which has a front panel but no block diagram.
Inputs/Outputs
• —
Decorations
Use the decorations located on the Decorations palette to group or separate objects
on a block diagram with boxes, lines, or arrows. These objects are for decoration only
and do not modify data.
Feedback Node
A Feedback Node is analogous to a z-1 block in feedback control theory and digital
signal processing. You can change the appearance of the Feedback Node to look like
that of a z-1 block by right-clicking the Feedback Node and selecting Z-Transform View
from the shortcut menu. Changing the appearance to z-transform view, shown as
follows, changes only the cosmetic appearance of the Feedback Node.
The Feedback Node uses the value you wire to the initializer terminal as the initial
value for the first block diagram execution or loop iteration. If you do not wire a value
to the initializer terminal, the Feedback Node uses the default value for the data type.
The Feedback Node then stores the previous execution or iteration result.
You can enable or disable the feedback loop using the enable terminal. If the enable
terminal is set to TRUE, the Feedback Node runs as you configure it to run in the
Properties dialog box or from the shortcut menu of the node. If the enable terminal is
set to FALSE, the Feedback Node ignores the input value and returns the value from
386 ni.com
Functions
the last execution or iteration when the enable terminal was TRUE. The Feedback
Node continues to return this value until the execution or iteration after the enable
terminal changes to TRUE.
By default, the Feedback Node stores data from only the previous execution or
iteration. However, you can configure a Feedback Node to store n samples of data by
delaying the output of the node for multiple executions or iterations. If you increase
Delay to more than one execution or iteration, the Feedback Node outputs only the
initializer value until the delay you specify is complete. The Feedback Node then
begins to output the stored values in subsequent order. The number on the node
represents the number of delays you specify.
Note When you set Delay to two or more executions or iterations, you can
wire an array to the initializer terminal to initialize each delay element to an
arbitrary value.
This node automatically appears when you wire the output of a subVI, function, or
group of subVIs or functions to the input of that same VI, function, or group. In loops,
you can right-click the Feedback Node and select Replace with Shift Register from the
shortcut menu to replace the Feedback Node with shift registers. You also can replace
shift registers with a Feedback Node.
Inputs/Outputs
• —
• —
• —
Examples
Array
Use the Array functions to create and manipulate arrays.
Palette
Description
Object
Array Size
Returns the number of elements in each dimension of array.
Function
Index
Returns the element or subarray of n-dimension array at index.
Array
Replace
Array Replaces an element or subarray in an array at the point you specify in index.
Subset
Insert Into
Inserts an element or subarray into n-dim array at the point you specify in index.
Array
Deletes an element or subarray from n-dim array of length elements starting at index.
Delete
Returns the edited array in array w/ subset deleted and the deleted element or
From Array
subarray in deleted portion.
Initialize Creates an n-dimensional array in which every element is initialized to the value of
Array element.
Build Array Concatenates multiple arrays or appends elements to an n-dimensional array.
Array
Returns a portion of array starting at index and containing length elements.
Subset
Array Max
Returns the maximum and minimum values found in array, along with the indexes for
& Min
each value.
Function
Reshape
Changes the dimensions of an array according to the values of dimension size 0..m-1.
Array
Sort 1D Returns a sorted version of array with the elements arranged in ascending order. If
388 ni.com
Functions
Palette
Description
Object
array is an array of clusters, the function sorts the elements by comparing the first
Array elements. If the first elements match, the function compares the second and
Function subsequent elements. The connector pane displays the default data types for this
polymorphic function.
Sort 2D Rearranges the rows or columns of a 2D array by sorting the elements in the specified
Array column or row in ascending order.
Shuffle 1D
Rearranges the elements of a 1D array in a pseudorandom order.
Array
Shuffle 2D
Rearranges the elements of a 2D array in a pseudorandom order.
Array
Reverse 1D
Array Reverses the order of the elements in array, where array is of any type.
Function
Search 1D Searches for an element in a 1D array starting at start index. Because the search is
Array linear, you need not sort the array before calling this function. LabVIEW stops
Function searching as soon as the element is found.
Split 1D
Divides array at index and returns the two portions with the element of index at the
Array
beginning of second subarray.
Function
Rotate 1D
Array Rotates the elements of array the number of places and in the direction indicated by n.
Function
Increment
Adds 1 to the specified elements of a 1D array. If the array is an array of timestamps,
Array
this VI increments the element by one second.
Element
Decrement
Subtracts 1 from the specified element of a 1D array. If the array is an array of
Array
timestamps, this VI decrements the element by one second.
Element
Interpolate Linearly interpolates a decimal y value from an array of numbers or points using a
1D Array fractional index or x value.
Palette
Description
Object
Function
Interpolates points in a 1D array that represents a 2D non-descending graph. This
Threshold function compares threshold y to the values in array of numbers or points starting at
1D Array start index until it finds a pair of consecutive elements such that threshold y is greater
Function than or equal to the value of the first element and less than or equal to the value of the
second element.
Interleave
Interleaves corresponding elements from the input arrays into a single output array.
1D Arrays
Divides the elements of array into the output arrays, placing elements into the outputs
Decimate
successively. This function drops any elements that cause the output arrays to have
1D Array
different lengths.
Transpose
Rearranges the elements of 2D array such that 2D array[i,j] becomes transposed
2D Array
array[j,i].
Function
Array
Use this constant to supply a constant array value to the block diagram.
Constant
Array To Converts a 1D array to a cluster of elements of the same type as the array elements.
Cluster Double-click the function to open the Cluster Size dialog box and set the number of
Function elements in the cluster.
Cluster To
Converts a cluster of elements of the same data type to a 1D array of elements of the
Array
same data type.
Function
Converts an array to a matrix of elements of the same type as the array elements. Wire
Array To
data to the Real 2D Array input to determine the polymorphic instance to use or
Matrix
manually select the instance.
Converts a matrix of elements to an array of elements of the same data type. Wire data
Matrix To
to the Real Matrix input to determine the polymorphic instance to use or manually
Array
select the instance.
Remove
Removes duplicate elements from a 1D array. This VI preserves the original order of the
Duplicates
elements.
From 1D
390 ni.com
Functions
Palette
Description
Object
Array
Unsorted Use the Unsorted Array functions to manipulate arrays without sorting first.
Sorted Use the Sorted Array functions to manipulate sorted arrays while maintaining the
Array sorted order.
Use the Matrix functions to manipulate the elements, diagonals, and submatrices of a
Matrix matrix or 2D numeric array. Many of these functions complement existing array
operations but offer functionality for math algorithms based on matrices.
Examples
• labview\examples\Arrays
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• array —
• size(s) —
If array is multidimensional, the returned value is a 1D array in which each element is a 32-bit
integer that represents the number of elements in the corresponding dimension of array. The
order of elements in the return array corresponds to row-major order. Thus, vol is the first index,
followed by page, row, and column. These names are index identifiers and have no other
meaning.
Index Array
When you wire an array to this function, the function resizes automatically to display
index inputs for each dimension in the array you wire to n-dimension array. You also
can add additional element or subarray terminals by resizing the function. The
connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• array —
If n-dimension array is an empty array, element or subarray returns the default value of the
defined data type for the array.
• index —
index 0..n-1 specifies a number that refers to a location within the input array. LabVIEW
automatically provides an index input for each dimension of the array.
• element —
element or subarray has the same type as the elements of n-dimension array.
392 ni.com
Functions
You can disable indexing along a dimension by leaving the corresponding index input
unwired, unless you are indexing a 1D array. By default, the first dimension has
indexing enabled, with the others disabled. If disabled, the input terminal is an
outlined black rectangle. If enabled, it is filled. You can wire a constant or control to
the index inputs that you want enabled.
For example, if you want to index a row in a 2D array, the first index input is enabled
and the second index input is disabled. If you want to index that same 2D array also by
column, you can resize the function to show another set of input terminals. This next
set of inputs has its own corresponding subarray output. By default, if you do not wire
any index input terminals, the first subarray indexes row 0, the second subarray
indexes row 1, and so on.
If the index is less than zero or greater than the number of dimensions in array, this
function returns the default value of the defined data type for the array.
Array functions in LabVIEW access array data in row-major order. In a 2D array, row is
the first, major index. Column is the last, minor index. In bigger multidimensional
arrays, column remains the last index, and this function adds the more major indexes
to the front. Thus, vol is the first index, followed by page, row, and column. These
names are index identifiers and have no other meaning.
Unwired index inputs allow you to retrieve a subarray of the array rather than a single
element. For example, to retrieve column 1 of a 2D array, specify 1 in the column index
and leave the row index unwired.
If you leave the index input unwired for a 1D array, the Index Array function returns the
first element of the array.
If you expand the node to show more than one element or subarray output, LabVIEW
provides a set of index inputs for each output. The values you wire to a set of index
inputs determine the value of the corresponding output. However, if you do not wire
values to a set of index inputs, the corresponding element or subarray output returns
the element or subarray that follows the previous element or subarray output in the
original array. Refer to the Examples section for an illustration of this relationship.
The following image and table illustrate this function's behavior for a variety of input
values:
394 ni.com
Functions
When you wire an array to this function, the function resizes automatically to display
index inputs for each dimension in the array you wired. The connector pane displays
the default data types for this polymorphic function.
Inputs/Outputs
• array —
n-dimension array is the array in which you want to replace an element(s), row(s), column(s), or
page(s). This input can be an n-dimension array of any type.
• index —
index 0..n-1 specifies the element, row, column, or page you want to replace in the array. If you
do not wire this input, the dimensions of the new element/subarray input determines the
number of elements of n-dimension array, starting with element 0, this function replaces. If you
specify an index without wiring the following indexes, this function continues from the last index
you specify.
For example, if you do not wire this input and n-dimension array consists of three elements, and
new element/subarray consists of two elements, this function replaces only the first two
elements (0 and 1) of n-dimension array. If you specify 1 for the first index without wiring other
indexes and n-dimension array consists of three elements, and new element/subarray consists
of two elements, this function replaces only the second and the third element (1 and 2) of n-
dimension array.
• new element/subarray —
new element/subarray is the array or element that replaces an element, row, column, or page in
the array specified in n-dimension array.
Note The base data type of the new element or subarray must be the same type as
• output array —
output array is the array this function returns with the replaced element(s), row(s), column(s), or
page(s).
Resize this function to replace multiple elements or array subsets at one time. Replace
Array Subset does not affect the original input array. This function crops any subarray
that is too large to fit as a column, row, or page in the input array. If any index is
negative or larger than the corresponding dimension in n-dimension array the
function has no effect.
Examples
Inserts an element or subarray into n-dim array at the point you specify in index.
When you wire an array to this function, the function resizes automatically to display
index inputs for each dimension in the array. If you do not wire any index inputs, the
function appends the new element or subarray to the end of the n-dim array. If the
index input is larger than the array size, the function does not insert anything into the
input array.
Inputs/Outputs
• array —
396 ni.com
Functions
n-dim array is the array in which you want to insert an element, row, column, page, and so on.
This input can be an n-dimension array of any type.
• index —
index 0..n-1 specifies the point in the array at which you want to insert the element, row,
column, page, and so on. You can wire only one index input.
For example, to insert a 1D array as the fourth row of a 2D array, wire 3 to the first index input,
and the second index input becomes disabled. To insert the array as the fourth column of the 2D
array, wire 3 to the second index input, and the first index input becomes disabled.
• new element/subarray —
n or n-1 dim array is the element, row, column, or page you want to insert into the array
specified in n-dim array.
• output array —
output array is the array this function returns with the inserted element(s), row(s), column(s), or
page(s).
Note The base data type of the new element or array must be the same type
as the input array. For example, if the input array contains Boolean control
references, then the new element must be a Boolean control reference. Use
the To More Generic Class function when you create the input array if you
want to insert more generic elements into the array.
This function resizes the array along only one dimension. Therefore, you can wire only
one index input. The index you wire determines the dimension along which you can
insert. For example, to insert row(s), wire the row index, or to insert column(s), wire
the column index.
The array you wire to n or n-1 dim array must be the same dimension or a dimension
less than the one you wired to n-dim array. For example, you cannot insert a single
element into a 2D array, and you cannot insert a single row (a 1D array) into a 3D array.
You can, however, insert a 2D array that has a single row into a 3D array. LabVIEW pads
the resulting array as necessary.
Deletes an element or subarray from n-dim array of length elements starting at index.
Returns the edited array in array w/ subset deleted and the deleted element or
subarray in deleted portion.
When you wire an array to this function, the function resizes automatically to display
index inputs for each dimension in the array.
Inputs/Outputs
• array —
n-dim array is the array from which you want to delete element(s), row(s), column(s), page(s),
and so on. This input can be an n-dimension array of any type.
• length —
length determines how many elements, rows, columns, or pages to delete. The default length is
one element.
• index —
index 0..n-1 specifies what you want to delete from the array, such as an element, row, column,
or page.
Array functions in LabVIEW access array data in row-major order. In a 2D array, row is the first,
major index. Column is the last, minor index. In bigger multidimensional arrays, column remains
the last index and the more major indexes are added to the front. Thus, vol is the first index,
followed by page, row, and column. These names are index identifiers and have no other
meaning.
The default is the index of the last element in the array. You can wire only one index input.
array w/ subset deleted is the array returned with the deleted element(s), row(s), column(s), or
398 ni.com
Functions
page(s).
• deleted portion —
If you wire a value to length, deleted portion is an array of the same number of dimensions as n-
dim array containing all the elements deleted from n-dim array. The outer dimension size of
deleted portion is the value of length, and the inner dimension size(s) match that of n-dim
array. For example, if you wire a 3D array of dimensions 10x4x6 to n-dim array and a value of 2
to length, and do not wire values to the index inputs, deleted portion is a 3D array of
dimensions 2x4x6 containing the last 2 pages from n-dim array.
If you wire a value to length and a negative value to the index, deleted portion is an array with
an outer dimension size of the value of length minus the absolute value of the index. If the index
is a negative value and the value of length is smaller than the absolute value of the index,
deleted portion is empty.
If you do not wire a value to length, deleted portion is an array of one less dimension than n-
dim array containing the portion of the array deleted from n-dim array. For example, if you
wired a 2D array of dimensions 8x5 to n-dim array and do not wire a value to length, and wire 3
to index 0 (row), deleted portion is a 1D array containing all elements from row 3 of n-dim array.
This function reduces the array in one dimension only, therefore, you can wire only
one index input. For example, to delete a row in a 2D array, wire only the row index. To
delete a column, wire only the column index. You can delete multiple consecutive
subarrays at once by wiring length.
Initialize Array
Use the Positioning tool to resize the function and increase the number of dimensions
(element, row, column, page, and so on) of the output array. The connector pane
displays the default data types for this polymorphic function.
Inputs/Outputs
• element —
element is the value used to initialize all elements of initialized array. element can be any scalar
type.
• dimension size —
dimension size 0..n-1 must be a number. The function creates an empty array if any dimension
size is less than or equal to 0. You must have n dimension size terminals for n-dimensions.
• initialized array —
initialized array is an array of the same type as the type you wire to element.
Build Array
You also can use the Replace Array Subset function to modify an existing array.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• element —
All inputs must be either elements and 1D arrays or n-dimensional and (n-1)-dimensional arrays.
400 ni.com
Functions
• appended array —
When you place the function on the block diagram, it has only one input available. Add
inputs to the node by right-clicking an input and selecting Add Input from the shortcut
menu or by resizing the node.
If you wire control references of different classes to this function, this function
typecasts the references to a more generic class that is the lowest common class in the
inheritance hierarchy. This function then returns appended array with that class.
The Build Array function operates in one of two modes depending on whether you
select Concatenate Inputs from the shortcut menu. If you select Concatenate Inputs,
the function appends all inputs in order, forming an output array of the same
dimensionality as the array input wired.
If you do not select Concatenate Inputs, the function builds an output array of one
dimension higher than the dimension of the inputs. For example, if you wire 1D array
input to a Build Array function, the output is a 2D array, even if the 1D array is empty.
The inputs must all be the same dimensionality. The function appends each input in
order, forming a subarray, element, row, or page, of the output array. Inputs are
padded, as necessary, to match the size of the longest input.
For example, if you wire two 1D arrays, {1, 2} and {3, 4, 5} to Build Array, and select
Concatenate Inputs from the shortcut menu, the output is the 1D array {1, 2, 3, 4, 5}. If
you wire the same two arrays to Build Array, and do not select Concatenate Inputs
from the shortcut menu, the output is a 2D array containing {{1, 2, 0}, {3, 4, 5}}, where
the first input is padded to match the length of the second input.
If the inputs are all arrays of the same dimensionality, right-click the function to
remove the checkmark next to or select the Concatenate Inputs shortcut menu item. If
the inputs do not have the same dimensionality, Concatenate Inputs is automatically
selected and cannot be deselected. If all the inputs are scalar elements, Concatenate
Inputs is automatically deselected and cannot be selected, and the output is a 1D
When you select Concatenate Inputs from the shortcut menu, the glyphs in the Build
Array icon change to distinguish between the two input types. Inputs with the same
dimensionality as the output show an array glyph, while inputs with a dimensionality
that is one less than the output show an element glyph.
Examples
• labview\examples\Arrays\Build Array.vi
Array Subset
Inputs/Outputs
• array —
• index —
index specifies the first element, row, column, or page to include in the portion of array you
want to return.
If index is less than 0, the function treats it as 0. If index is greater than or equal to the array size,
the function returns an empty array.
• length —
length specifies how many elements, rows, columns, or pages to include in the portion of array
402 ni.com
Functions
you want to return. If index plus length is larger than the size of the array, the function returns
only as much data as is available.
The default is the length from index to the end of array. If length is less than 0, the function
treats it as 0.
• subarray —
When you wire an array to this function, the function resizes automatically to display
index and length inputs for each dimension in the array. If you wire a 1D array to the
function, the function displays the index inputs for an element. If you wire a 2D array
to the function, the function displays the index inputs for a row and column,
respectively. If you wire a 3D through nD array to the function, the function displays
the index inputs for a page.
The connector pane displays the default data types for this polymorphic function.
You can use the Index Array function to modify the shape of the subarray. For example,
if the input to an Index Array function is a 2D array and you wire only the row input,
you extract a complete 1D row of the array.
Returns the maximum and minimum values found in array, along with the indexes for
each value.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• array —
• max value —
max value is of the same data type and structure as the elements in array.
• max index(es) —
If array is multidimensional, max index(es) is an array whose elements are the indexes for the
first maximum value in array.
• min value —
min value is of the same data type and structure as the elements in array.
• min index(es) —
If array is multidimensional, min index(es) is an array whose elements are the indexes for the
first minimum value in array.
The function compares each data type according to the rules for Array Comparison.
If a numeric array has one dimension, the max index and min index outputs are scalar
integers. If a numeric array has more than one dimension, these outputs are 1D arrays
that contain the indexes of the maximum and minimum values.
If the input array is empty, max index and min index are –1.
Reshape Array
Changes the dimensions of an array according to the values of dimension size 0..m-1.
This function reads the array data in memory from left to right, row by row and
populates the reshaped array the same way. For example, if you pass a 2D array of 8
elements, 2 columns of {0,1,2, 3}, to this function with two dimensions defined with
sizes of 2 and 4, respectively, the function returns an array containing {{0,0,1,1}, {2,2, 3,
404 ni.com
Functions
3}}. The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• array —
• dimension size —
dimension size 0..m-1 specifies the dimensions of m-dim array and must be a numeric.
The function creates an empty array if any dimension size is 0. You must have m dimension size
terminals for m-dimensions.
• output array —
m-dim array If the product of the dimension sizes is greater than the number of elements in the
input array, the function pads the new array with the default of the data type of n-dim array.
If the product of the dimension sizes is less than the number of elements in the input array, the
function truncates the array.
This function adjusts the array data in memory according to the reshaped array
dimensions. This function pads or truncates the data if necessary. For example, if you
pass a 1D array with 9 elements {0, 1, 2, 3, 4, 5, 6, 7, 8} to this function with two
dimensions defined with sizes of 2 and 3, respectively, the function returns a 2D array
containing {{0, 1, 2}, {3, 4, 5}}. The function truncates the last three input elements
because the output array has room for only six values.
Resize this function to increase the number of dimension size parameters. m-dim
array has one dimension for each dimension size input. For example, you can use this
function to change a 1D array into a 2D array or vice versa. You also can use it to
increase and decrease the size of a 1D array.
Returns a sorted version of array with the elements arranged in ascending order. If
array is an array of clusters, the function sorts the elements by comparing the first
elements. If the first elements match, the function compares the second and
subsequent elements. The connector pane displays the default data types for this
polymorphic function.
Note To customize the sort order use the Sort 1D Array Malleable VI.
Inputs/Outputs
• array —
• sorted array —
Sort 2D Array
Rearranges the rows or columns of a 2D array by sorting the elements in the specified
column or row in ascending order.
This VI rearranges the elements in the specified column or row in ascending order by
comparing the elements using comparison rules for different data types.
406 ni.com
Functions
Inputs/Outputs
• 2D array —
column (default)—Rearranges the rows by sorting the elements in the indexed column in
0
ascending order.
1 row—Rearranges the columns by sorting the elements in the indexed row in ascending order.
• index —
index specifies the index of the column or row with elements that you want to rearrange.
This input accepts a signed 32-bit integer or an array of signed 32-bit integers.
• sorted 2D array —
index out of range? returns TRUE if the indexed column or row, or any of the indexed columns or
rows does not exist in the 2D array. Otherwise, this output returns FALSE.
The example below demonstrates how this VI sorts the following 2D array if dimension
to index is column.
Note If multiple rows have the same element for the indexed column, this VI
keeps the original order of rows.
Note For string elements, this VI rearranges the elements based on case-
sensitivity. In this example, the indexed column contains the following
elements:
developer
,
Manager
,
Technician
,
Engineer
. This VI rearranges this column to
Engineer
,
Manager
,
408 ni.com
Functions
Technician
,
developer
.
Examples
Shuffle 1D Array
This VI uses a uniform shuffle so that every element has an equal chance of ending up
in any position of the array.
Inputs/Outputs
• array —
array specifies the 1D array with elements that you want to shuffle. The array can be a 1D array
of any data type.
• shuffled array —
Examples
Shuffle 2D Array
This VI uses a uniform shuffle so that every element has an equal chance of ending up
in any position of the array.
Inputs/Outputs
• array —
array specifies the 2D array with elements that you want to shuffle. The array can be a 2D array
of any data type.
• shuffled array —
410 ni.com
Functions
Reverses the order of the elements in array, where array is of any type.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• array —
• reversed array —
reversed array. If array has n elements, array[0] becomes reversed array[n-1], array[1] becomes
reversed array[n-2], and so on.
Searches for an element in a 1D array starting at start index. Because the search is
linear, you need not sort the array before calling this function. LabVIEW stops
searching as soon as the element is found.
Inputs/Outputs
• 1D array —
• element —
element is the value to search for in the array. element must be the same data type as the
elements in 1D array.
start index is the index that LabVIEW begins the search from. The default is 0.
• index of element —
You cannot use this function to retrieve the index of a value that is not an element of
the array. For example, if you have an array of two elements (0.0 and 1.0), this function
does not find the index of the value 0.5, as that value is not an element of the array.
Use the Threshold 1D Array to find a fractional index.
This function only finds a string if the element you specify matches an array element
exactly. For example, if you have an array of two elements (upper limit and
lower limit), this function does not find the index of the value limit, because
limit does not match an array element exactly. To search a string for any occurrence
of a regular expression, use the Match Regular Expression function.
Divides array at index and returns the two portions with the element of index at the
beginning of second subarray.
Inputs/Outputs
• array —
412 ni.com
Functions
• index —
If index is equal to or greater than the size of array, second subarray is empty.
• first subarray —
• second subarray —
second subarray contains the remaining array elements not already contained in first subarray.
If the input array is empty, both output arrays are empty. This function does not
generate an error if you pass in an empty array.
Rotates the elements of array the number of places and in the direction indicated by n.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• n—
The function coerces n to a 32-bit integer if you wire another representation to it.
• array —
For example, if n is 1, the input array[0] becomes output array[1], input array[1] becomes output
array[2], and so on, and input array[m–1] becomes output array[0], where m is the number of
elements in the array. If n is –2, input array[0] becomes output array[m–2], input array[1]
becomes output array[m–1], and so on, and input array[m–1] becomes output array[m–3],
where m is the number of elements in the array.
Inputs/Outputs
• array in —
array in specifies the 1D array with the element that you want to increment.
This input accepts an array or an array of clusters of the following data types:
• Numbers
• Timestamps
• Analog Waveforms
• index —
index specifies the index of the element in the array that you want to increment.
This input accepts a signed 32-bit integer or an array of signed 32-bit integers.
• array out —
array out returns the 1D array with the specified element incremented.
Examples
414 ni.com
Functions
Inputs/Outputs
• array in —
array in specifies the 1D array with the element that you want to decrement.
This input accepts an array or an array of clusters of the following data types:
• Numbers
• Timestamps
• Analog Waveforms
• index —
index specifies the index of the element in the array that you want to decrement.
This input accepts a signed 32-bit integer or an array of signed 32-bit integers.
• array out —
array out returns the 1D array with the specified element decremented.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• array of numbers or points —
array of numbers or points can be an array of numbers or an array of points where each point is
a cluster of x and y coordinates. If this input is an array of points, the function uses the first
element in the cluster (x) to obtain a fractional index by linear interpolation. The function then
uses this fractional index to compute the output y value from the second cluster element (y).
• fractional index or x —
fractional index or x is the index or x-value at which the function should return a y-value.
If array of numbers or points contains an array of data point sets, the function returns the
linearly interpolated y value at the x-value corresponding to fractional index or x. For example,
if the array contains two points, (3,7) and (5,9), and fractional index or x is set to 3.5, the
function returns 7.5.
fractional index or x does not interpolate beyond the bounds of an array or data point set. For
example, if the parameter is set lower than the first element or x-value in an array, the function
returns the value of the first element or the y-value of the first data point. Similarly, if the
parameter is set too high, the function returns the value in the final element or the final y-value.
fractional index or x must be located directly on a point or between two points for the function
to work correctly.
• y value —
y value is the interpolated value of the element at the fractional index or the interpolated y-
value of the fractional data point, in array of numbers or points.
You can wire an array of numeric values or an array of data point sets to this function. If
you wire an array of numeric values, the function interprets fractional index or x as a
reference to the array elements. If you wire an array of data point sets, the function
interprets fractional index or x as a reference to the x-value elements within each data
point set.
416 ni.com
Functions
Note If you wire an array of data points to this function, the data points must
be sorted by increasing x-value.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• array of numbers or points —
array of numbers or points can be an array of numbers or an array of points where each point is
a cluster of x- and y-coordinates.
If this input is an array of points, this function uses the second elements in the clusters, or the y-
coordinates, to obtain a fractional index that it then uses to interpolate the corresponding x
value.
• threshold y —
threshold y is the threshold value for the function. If threshold y is less than or equal to the
array value at start index, the function returns start index for fractional index or x.
If threshold y is greater than every value in the array, the function returns the index of the last
value. If the array is empty, the function returns NaN.
• start index (0) —
start index must be a number. The default is 0, which means the function returns the result
calculated from the entire array, rather than a specified section of the array.
• fractional index or x —
fractional index or x is the interpolated result LabVIEW calculates for the array of numbers or
points 1D input array.
For example, suppose array of numbers or points is an array of four numbers [4, 5, 5, 6], start
index is 0, and threshold y is 5. The fractional index or x is 1, corresponding to the index of the
first value of 5 the function finds. Suppose the array elements are 2.3, 5.2, 7.8, 7.9, 10.0, the start
index is 0, and the threshold y is 6.5. The output is 1.5 because 6.5 is halfway between 5.2 (index
1) and 7.8 (index 2). If threshold y is 7 for the same set of numbers, the output is 1.69. If
threshold y is 14.2, start index is 5, and the values in the array starting at index 5 are 9.1, 10.3,
12.9, and 15.5, threshold y falls between elements 7 and 8 because 14.2 is midway between 12.9
and 15.5. The value for fractional index or x is 7.5, that is, halfway between 7 and 8.
If the array input consists of an array of points where each point is a cluster of x- and y-
coordinates, the output is the interpolated x value corresponding to the interpolated position of
threshold y among the y-coordinates, rather than the fractional index of the array. If the
interpolated position of threshold y is midway between the y values at indexes 4 and 5 of the
array with x values of –2.5 and 0 respectively, the output is not an index value of 4.5 as it would
be for a numeric array, but rather an x value of –1.25. In other words, this function returns the
interpolated x value associated with the given y value if you graphed the points.
This function works the same for arrays of numbers as it does for arrays of points. If you have an
array of numbers, this function assumes the x-coordinates are the same as the indexes of the
array itself. In other words, this function assumes the points are uniformly spaced.
This function calculates the fractional distance between the first value and threshold y
and returns the fractional index at which threshold y would be placed within array of
numbers or points using linear interpolation.
Note Use this function only with arrays sorted in non-descending order.
This function does not recognize the index of a negative slope crossing, and it might
return incorrect data if threshold y is less than the value at start index. Use the
Threshold Detector VI for more advanced analysis of arrays.
Interleave 1D Arrays
Interleaves corresponding elements from the input arrays into a single output array.
418 ni.com
Functions
Inputs/Outputs
• array —
array 0..n-1 must be 1D. If the input array is not the same size, the number of elements in
interleaved array equals the number of elements in the smallest input array multiplied by the
number of input arrays.
• array —
• interleaved array —
interleaved array[0] contains array 0[0], interleaved array[1] contains array 1[0], interleaved
array[n-1] contains array n-1[0], interleaved array[n] contains array 0[1], and so on, where n is
the number of input terminals.
The following table shows how elements from the input arrays affect interleaved array.
Decimate 1D Array
Divides the elements of array into the output arrays, placing elements into the outputs
successively. This function drops any elements that cause the output arrays to have
different lengths.
You also can add additional output terminals by resizing the function.
Inputs/Outputs
• array —
• decimated array —
The function stores array[0] at index 0 of the first output array, array[1] is stored at index 0 of the
second output array, array[n-1] at index 0 of the last output array, array[n] at index 1 of the first
output array, and so on, where n is the number of output terminals for this function.
For example, assume the array has 16 elements and that you wire four output arrays. The first
output array receives elements 0, 4, 8, and 12. The second output array receives elements 1, 5, 9,
and 13. The third output array receives elements 2, 6, 10, and 14. The last output array receives
elements 3, 7, 11, and 15. This is the expected behavior.
If you remove one element from the input array there will only be 15 elements. The last
decimated array will only have 3 elements (3, 7, and 11) since element 15 was deleted. Since the
function will only return arrays of the same size, the other 3 decimated arrays will drop their last
element so that all of the arrays now contain 3 elements.
• decimated array —
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• 2D array —
420 ni.com
Functions
• transposed array —
Array Constant
Use this constant to supply a constant array value to the block diagram.
Define the type of the array constant by selecting any scalar constant from the
Functions palette and placing it inside the array constant. All elements of the array are
of this type. Use the >Operating tool to enter values for each array element. You cannot
change the value of the array constant while the VI runs.
Converts a 1D array to a cluster of elements of the same type as the array elements.
Double-click the function to open the Cluster Size dialog box and set the number of
elements in the cluster.
The default is nine. The maximum cluster size for this function is 256.
Use this function when you want to display elements of the same type in a front panel
cluster indicator but want to manipulate the elements on the block diagram by their
index values.
Inputs/Outputs
• array —
• cluster —
The cluster order matches the order of the elements in the array.
• —
• —
• —
• —
• —
• —
• —
• —
• —
Examples
• labview\examples\Arrays\Array to Cluster.vi
Converts a cluster of elements of the same data type to a 1D array of elements of the
same data type.
422 ni.com
Functions
Inputs/Outputs
• cluster —
• —
• array —
The elements in array are of the same type as the elements in cluster.
The order of the elements in array is the same as the cluster order of the elements.
Examples
• labview\examples\Arrays\Array to Cluster.vi
Array To Matrix
Converts an array to a matrix of elements of the same type as the array elements. Wire
data to the Real 2D Array input to determine the polymorphic instance to use or
manually select the instance.
If the array elements are not real or complex double-precision floating-point numbers,
LabVIEW stores the elements of 1D arrays in the first column of the matrix.
Examples
• labview\examples\Mathematics\Linear Algebra\Matrix
Fundamentals.vi
• labview\examples\Mathematics\Linear Algebra\Matrix to a
Power.vi
Converts an array to a matrix of elements of the same type as the array elements. Wire
data to the Real 2D Array input to determine the polymorphic instance to use or
manually select the instance.
Inputs/Outputs
• Real 2D Array —
• Real Matrix —
The elements in Real Matrix are of the same type as the elements in Real 2D Array. The order of
the elements in Real Matrix is the same as the Real 2D Array order of the elements.
If the array elements are not real or complex double-precision floating-point numbers,
LabVIEW converts the array elements to the closest data type.
LabVIEW stores the elements of 1D arrays in the first column of the matrix.
424 ni.com
Functions
Examples
• labview\examples\Mathematics\Linear Algebra\Matrix
Fundamentals.vi
• labview\examples\Mathematics\Linear Algebra\Matrix to a
Power.vi
Array To Matrix - RA VI
Converts an array to a matrix of elements of the same type as the array elements. Wire
data to the Real 2D Array input to determine the polymorphic instance to use or
manually select the instance.
Inputs/Outputs
• Real 1D Array —
The elements in Real Matrix (Column Vector) are of the same type as the elements in Real 1D
Array. The order of the elements in Real Matrix (Column Vector) is the same as the Real 1D
Array order of the elements.
If the array elements are not real or complex double-precision floating-point numbers,
LabVIEW converts the array elements to the closest data type.
LabVIEW stores the elements of 1D arrays in the first column of the matrix.
Examples
• labview\examples\Mathematics\Linear Algebra\Matrix
Fundamentals.vi
• labview\examples\Mathematics\Linear Algebra\Matrix to a
Power.vi
Converts an array to a matrix of elements of the same type as the array elements. Wire
data to the Real 2D Array input to determine the polymorphic instance to use or
manually select the instance.
Inputs/Outputs
• Complex 2D Array —
• Complex Matrix —
The elements in Complex Matrix are of the same type as the elements in Complex 2D Array. The
order of the elements in Complex Matrix is the same as the Complex 2D Array order of the
elements.
If the array elements are not real or complex double-precision floating-point numbers,
LabVIEW converts the array elements to the closest data type.
LabVIEW stores the elements of 1D arrays in the first column of the matrix.
Examples
• labview\examples\Mathematics\Linear Algebra\Matrix
Fundamentals.vi
• labview\examples\Mathematics\Linear Algebra\Matrix to a
426 ni.com
Functions
Power.vi
Array To Matrix - CA VI
Converts an array to a matrix of elements of the same type as the array elements. Wire
data to the Real 2D Array input to determine the polymorphic instance to use or
manually select the instance.
Inputs/Outputs
• Complex 1D Array —
The elements in Complex Matrix (Column Vector) are of the same type as the elements in
Complex 1D Array. The order of the elements in Complex Matrix (Column Vector) is the same as
the Complex 1D Array order of the elements.
If the array elements are not real or complex double-precision floating-point numbers,
LabVIEW converts the array elements to the closest data type.
LabVIEW stores the elements of 1D arrays in the first column of the matrix.
Examples
• labview\examples\Mathematics\Linear Algebra\Matrix
Fundamentals.vi
• labview\examples\Mathematics\Linear Algebra\Matrix to a
Power.vi
Matrix To Array
Converts a matrix of elements to an array of elements of the same data type. Wire data
to the Real Matrix input to determine the polymorphic instance to use or manually
select the instance.
• Matrix To Array - RM VI
• Matrix To Array - CM VI
Examples
• labview\examples\Mathematics\Linear Algebra\Matrix
Fundamentals.vi
Matrix To Array - RM VI
Converts a matrix of elements to an array of elements of the same data type. Wire data
to the Real Matrix input to determine the polymorphic instance to use or manually
select the instance.
Inputs/Outputs
• Real Matrix —
• Real 2D Array —
The elements in Real 2D Array are of the same type as the elements in Real Matrix. The order of
the elements in Real 2D Array is the same as the Real Matrix order of the elements.
428 ni.com
Functions
Examples
• labview\examples\Mathematics\Linear Algebra\Matrix
Fundamentals.vi
Matrix To Array - CM VI
Converts a matrix of elements to an array of elements of the same data type. Wire data
to the Real Matrix input to determine the polymorphic instance to use or manually
select the instance.
Inputs/Outputs
• Complex Matrix —
• Complex 2D Array —
The elements in Complex 2D Array are of the same type as the elements in Complex Matrix. The
order of the elements in Complex 2D Array is the same as the Complex Matrix order of the
elements.
Examples
• labview\examples\Mathematics\Linear Algebra\Matrix
Fundamentals.vi
Removes duplicate elements from a 1D array. This VI preserves the original order of the
elements.
Inputs/Outputs
• array —
array specifies the input array. This input accepts a 1D array of any data type.
array with duplicates removed returns an array with the duplicate elements removed from
array.
Unsorted
Use the Unsorted Array functions to manipulate arrays without sorting first.
Palette
Description
Object
Search Searches for an element in an unsorted 1D array starting at start index. The search is
Unsorted linear and LabVIEW stops searching as soon as the element is found. The connector pane
1D Array displays the default data types for this polymorphic function.
Returns a sorted version of unsorted array with the elements arranged in ascending
order. If unsorted array is an array of clusters, the function sorts the elements by
Sort 1D
comparing the first elements. If the first elements match, the function compares the
Array
second and subsequent elements. The connector pane displays the default data types
for this polymorphic function.
430 ni.com
Functions
Searches for an element in an unsorted 1D array starting at start index. The search is
linear and LabVIEW stops searching as soon as the element is found. The connector
pane displays the default data types for this polymorphic function.
Inputs/Outputs
• unsorted 1D array —
• element —
element is the value to search for in the array. element must be the same data type as the
elements in 1D array.
start index is the index that LabVIEW begins the search from. The default is 0.
equals function is the comparison used to search the array. By default, this is the same
comparison the standard Equal? function uses.
If the array element is a class with an Equals method that includes two inputs of the same type
and a boolean output in the connector pane , the default changes to use that comparison.
To specify a different sort order, wire this terminal to one of the following objects:
• A class that defines a Equals method with the following connector pane configuration :
◦ A functor input in the top-left. A functor is a class that defines an operation on a data
type.
◦ Two inputs of the same data type as the array elements.
◦ A boolean output between two empty outputs.
The comparison function must be symmetric. If a<b is true, b<a is false. If a and b are the same
value, both a<b and b<a are false. If the function is not symmetric, the search results will be
unpredictable.
• index of element —
You cannot use this function to retrieve the index of a value that is not an element of
the array. For example, if you have an array of two elements (0.0 and 1.0), this function
does not find the index of the value 0.5, as that value is not an element of the array.
Use the Threshold 1D Array to find a fractional index or specify an alternate
comparison in the equals function input to find the first value within some epsilon.
This function only finds a string if the element you specify matches an array element
exactly. To search a string for any occurrence of a regular expression, use the Match
Regular Expression function or specify an alternate comparison in the equals function
input.
Sort 1D Array
Returns a sorted version of unsorted array with the elements arranged in ascending
order. If unsorted array is an array of clusters, the function sorts the elements by
comparing the first elements. If the first elements match, the function compares the
second and subsequent elements. The connector pane displays the default data types
for this polymorphic function.
432 ni.com
Functions
Inputs/Outputs
• unsorted array —
less function is the comparison used to search the array. By default, this is the same comparison
the standard Less? function uses.
If the array element is a class with a Less Than method that includes two inputs of the same type
and a boolean output in the connector pane , the default changes to use that comparison.
To specify a different sort order, wire this terminal to one of the following objects:
• A class that defines a Less Than method with the following connector pane configuration
:
◦ A functor input in the top-left. A functor is a class that defines an operation on a data
type.
◦ Two inputs of the same data type as the array elements.
◦ A boolean output.
The comparison function must be symmetric. If a<b is true, b<a is false. If a and b are the same
value, both a<b and b<a are false. If the function is not symmetric, the search results will be
unpredictable.
• sorted array —
Examples
Sorted Array
Use the Sorted Array functions to manipulate sorted arrays while maintaining the
sorted order.
Palette
Description
Object
Search
Searches for the first instance of element in sorted 1D array. If the array is not sorted, the
Sorted
results will be incorrect. The connector pane displays the default data types for this
1D
polymorphic function.
Array
Insert
Inserts element into sorted array in while maintaining sorted order. If the array is not
Into
sorted, the element may be inserted at the wrong location. The connector pane displays
Sorted
the default data types for this polymorphic function.
Array
Searches for the first instance of element in sorted 1D array. If the array is not sorted,
the results will be incorrect. The connector pane displays the default data types for this
polymorphic function.
Inputs/Outputs
• sorted 1D array —
• element —
434 ni.com
Functions
element is the value to insert into the array. element must be the same data type as the
elements in sorted 1D array.
less function is the comparison used to search the array. By default, this is the same comparison
the standard Less? function uses.
If the array element is a class with a Less Than method that includes two inputs of the same type
and a boolean output in the connector pane , the default changes to use that comparison.
To specify a different sort order, wire this terminal to one of the following objects:
• A class that defines a Less Than method with the following connector pane configuration
:
◦ A functor input in the top-left. A functor is a class that defines an operation on a data
type.
◦ Two inputs of the same data type as the array elements.
◦ A boolean output.
The comparison function must be symmetric. If a<b is true, b<a is false. If a and b are the same
value, both a<b and b<a are false. If the function is not symmetric, the search results will be
unpredictable.
• found? —
• nearest index —
nearest index is the index of the element if found? is TRUE. If found? is FALSE, nearest index is
the index where the element would have been in the sorted array.
If element is greater than all the elements in the array, nearest index is equal to the size of the
array. If element is less than all the elements in the array, nearest index is 0. If you search an
empty array, nearest index is 0.
Examples
Inserts element into sorted array in while maintaining sorted order. If the array is not
sorted, the element may be inserted at the wrong location. The connector pane
displays the default data types for this polymorphic function.
Inputs/Outputs
• sorted array in —
• element —
element is the value to insert into the array. element must be the same data type as the
elements in sorted array in.
less function is the comparison used to search the array. By default, this is the same comparison
the standard Less? function uses.
If the array element is a class with a Less Than method that includes two inputs of the same type
and a boolean output in the connector pane , the default changes to use that comparison.
To specify a different sort order, wire this terminal to one of the following objects:
• A class that defines a Less Than method with the following connector pane configuration
:
436 ni.com
Functions
◦ A functor input in the top-left. A functor is a class that defines an operation on a data
type.
◦ Two inputs of the same data type as the array elements.
◦ A boolean output.
The comparison function must be symmetric. If a<b is true, b<a is false. If a and b are the same
value, both a<b and b<a are false. If the function is not symmetric, the search results will be
unpredictable.
sorted array out is the sorted array with the new element.
Examples
Matrix
Use the Matrix functions to manipulate the elements, diagonals, and submatrices of a
matrix or 2D numeric array. Many of these functions complement existing array
operations but offer functionality for math algorithms based on matrices.
Returns the dimensions for the number of rows and columns of matrix.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• matrix —
• number of rows —
438 ni.com
Functions
• number of columns —
Build Matrix
You also can use the Set Matrix Elements and Set Submatrix functions to modify an
existing matrix.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• element —
matrix or element can be a numeric scalar, a real or complex matrix, or a 1D or 2D array of any
numeric type.
• appended array —
When you add the function to the block diagram, it has only one input available. Add
inputs to the node by right-clicking an input and selecting Add Input from the shortcut
menu or by resizing the node.
The Build Matrix function operates in one of two different modes: Append by Rows or
Append by Columns. When you add the function to the block diagram, the default
mode is Append by Columns.
If you right-click the function and select Build Matrix Mode»Append by Rows, the
function adds each new element or matrix to the last row starting in the first column. If
you right-click the function and select Build Matrix Mode»Append by Columns, the
function adds each new element or matrix to the last column starting in the first row.
If the inputs you wire to the Build Matrix function have different dimensions, LabVIEW
creates appended matrix by padding the smaller input with the scalar default value.
If element is an empty matrix or array, the function ignores the empty dimensions.
However, the dimensions and data type of element affect the dimensions and data
type of appended matrix.
If you wire inputs of different numeric types to the Build Matrix function, appended
matrix stores all inputs without losing precision.
Resizes matrix with new row and column dimensions based on the number of rows
and columns you specify.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• matrix —
• number of rows —
• number of columns —
440 ni.com
Functions
• resized matrix —
resized matrix is matrix with the number of rows and columns you specify in number of rows
and number of columns.
If you do not wire number of rows, the function uses the row dimension of matrix to
determine the number of rows in resized matrix. If you do not wire number of
columns, the function uses the column dimension of matrix to determine the number
of columns in resized matrix.
If you increase the row or column dimensions of matrix, the function returns 0 at each
exterior location.
This function only retains elements within the new row or column dimensions you
specify in number of rows and number of columns. If any elements in matrix have row
or column indexes outside the new row or column dimensions, respectively, this
function removes the elements from resized matrix.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• matrix —
• transposed matrix —
The conjugate transpose of matrix rearranges the elements so that the element at
index (i, j) in matrix becomes the conjugate of the element at (j, i) in transposed
matrix. For a real matrix, the transpose and conjugate transpose operations produce
the same result.
Add additional row and column inputs and matrix diagonal outputs by resizing the
node.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• matrix —
• index (row) —
row must be an integer or real number. row is the starting row index in the output. The default is
0.
• index (col) —
column must be an integer or real number. column is the starting column index in the output.
The default is 0.
• diagonal —
matrix diagonal is the matrix or 2D array that contains the diagonal elements in matrix.
The matrix diagonal output is a matrix or 2D array with one column and has the same
the numeric type as matrix. If you wire a matrix to matrix, matrix diagonal returns a
442 ni.com
Functions
column vector. If you wire a 2D array to matrix, matrix diagonal returns a 2D array.
If you do not wire row and column, matrix diagonal returns the main diagonal of
matrix. If you do not wire column, matrix diagonal returns a lower diagonal. If you do
not wire row, matrix diagonal returns an upper diagonal.
If you wire a negative value to row and no value to column, matrix diagonal returns
the same results as if you wired the same positive value to column and left row
unwired. If you wire a negative index to column and no value to row, matrix diagonal
returns the same result as if you wired the same positive value to row and left column
unwired.
If you wire values to row and column and one value is negative, the other value must
be 0. If the other value is not 0, matrix diagonal returns an empty matrix or array.
If you wire a value to row that is greater than or equal to the matrix row dimension or a
value to column that is greater than or equal to the matrix column dimension, matrix
diagonal returns an empty matrix or array.
Extracting Subdiagonals
If you wire positive values to row and column that are less than the row and column
dimensions of the matrix, the function returns a subdiagonal. The subdiagonal
includes the diagonal elements starting at (row, column) and ending at the last
element of the diagonal.
If row is less than column, matrix diagonal returns a portion of the upper diagonal. If
row is greater than column, matrix diagonal returns a portion of the lower diagonal. If
row equals column, matrix diagonal returns a portion of the main diagonal.
The row and column inputs specify row and column indexes. If you wire scalar data to
row and column, for example i for row and j for column, the function returns a scalar
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• matrix —
• index (row) —
• index (col) —
The default is 0.
• output matrix —
element is the scalar, matrix, or 2D array that contains the matrix elements. The data type of
element is the same as the data type of matrix.
Add additional row and column inputs and element outputs by resizing the node.
If you do not wire row and column, element returns a column vector with the first
column of matrix.
444 ni.com
Functions
If you do not wire column and you wire a numeric scalar to row, element returns a row
vector with the index of row. If you do not wire row and you wire a numeric scalar to
column, element returns a column vector with the index of column.
If you wire a 1D array of indexes to either row or column and no value to the other
index input, element returns a matrix.
If you wire a 1D array of numeric data to row or column, the function returns one
matrix element for every location specified. These locations are determined by pairing
each row index in row with each column index in column. For example, passing the
array of integers {1, 2, 4} to row and the integer {5} to column retrieves matrix elements
at indexes (1, 5), (2, 5), and (4, 5). In this case, the output is a row vector, or a 3 x 1
matrix, because the number of scalar elements wired to row is 3 and the number of
scalars elements wired to column is 1.
If you wire an empty 1D array to row or column, element returns an empty matrix or
array with 0 in the corresponding row or column dimension.
If you wire a negative value to row or column, the function returns an invalid operation
value at each exterior location.
If you wire a value to row or column that is greater than the row or column dimension
of matrix, the function returns an invalid operation value at each exterior location.
Get Submatrix
To retrieve elements that are not next to each other in matrix, use the Get Matrix
Elements function.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• matrix —
• row 1 —
row 1 must be an integer or real numeric. row 1 specifies the first row in matrix you want to
appear in the output.
The default is 0.
• row N —
row N must be an integer or real numeric. row N specifies the last row in matrix you want to
appear in the output.
• column 1 —
column 1 must be an integer or real numeric. column 1 specifies the first column in matrix you
want to appear in the output.
The default is 0.
• column N —
column N must be an integer or real numeric. column N specifies the last column in matrix you
want to appear in the output.
• submatrix —
submatrix is a matrix that contains the submatrix. If matrix is an empty matrix or array,
submatrix returns matrix.
446 ni.com
Functions
If you wire a matrix to matrix, submatrix returns a matrix with the same numeric type
as matrix. If you wire a 2D array to matrix, submatrix returns a 2D array with the same
numeric type as matrix.
If you wire matrix but you do not wire the other inputs, submatrix returns matrix. If
you do not wire inputs to row 1 and column 1, submatrix starts with the first element
of matrix. If you do not wire inputs to row N and column N, submatrix ends with the
last element of matrix.
If row N is less than row 1 or if column N is less than column 1, submatrix returns an
empty matrix or array with 0 for the row or column dimensions where appropriate.
If you wire a negative value to any of the row or column indexes, submatrix returns
each row and column element outside matrix with an invalid operation value at each
exterior location.
If you wire a value to row N or column N that is greater than or equal to the row or
column dimensions of matrix, submatrix returns each row and column element
outside matrix with an invalid operation value at each exterior location.
Add additional row, column, and new diagonal inputs and output matrix outputs by
resizing the node.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• matrix —
row must be an integer or real number. row is the starting row index in the output. The default is
0.
• index (col) —
column must be an integer or real number. column is the starting column index in the output.
The default is 0.
new diagonal can be a real or complex matrix or a 2D array of any numeric type. new diagonal
specifies the elements to set.
• output matrix —
If you wire matrix and no other inputs, output matrix returns matrix with the main
diagonal set to zero. If you wire column without row, output matrix returns matrix
with the upper diagonal starting at (0, column) set to the new diagonal elements. If
you wire row without column, output matrix returns matrix with the lower diagonal
starting at (row, 0) set to the new diagonal elements.
If you wire a matrix to new diagonal, the matrix must be a column vector with one
column or a row vector with one row. If you wire a 2D array to new diagonal, one
dimension of the array needs to be equal to 1.
If you wire a negative value to one index input and a positive value to the other index
input, output matrix returns an empty matrix or array.
If you wire a negative input to row and no input to column, output matrix returns the
448 ni.com
Functions
same result as if you wired the same positive value to column and left row unwired. If
you wire a negative value to column and no input to row, output matrix returns the
same result as if you wired the same positive value to row and left column unwired.
If you wire values to row or column that are greater than or equal to the respective row
or column dimensions of matrix, matrix resizes to accept the new diagonal elements.
If you increase the row or column dimensions of matrix, the function returns 0 at each
exterior location.
If you wire an empty matrix or a 2D array to new diagonal, output matrix returns
matrix.
If you wire new diagonal with an input that contains fewer elements than the diagonal
or subdiagonal that starts at (row, column), output matrix returns matrix with only
the first elements in the diagonal or subdiagonal set to the new diagonal elements.
If you wire an input to new diagonal that contains more elements than the diagonal or
subdiagonal that starts at (row, column), matrix resizes to receive the new diagonal
elements.
If you wire an input to new diagonal with a different numeric type than matrix, the
function converts matrix to the new numeric type if the function cannot set new
diagonal elements without losing precision. If the function can set new diagonal
elements without losing precision, the numeric type of new diagonal converts to the
numeric type of matrix.
If you wire a real or complex matrix to matrix, output matrix returns a real or complex
matrix. The table of special coercion cases shows the situations when output matrix is
different from matrix.
Sets one or more elements in matrix at the indexes you specify in row and column.
The row and column inputs specify row and column indexes. For example, if you wire
numeric scalar values i and j to row and column, respectively, these inputs correspond
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• matrix —
• index (col) —
• new element/submatrix —
new element is the scalar, matrix, or 2D array that replaces one or more elements in matrix.
• output matrix —
output matrix is the matrix with the new elements. If matrix is an empty matrix or array, output
matrix resizes to receive the new elements.
Add additional row, column, and new element inputs and output matrix outputs by
resizing the node.
If you wire a 2D array to matrix, output matrix returns an array even if you wire a real
or complex matrix to new element.
If new element is a scalar or a matrix, output matrix returns matrix with the element
450 ni.com
Functions
at location (i, j) set to the new element. If the location is outside the matrix and i and j
are non-negative, matrix resizes to accept the new scalar or matrix. If the new matrix is
larger than the largest submatrix at the starting location, the matrix also resizes. If you
increase the row or column dimensions of matrix, the function returns 0 at each
exterior location.
If you wire a 1D array of numeric type to row or column, the function sets one matrix
element for every location specified. These locations are determined by pairing each
row index in row with every column index in column. For example, passing the array of
integers {1, 2, 4} to row and the integer {5} to column modifies matrix elements at
indexes (1, 5), (2, 5), and (4, 5).
If you do not wire row or column, the function assigns the new element to the input
matrix starting at index (0, 0), which is equivalent to wiring 0 to matrix. If you do not
wire an input to new element, the function sets the element at location (row, column)
in matrix to 0.
If you wire an empty 1D array to row or column, output matrix returns matrix.
If you wire duplicate values to row or column and you wire a matrix to new element,
the order in which the function sets the new matrix elements determines output
matrix.
If you wire a negative value to row or column, the function ignores all locations
specified by the negative index. If new element is a matrix, the function ignores the
new matrix elements that fill these locations as well.
If you wire a value to row or column that is greater than or equal to the row or column
dimension of matrix, matrix resizes to receive elements at the corresponding location.
If you increase the row or column dimensions of matrix, the function returns an invalid
operation value at each exterior location.
If you wire a matrix to element that has a dimension larger than matrix, matrix resizes
to receive the new matrix elements. If you increase the row or column dimensions of
matrix, the function returns an invalid operation value at each exterior location.
If you wire a matrix to new element in which the row or column dimensions exceed the
respective number of row indexes in row or column indexes in column, the function
ignores the additional row and column elements.
If you wire a matrix to new element in which the number of row indexes is less than
the row dimension of the new matrix and you wire a 1D array to row, the function
inserts an invalid operation value at each exterior location.
If you wire a matrix to new element in which the number of column indexes is less
than the column dimension of the new matrix and you wire a 1D array to column, the
function fills in an invalid operation value at each exterior location.
If you wire an input to new element with a different numeric type than matrix, the
function converts matrix to a new numeric type if the function cannot set new
elements without losing precision. If the function can set new elements without losing
precision, the numeric type of new elements converts to the numeric type of matrix.
If you wire a real or complex matrix to matrix, output matrix returns a real or complex
matrix. The table of special coercion cases shows the situations when output matrix is
different from matrix.
Set Submatrix
Adds a submatrix to matrix starting at (row 1, column 1) and ending at (row N, column
N).
Add additional row, column, and new submatrix inputs and output matrix outputs by
resizing the node.
The connector pane displays the default data types for this polymorphic function.
452 ni.com
Functions
Inputs/Outputs
• matrix —
• row 1 —
row 1 must be an integer or real numeric. row 1 specifies the first row in matrix you want to
appear in the output.
The default is 0.
• row N —
row N must be an integer or real numeric. row N specifies the last row in matrix you want to
appear in the output.
• column 1 —
column 1 must be an integer or real numeric. column 1 specifies the first column in matrix you
want to appear in the output.
The default is 0.
• column N —
column N must be an integer or real numeric. column N specifies the last column in matrix you
want to appear in the output.
new submatrix can be a real or complex matrix, a 2D array of any numeric type, or a numeric
scalar. If you do not wire an input to new submatrix, the default is 0.
• output matrix —
output matrix is the matrix with the new submatrix. If matrix is an empty matrix or array, output
matrix resizes to receive the new elements.
If you wire a 2D array to matrix, output matrix returns an array even if you wire a real
or complex matrix to new submatrix.
If you wire an input to matrix and you do not wire the other inputs, output matrix
returns matrix with every element set to 0. If you wire a scalar input to new submatrix,
every element in output matrix is set to the scalar value.
If you wire an input to matrix and a matrix to new submatrix, output matrix resizes
with the new submatrix elements in output matrix. If the function needs to add rows
or columns to the new submatrix, the function returns 0 at each exterior location.
If row N is less than row 1 or column N is less than column 1, output matrix returns
matrix.
If you wire a negative value to row or column, the function ignores the rows and
columns of the submatrix with negative indexes. If new submatrix is a matrix, the
function also ignores the new submatrix elements that fill these rows and columns.
If you wire a value to row N or column N that is greater than or equal to the row or
column dimension of matrix, matrix resizes to receive the new elements.
If you wire a matrix to new submatrix when it has a dimension larger than matrix,
matrix resizes to receive the new submatrix elements. If you increase the row or
column dimensions of matrix, the function sets the new elements to an invalid
operation value at each exterior location.
If you wire a matrix to new submatrix when the dimensions of the row or column
454 ni.com
Functions
inputs are less than the number of rows or columns in the submatrix, the function
ignores the additional row and column elements in the new submatrix.
If you wire a matrix to new submatrix when the dimensions of the row or column
inputs exceed the number of rows or columns in the submatrix, the function inserts an
invalid operation value at each exterior location.
If you wire an input to new submatrix with a different numeric type than matrix, the
function converts matrix to a new numeric type if the function cannot set new
submatrix elements without losing precision. If the function cannot set new submatrix
elements without losing precision, the numeric type of new submatrix converts to the
numeric type of matrix.
If you wire a real or complex matrix to matrix, output matrix returns a real or complex
matrix. The table of special coercion cases shows the situations when output matrix is
different from matrix.
Related Information
Palette
Description
Object
Unbundle
Returns the cluster elements whose names you specify.
By Name
Bundle Replaces one or more cluster elements. This function refers to cluster elements by
By Name name instead of by their position in the cluster.
Unbundle Splits a cluster into each of its individual elements.
Bundle Assembles a cluster from individual elements.
Cluster
Use this constant to supply a constant cluster value to the block diagram.
Constant
Build
Bundles each element input into a cluster and assembles all element clusters into an
Cluster
array of clusters.
Array
Index &
Bundle Indexes a set of arrays and creates a cluster array in which the ith element contains the
Cluster ith element of each input array.
Array
Cluster
Converts a cluster of elements of the same data type to a 1D array of elements of the
To Array
same data type.
Function
Array To Converts a 1D array to a cluster of elements of the same type as the array elements.
Cluster Double-click the function to open the Cluster Size dialog box and set the number of
Function elements in the cluster.
Calls the nearest ancestor implementation of a class method. You can use the Call
Call
Parent Class Method node only on the block diagram of a member VI that belongs to a
Parent
class that inherits member VIs from an ancestor class. The child member VI must be a
Class
dynamic dispatching member VI and have the same name as the ancestor member VI.
Method
You cannot use this node to invoke methods from ancestor interfaces.
To More
Specific Typecasts a reference, such as a control or a type definition, to a more specific class or
Class interface in the inheritance hierarchy.
Function
To More
Generic Typecasts a reference, such as a control or a type definition, to a more generic class or
Class interface in the inheritance hierarchy.
Function
456 ni.com
Functions
Palette
Description
Object
Checks at run time whether object in is of the same class as, or is a child class of, target
Preserve
object. Use this function on the block diagram of a subVI when you want to guarantee
Run-Time
that LabVIEW downcasts a LabVIEW class output of the subVI node to the same class
Class
type as a LabVIEW class input when the subVI receives a child class of the expected
Function
input type.
The LabVIEW Object is the common ancestor data type for all LabVIEW classes and
LV Object
interfaces. You can use the LabVIEW Object to create generic methods that can handle
Constant
all LabVIEW class and interface data types.
Returns the class data for the class whose path you wire to the class path input. If the
Get LV
class is not in memory, LabVIEW attempts to load it from disk. If any dependencies are
Class
missing, LabVIEW searches for the missing dependencies. If LabVIEW cannot find the
Default
dependency, LabVIEW assumes the dependency is missing and does not prompt the
Value
user to browse to the needed file.
Get LV
Class Returns the path to the class of the object.
Path
Get LV
Class
Returns the class data for the class whose name you wire to the class name input. If the
Default
class is not in memory or is broken, LabVIEW returns an error.
Value By
Name
Get LV
Class Returns the name of the class of the object.
Name
Use the Variant VIs and functions to add, retrieve, and delete attributes in LabVIEW
Variant
variants, manipulate variants, and retrieve data types of variants.
Unbundle By Name
You do not have to keep track of the order of the elements within the cluster. This
function does not require the number of elements to match the number in the cluster.
After you wire a cluster to this function, you can select an individual element from the
function.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• input cluster —
• element —
You can access only elements with owned labels. To select a named element, click a name
terminal and select a name from the shortcut menu.
Bundle By Name
Replaces one or more cluster elements. This function refers to cluster elements by
name instead of by their position in the cluster.
After you wire the node to an input cluster, right-click the name terminals to select
elements from the shortcut menu. You also can use the Operating tool to click the
name terminals and select from a list of cluster elements. The connector pane displays
the default data types for this polymorphic function.
458 ni.com
Functions
Inputs/Outputs
• input cluster —
At least one element of input cluster must have an owned label. You must always wire the input
cluster terminal.
• element —
element 0..m-1 are the elements of input cluster you want to replace by name.
You only can replace elements with owned labels. Select the correct element 0..m-1 by clicking
a name terminal and selecting a name from the shortcut menu.
• output cluster —
When you use the Bundle by Name function on nested clusters, you can display both
the element name and the owning cluster name for elements in the nested cluster by
right-clicking the function and selecting Show Full Names. This is useful when
element names in nested clusters are identical or similar.
Unbundle
When you wire a cluster to this function, the function resizes automatically to display
outputs for each element in the cluster you wired. The connector pane displays the
default data types for this polymorphic function.
Inputs/Outputs
• cluster —
• —
• —
This function produces as an output these elements in the same order they appear in
the cluster. The number of outputs for this function must match the number of
elements in the cluster. When you have two or more elements of the same type, keep
track of their order in the cluster. If you access the wrong element by mistake, LabVIEW
does not report this as an error.
Bundle
You also can use this function to change the values of individual elements in an
existing cluster without having to specify new values for all elements. To do so, wire
the cluster you want to change to the middle cluster terminal of this function. When
you wire a cluster to this function, the function resizes automatically to display inputs
for each element in the cluster. The connector pane displays the default data types for
this polymorphic function.
Inputs/Outputs
• cluster —
cluster is the cluster whose value you want to change. If you do not wire this input, the function
creates a cluster.
460 ni.com
Functions
If you wire cluster, the Bundle function replaces the elements of cluster with element 0..n-1. If
you wire a cluster, the number of input terminals must match the number of elements in the
input cluster.
• —
• —
• —
• —
• output cluster —
• —
• —
Resize this function to indicate the number of elements in a new cluster. You cannot
resize this function when an existing cluster is wired to the cluster input.
When you create a new cluster, you must wire all the inputs. The elements in the
output cluster must appear in the same order as the input elements. When you wire an
existing cluster to the middle terminal of this function, the inputs are optional.
LabVIEW replaces only those cluster elements that you wire.
Cluster Constant
Use this constant to supply a constant cluster value to the block diagram.
The elements of the cluster can be different types. Define a cluster constant by
selecting any user-defined constant on the Functions palette and placing it inside the
cluster constant. Edit each cluster element value by using the Operating tool and the
Labeling tool.
You cannot change the value of the cluster constant while the VI runs.
Note To reduce the size of cluster constants on the block diagram, right-click
the cluster constant and select View Cluster As Icon from the shortcut menu.
To undo this change, select View Cluster As Icon again from the shortcut
menu. You also can double-click the frame of the cluster constant to view it
as an icon. To undo this change, double-click the cluster constant icon.
Bundles each element input into a cluster and assembles all element clusters into an
array of clusters.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• element —
element 0..n-1 inputs must be of the same type as the value wired to the topmost element
terminal.
• array of clusters —
array of clusters is the resulting array. Each cluster contains a single element.
• —
462 ni.com
Functions
You cannot create arrays of arrays. However, you can use this function to create an
array of clusters where each cluster contains an array.
The following example demonstrates two ways to build an array of clusters. You can
use the Build Cluster Array function to increase implementation efficiency, as shown in
the bottom section of the following example.
Indexes a set of arrays and creates a cluster array in which the ith element contains the
ith element of each input array.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• array —
array of x..z can be a 1D array of any type. Array inputs do not all have to be the same type.
• array of clusters —
array of cluster is a cluster array containing one element from each input array. The number of
elements in the output array equals the number of elements in the shortest input array.
• —
The following block diagram demonstrates two ways to index a set of arrays and build
a cluster. You can use the Index & Bundle Cluster Array function to improve both
implementation time and memory usage.
Converts a cluster of elements of the same data type to a 1D array of elements of the
same data type.
464 ni.com
Functions
Inputs/Outputs
• cluster —
• —
• array —
The elements in array are of the same type as the elements in cluster.
The order of the elements in array is the same as the cluster order of the elements.
Examples
• labview\examples\Arrays\Array to Cluster.vi
Converts a 1D array to a cluster of elements of the same type as the array elements.
Double-click the function to open the Cluster Size dialog box and set the number of
elements in the cluster.
The default is nine. The maximum cluster size for this function is 256.
Use this function when you want to display elements of the same type in a front panel
cluster indicator but want to manipulate the elements on the block diagram by their
index values.
Inputs/Outputs
• array —
• cluster —
The cluster order matches the order of the elements in the array.
• —
• —
• —
• —
• —
• —
• —
• —
• —
Examples
• labview\examples\Arrays\Array to Cluster.vi
Calls the nearest ancestor implementation of a class method. You can use the Call
Parent Class Method node only on the block diagram of a member VI that belongs to a
466 ni.com
Functions
class that inherits member VIs from an ancestor class. The child member VI must be a
dynamic dispatching member VI and have the same name as the ancestor member VI.
You cannot use this node to invoke methods from ancestor interfaces.
The parameters, or input and output terminals, of this node depend on the ancestor
member VI and change to match the ancestor member VI exactly. This node adopts the
VI icon of the ancestor member VI with a glyph in the bottom, left corner of the subVI to
indicate the subVI is calling the ancestor member VI instead of dynamically dispatching
as a dynamic subVI node does typically.
Inputs/Outputs
• —
Related Information
For example, if Class A inherits from Class B, a variable of type B can hold a value of
type A. You can use the function to downcast from type B to type A. If the typecast is
invalid, this function returns an error at run time.
You can use the To More Specific Class function for casting any class hierarchy in
LabVIEW, including VI Server refnums, .NET/ActiveX refnums, and LabVIEW classes or
interfaces.
Inputs/Outputs
• target class —
target class is the class or interface to which you want to downcast reference.
You can wire a class specifier constant or any wire of the target type to this input.
• reference —
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
If the target class is incompatible with the reference, the function returns an error and specific
class reference is Not A Refnum.
• error out —
error out contains error information. This output provides standard error out functionality.
You can use the To More Specific Class function to manipulate the properties or
methods from a more specific class or interface than that of the reference. For
example, if you build an array of references to boolean, numeric, and string controls,
LabVIEW casts these references to the more generic Control class because an array can
contain only one data type, and each of these controls is a member of the Control
class. If you then want to manipulate the properties for only the boolean controls in
the array, you can create a reference to the array and use the To More Specific Class
function to downcast the array reference to the Boolean class.
Wire a VI refnum to reference and a Facade VI refnum to target class to downcast from
VI to Facade VI.
468 ni.com
Functions
You also can use data value references to downcast classes. The To More Specific Class
function waits to execute until the reference is available for downcast. To downcast a
class or interface, wire the data value reference of the target class or interface to target
class.
Related Information
Examples
For example, if Class A inherits from Class B, the function upcasts a variable of type A
to a variable of type B.
You can use the To More Generic Class function for casting any class hierarchy in
LabVIEW, including VI Server refnums, .NET/ActiveX refnums, and LabVIEW classes or
interfaces.
Inputs/Outputs
• target class —
target class is the class or interface to which you want to upcast reference.
You can wire a class specifier constant or any wire of the target type to this input.
• reference —
This function does not have error in and error out parameters because LabVIEW can
determine at edit time whether you have wired the reference to a compatible target
class. If you wire the reference to an incompatible target class, the wire breaks and
you receive a Class conflict error.
You can use the To More Generic Class function to manipulate the properties or
methods from a more generic class or interface than that of the reference. For
example, you can wire an enum control reference to the To More Generic Class
function to upcast the reference to the Numeric class. You then can manipulate the
Numeric class properties of the control, but you no longer can access the specific
properties of the Enum class.
Wire a Facade VI refnum to reference and a VI refnum to target class to upcast from
Facade VI to VI.
Related Information
Checks at run time whether object in is of the same class as, or is a child class of,
target object. Use this function on the block diagram of a subVI when you want to
guarantee that LabVIEW downcasts a LabVIEW class output of the subVI node to the
same class type as a LabVIEW class input when the subVI receives a child class of the
expected input type.
470 ni.com
Functions
Inputs/Outputs
• target object —
target object—is the object whose class you want to compare to the class of object in.
• object in —
• error in —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• object out —
object out—is the same as object in. If the target object is incompatible with object in, the
function returns an error and the data value of object out is of the same wire type as target
object.
• error out —
error out contains error information. This output provides standard error out functionality.
• The VI accepts a LabVIEW class as an input and returns the same LabVIEW class as
an output.
• You want to call the VI as a subVI.
• You want to guarantee that the output class type of the resulting subVI node
always changes to match the input class type when a child class is wired as an
input.
For many subVI nodes that accept and return the same LabVIEW class, LabVIEW
automatically downcasts the output class when you wire a child class to the class
input. Those subVIs do not require you to use this function on their block diagram.
However, if it is impossible for LabVIEW to verify that the class type does not change
across the block diagram of the subVI, LabVIEW does not automatically downcast the
output class of the subVI node. In these cases, if you have additional knowledge that
guarantees that the class type does not change across the block diagram of the subVI,
you can use this function to downcast the class immediately before returning it from
the subVI. Because this function always returns an object of the same type as target
object, LabVIEW recognizes that it can downcast the returned class to that type.
Therefore, this function notifies LabVIEW that it is safe to downcast the class output of
the subVI node to match the input class type.
Related Information
Examples
• labview\examples\Object-Oriented Programming\Preserve
Run-Time Class\Preserve Run-Time Class.lvproj
LV Object Constant
The LabVIEW Object is the common ancestor data type for all LabVIEW classes and
interfaces. You can use the LabVIEW Object to create generic methods that can handle
all LabVIEW class and interface data types.
Related Information
472 ni.com
Functions
Returns the class data for the class whose path you wire to the class path input. If the
class is not in memory, LabVIEW attempts to load it from disk. If any dependencies are
missing, LabVIEW searches for the missing dependencies. If LabVIEW cannot find the
dependency, LabVIEW assumes the dependency is missing and does not prompt the
user to browse to the needed file.
Use this VI to dynamically create class objects, including class objects that are
unknown at edit time.
Related Information
Inputs/Outputs
• class path —
• options —
options is a bit set that specifies the behavior of LabVIEW when loading the class into memory.
The default is 0x0, which means that when loading the class, LabVIEW searches for missing
dependencies but does not prompt the user to browse to missing dependencies.
This option has no effect when loading LabVIEW classes. For VIs, this is the Record
Modifications value. When dynamically loading classes, modifications are always recorded
0x01 and may prompt you to save any unsaved changes when the class unloads. This behavior
has been true since classes were introduced in LabVIEW 8.2. This behavior might change in
a future version of LabVIEW.
0x02 This option has no effect when loading LabVIEW classes.
0x20 Note This option does not affect whether LabVIEW prompts you to find the
missing dependencies or not.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• object —
object displays the data of the class wired to the class path input.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• object —
object specifies the object for which you want to retrieve the path to the owning class.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
474 ni.com
Functions
• class path —
class path specifies the absolute path to the .lvclass file on disk. If an error occurs, the value
of class path is <Not A Path>. If object is a LabVIEW Object, which does not exist on disk, the
value of class path is <Empty Path>. If object belongs to a class that is not saved, class path is a
relative path consisting only of the name of the class.
• error out —
error out contains error information. This output provides standard error out functionality.
Returns the class data for the class whose name you wire to the class name input. If
the class is not in memory or is broken, LabVIEW returns an error.
Inputs/Outputs
• class name —
class name specifies the name of the class whose data you want to retrieve.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• object —
object returns the data of the class you wire to the class name input.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• object —
object specifies the object for which you want to retrieve the name of the owning class.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• class name —
• error out —
error out contains error information. This output provides standard error out functionality.
Variant
Use the Variant VIs and functions to add, retrieve, and delete attributes in LabVIEW
variants, manipulate variants, and retrieve data types of variants.
476 ni.com
Functions
Use the variant constant to pass an empty variant to the block diagram. You
Variant Constant
cannot set a value for the variant constant.
Flattened String
To Variant Converts flattened data into variant data.
Function
Variant To
Converts variant data into a flattened string and an array of integers that
Flattened String
represent the data type. You cannot flatten ActiveX variant data.
Function
Get Variant
Retrieves the names and values of all attributes or the value of a single
Attribute
attribute, depending on whether you wire the name parameter.
Function
Set Variant
Attribute Allows you to change or create an attribute and value for variant data.
Function
Delete Variant
Attribute Deletes an attribute(s) and value(s) in variant data.
Function
Data Type Use the Data Type Parsing VIs to retrieve and compare the data type stored in a
Parsing variant to other data types.
To Variant Function
Converts any LabVIEW data to variant data. You also can use this function to convert
ActiveX data to variant data.
Inputs/Outputs
• anything —
anything is any LabVIEW data you want to convert. This parameter is polymorphic.
• variant —
If you use the To Variant and Variant to Data functions with LabVIEW classes consider
the following caveat.
Variants do not recognize inheritance hierarchies. For example, if you have child data
traveling on a parent class wire and you then wire the parent wire to a To Variant
function, the variant recognizes only the parent data type. If you wire a child data type
to the Variant to Data function to extract the child data, LabVIEW returns an error. You
must wire the parent to the Variant to Data function. Then use the To More Specific
function to retrieve the child class data.
Converts variant data to a LabVIEW data type so LabVIEW can display or process the
data. You also can use this function to convert variant data to ActiveX data.
Inputs/Outputs
• type —
type specifies the LabVIEW data type of the data stored in variant.
If the data is an integer, you can coerce the data to another numeric representation, such as an
extended-precision, floating-point number.
• variant —
variant is the variant data you want to convert to the LabVIEW data type specified in type.
• error in —
478 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data —
data is the variant changed to the data type specified by type. If variant could not be converted
to the data type specified, this data returns the default value for the data type.
• error out —
error out contains error information. This output provides standard error out functionality.
This function also serves the same purpose as the QueryInterface method of ActiveX.
To use the Variant to Data function to switch between interfaces of an ActiveX object,
first convert the automation refnum for the ActiveX object to a variant by using the To
Variant function. Wire the variant version of the refnum to the variant input of the
Variant to Data function. Then create another automation refnum and select the
desired interface as the ActiveX class for the refnum. Wire this new automation refnum
to the type input of the Variant to Data function. LabVIEW associates the specified
interface with the automation refnum returned by data.
If you use the To Variant and Variant to Data functions with LabVIEW classes, note that
variants do not recognize inheritance hierarchies. For example, if you have child data
traveling on a parent class wire and you then wire the parent wire to a To Variant
function, the variant recognizes only the parent data type. If you wire a child data type
to the Variant to Data function to extract the child data, LabVIEW returns an error. You
must wire the parent to the Variant to Data function. Then use the To More Specific
function to retrieve the child class data.
Variant Constant
Use the variant constant to pass an empty variant to the block diagram. You cannot set
a value for the variant constant.
Use the Flatten to String function to produce data string and type string.
Inputs/Outputs
• type string —
type string is an array of numeric integers that identifies the data type of the flattened string if
the data type existed in LabVIEW 7.x or earlier.
• data string —
data string is the flattened data you want to convert to variant data.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• variant —
• error out —
error out contains error information. This output provides standard error out functionality.
Converts variant data into a flattened string and an array of integers that represent the
480 ni.com
Functions
Inputs/Outputs
• variant —
variant is the variant data you want converted to a string of flattened data.
• type string —
type string is an array of numeric integers that identifies the data type of the flattened string.
• data string —
data string is the resulting flattened data you converted from variant data.
If you use this function to flatten variant data, LabVIEW flattens only the variant and
discards all its contents, including attributes. However, if you use the Flatten To String
function, LabVIEW flattens the variant and all of its attributes.
Retrieves the names and values of all attributes or the value of a single attribute,
depending on whether you wire the name parameter.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• variant —
variant is the variant data for which you want to retrieve an attribute(s) and value(s).
• name —
name is the name of the attribute whose value you want to retrieve.
Do not wire this parameter if you want to retrieve all the attributes associated with the specified
variant. If you wire name, the names output changes to a Boolean output found, the array
output values changes to an output called value of the same type as default value, and the
function searches for only the specified attribute.
• default value (empty variant) —
default value is a value and data type that you specify. If the function does not find the attribute
specified in name, it returns the default value.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• duplicate variant —
• names —
names returns a 1D array containing the names of all attributes associated with the variant.
LabVIEW sorts this array and arranges the array elements in ascending order using the same
algorithm as the Sort 1D Array function.
If you wire the name parameter, this output changes to a Boolean value found. found returns
TRUE if the function finds the attribute that you specify in name.
• values —
values returns a 1D array containing the values associated with each attribute of the specified
variant in variant format. The values in this array appear in the same order as their
corresponding names appear in the names output.
You must unflatten each attribute value to an appropriate data type. If you wire name, this
output changes to a single variant value. If the function does not find the attribute that you
specify in name, it returns the value passed to default value.
• error out —
482 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
This function has two modes of behavior depending on whether you wire the name
parameter. By default, the function returns the names of all attributes and their
corresponding values in 1D arrays. If you wire name, the names output changes to a
Boolean output found, the values output changes to a variant output value, and the
function searches for only the specified attribute. If the function does not find the
specified attribute(s), or if it cannot convert the attribute(s) to the default value, found
is FALSE, and value displays the contents of default value.
Allows you to change or create an attribute and value for variant data.
Inputs/Outputs
• variant —
variant is the variant data you want to create an attribute and value for or replace a value for.
• name —
name is the name of the attribute you want to edit or create. If name matches an attribute, this
function replaces the attribute with the value specified. If name does not match an attribute,
this function creates a new attribute. If name is an empty string, this function returns error code
1 because an empty string triggers a special behavior in the Delete Variant Attribute function.
• value —
value is the value of the attribute. This input is polymorphic, so you can wire any data to it.
• error in —
error in describes error conditions that occur before this node runs. This input provides
• variant out —
• replaced —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• variant —
variant is the variant data you want to delete an attribute(s) and value(s) in.
name is the name of the attribute you want to delete. If name matches an attribute, this function
deletes the attribute and its value. If name is an empty string, this function deletes all the
attributes and associated values in the variant data. The default is an empty string.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• variant out —
484 ni.com
Functions
• found —
If name is unwired, found is TRUE if the function located and deleted attributes and FALSE
otherwise.
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Data Type Parsing VIs to retrieve and compare the data type stored in a variant
to other data types.
Get Type
Retrieves data type information from the data type stored in variant.
Information
Get Array Retrieves array information from the data type stored in variant. This VI returns an
Information error if variant does not contain an array.
Get Cluster Retrieves cluster information from the data type stored in variant. This VI returns
Information an error if variant does not contain a cluster.
Is Error
Indicates whether the data type stored in variant is an error cluster.
Cluster
Get Numeric Retrieves numeric information from the data type stored in variant. This VI returns
Information an error if variant does not contain a numeric.
Get Fixed-
Retrieves fixed-point numeric (FXP) information from the data type stored in
Point
variant. This VI returns an error if variant does not contain a fixed-point numeric.
Information
Get Waveform Retrieves waveform information from the data type stored in variant. This VI
Information returns an error if variant does not contain a waveform.
Get Channel Retrieves channel information from the data type stored in variant. This VI returns
Information an error if variant does not contain a channel.
Get Refnum Retrieves refnum information from the data type stored in variant. This VI returns
Information an error if variant does not contain a refnum.
Get User-
Defined Retrieves user-defined refnum information from the data type stored in variant.
Refnum This VI returns an error if variant does not contain a user-defined refnum.
Information
Get User-
Retrieves user-defined tag information from the data type stored in variant. This VI
Defined Tag
returns an error if variant does not contain a user-defined tag.
Information
Get Tag Returns the tag data type stored in variant. This VI returns an error if variant does
Information not contain a tag.
Retrieves VI information from the data type stored in variant. To obtain the
Get VI connector pane data type, read the Connector Pane:DataType property of the VI
Information class in VI Server. This VI returns an error if variant does not contain a connector
pane data type.
486 ni.com
Functions
Get
Retrieves polymorphic VI information from the data type stored in variant. This VI
Polymorphic
returns an error if variant does not contain a polymorphic VI.
VI Information
Get Map
Collection Retrieves map information from the data type stored in variant.
Information
Get Set
Collection Retrieves set information from the data type stored in variant.
Information
Get Type
Definition Returns the path to the type definition of the data type stored in variant.
Path
Is or Contains
Returns TRUE if the data type stored in variant is an instance of a type definition or
Type
contains a data type which is an instance of a type definition.
Definition
Disconnect
Returns the data type stored in variant in and removes all connections to type
Type
definitions from the data type.
Definitions
Check for
Contained Returns TRUE if variant contains the data type you specify.
Data Type
Get LabVIEW
Retrieves LabVIEW class information from the data type stored in variant. This VI
Class
returns an error if variant does not contain a LabVIEW class.
Information
Get LabVIEW Retrieves parent and member VI information of the LabVIEW class or interface
Class Parent stored in variant. This VI returns an error if variant does not contain a LabVIEW
And Member class or interface or if the LabVIEW class or interface is broken due to missing
VI Information parents or missing private data control dependencies.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• type —
• name —
• type definition —
type definition returns TRUE when the data type stored in variant is an instance of a type
definition.
• error out —
error out contains error information. This output provides standard error out functionality.
488 ni.com
Functions
type definition info returns the type definition information only if type definition is TRUE.
• Name —
• Timestamp —
Timestamp returns the timestamp of the last edit to the .ctl file if the data type stored in
Variant is an instance of a strict type definition. Otherwise, Timestamp returns 0.
Note This VI does not return information about values stored in the array.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• number of dimensions —
• array lengths —
array lengths returns the type and length of each dimension of the array stored in variant.
• Type —
Type returns the type for each dimension of the array stored in Variant.
Most arrays in LabVIEW are variable-sized arrays. Only certain domain-specific situations,
such as programming with the LabVIEW FPGA Module, use fixed-size arrays and bounded
arrays.
Variable—Indicates that the memory of the array dimension can grow or shrink as needed
0
to fit the data size.
Fixed—Indicates that the memory of the array dimension is pre-allocated and the data
1
length cannot change.
Bounded—Indicates that the memory of the array dimension has a maximum size and can
2
store data with length less than or equal to this size.
• Size —
Size returns the length of each dimension of the array stored in Variant. If Type is Variable,
Size returns 0. If Type is Fixed or Bounded, Size returns the number of elements in each
dimension of the array.
array element data type returns the data type of elements of the array stored in variant.
• error out —
error out contains error information. This output provides standard error out functionality.
490 ni.com
Functions
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• cluster elements —
cluster elements returns an array which contains the data types of cluster elements stored in
variant.
• error out —
error out contains error information. This output provides standard error out functionality.
Is Error Cluster
Indicates whether the data type stored in variant is an error cluster.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• is error cluster? —
is error cluster? returns TRUE if the data type stored in variant is an error cluster. Otherwise, this
output returns FALSE.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• enum names —
enum names returns the enumerated values when the numeric data type stored in variant is an
enum.
• units —
492 ni.com
Functions
units returns the unit type and exponent when the numeric data type stored in variant has units.
• Unit Type —
• Exponent —
• representation —
representation returns the numeric representation of the data type stored in variant.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• FXP representation —
FXP representation returns the fixed-point information from the fixed-point data type stored in
variant.
• Signed —
Signed returns whether the fixed-point data type stored in Variant is signed.
• Word Length —
Word Length returns the number of bits that LabVIEW uses to represent all the possible
values of the fixed-point data type stored in Variant.
Integer Word Length returns the number of integer bits, or the number of bits to shift the
binary point to the left to reach the most significant bit, for all possible values of the fixed-
point data type stored in Variant.
• FXP range —
FXP range returns the range LabVIEW calculates for the fixed-point number stored in variant.
• Range Min —
Range Min returns the minimum value of the range of the fixed-point data type stored in
Variant.
• Range Max —
Range Max returns the maximum value of the range of the fixed-point data type stored in
Variant.
• Delta —
Delta returns the maximum distance between any two sequential numbers in the range of
the fixed-point data type stored in Variant.
include overflow status? returns whether the fixed-point number in variant includes an
overflow status. If include overflow status? is TRUE, LabVIEW allocates additional storage space
to track whether the fixed-point number is the result of an operation that overflowed.
494 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Y array type —
Y array type returns the data type of the Y array element of the waveform stored in variant.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• forkable —
forkable returns whether the channel allows multiple writers or multiple readers.
• channel? —
channel? returns whether variant contains a channel. If channel? is FALSE, this VI returns an
error.
• template name —
template name returns the name of the template that the channel uses.
• element type —
element type returns the data type of the element that the channel carries.
• error out —
error out contains error information. This output provides standard error out functionality.
496 ni.com
Functions
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• reference type —
reference type returns the data type of the refnum stored in variant.
• strict type —
strict type returns the strict type of the refnum stored in variant. For example, a strictly-typed VI
refnum returns data type information that includes the connector pane of the VI.
VI Server generic type returns the specific VI Server class type. VI Server generic type is valid
only if reference type is LVObjUnknown.
• error out —
error out contains error information. This output provides standard error out functionality.
A user-defined refnum is a data type for system resources. One example of a user-
defined refnum is a DAQmx Task Name.
Note The user-defined refnum data type is installed with some add-ons,
such as NI-DAQmx.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• class name —
class name returns the class name of the user-defined refnum stored in variant.
• type name —
type name returns the type of the user-defined refnum stored in variant.
• user data —
user data returns the internal information included with the user-defined refnum stored in
variant.
• error out —
error out contains error information. This output provides standard error out functionality.
498 ni.com
Functions
A user-defined tag is a data type for system resources. A user-defined tag is allocated in
a static manner when a VI begins execution.
Note The user-defined tag data type is installed with some add-ons, such as
NI-RIO.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• class name —
class name returns the class name of the user-defined tag stored in variant.
• user data —
user data returns the internal information included with the user-defined tag stored in variant.
• error out —
error out contains error information. This output provides standard error out functionality.
A tag is a data type for system resources and is similar to a refnum. A tag is allocated in
a static manner when a VI begins execution, while a refnum is dynamically allocated.
One example of a tag is a DAQmx Device Name.
Note The tag data type is installed with some add-ons, such as NI-DAQmx.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• tag type —
• error out —
error out contains error information. This output provides standard error out functionality.
500 ni.com
Functions
Get VI Information
Retrieves VI information from the data type stored in variant. To obtain the connector
pane data type, read the Connector Pane:DataType property of the VI class in VI Server.
This VI returns an error if variant does not contain a connector pane data type.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• thrall info —
thrall info returns the thrall information for each input and output in the VI. A LabVIEW class
output is thralled to a LabVIEW class input if LabVIEW determines that the output data type is
the same as the input data type. If, at run time, LabVIEW detects that an output is the same class
as, or is a child class of, an input, LabVIEW can downcast the LabVIEW class output so that the
output data type is the same as the input data type.
• Thralls —
Thralls returns an array which contains the indices to the LabVIEW class inputs that a
LabVIEW class output is thralled to. If a terminal is an input or a terminal is not thralled to
any LabVIEW class input, Thralls returns an empty array.
• VI info —
VI info returns the attributes related to the connector pane and other settings of the VI.
Connector Pane Pattern returns the index to the connector pane pattern of the VI. Refer to
the Connector Pane Pattern Reference VI located in the labview\examples\
Application Control\VI Scripting\Connector Pane directory for a list of
connector pane patterns and their indexes.
Connector Pane Rotation returns a numeric value corresponding to the rotation of the
connector pane.
The following table contains the possible values for this output:
• Flags —
Flags returns flags of the VI. Flags contain additional information about a VI. Flags are useful
for National Instruments to diagnose bug reports from customers.
• Modification Date —
Modification Date returns the date when the VI was last modified.
• Asynchronous —
Asynchronous returns whether the VI pauses the execution until VIs on other threads finish
executing.
• Non-Function —
Non-Function returns whether the VI outputs depend on the system state. For example, if
the output constants in a VI cannot be constant folded even when all the VI inputs are
constants, Non-Function returns TRUE.
• Subroutine —
502 ni.com
Functions
Subroutine returns whether the VI enables the subroutine priority in the Execution page of
the VI Properties dialog box.
• SubSystem —
SubSystem returns whether the VI is a subVI for the LabVIEW Control Design and Simulation
Module that you can place only on a simulation diagram. SubSystem is valid only if you
have installed the Control Design and Simulation Module.
• VI terminal types —
VI terminal types returns the data types of the terminals in the VI.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• time stamp —
time stamp returns the time and date at which the polymorphic VI was last edited.
• error out —
error out contains error information. This output provides standard error out functionality.
Note This VI does not return information about values stored in the map.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information. This VI
returns an error if variant does not contain a map.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
key data type returns the data type of the keys in the map stored in variant.
value data type returns the data type of the values in the map stored in variant.
• error out —
504 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Note This VI does not return information about values stored in the set.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information. This VI
returns an error if variant does not contain a set.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
element data type returns the data type of the elements in the set stored in variant.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
type definition path returns the path to the type definition of the data type stored in variant
when the data type is an instance of a type definition. Otherwise, LabVIEW returns an empty
path.
• error out —
error out contains error information. This output provides standard error out functionality.
506 ni.com
Functions
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• is or contains typedef —
is or contains typedef returns TRUE when the data type stored in variant is an instance of a type
definition or contains a data type which is an instance of a type definition.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• variant in —
variant in specifies the variant data that you want to disconnect from type definitions.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• variant out —
variant out returns the data type stored in variant in and removes all connections to type
definitions from the data type.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
data type to find specifies the data type for which you want to search within the data type
stored in variant.
check inside refnums? specifies whether to compare the data type stored in a refnum to data
type to find.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
508 ni.com
Functions
LabVIEW class qualified name specifies the LabVIEW class name to compare to any LabVIEW
class stored in variant when data type to find is LabVIEW Class Instance. If LabVIEW class
qualified name is empty, contains data type to find? returns TRUE when variant contains any
LabVIEW classes.
contains data type to find? returns TRUE if variant contains data type to find. For example, if
variant is a cluster that contains a Boolean element and elements of other data types and data
type to find is Boolean, contains data type to find? returns TRUE.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
LabVIEW class file name returns the name of the LabVIEW class file on disk.
qualified LabVIEW class name returns an array that contains the LabVIEW class stored in
variant, the project library that owns the LabVIEW class, and any project libraries that own the
project library.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• variant —
variant specifies the variant data from which you want to retrieve data type information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• parent class —
parent class returns the parent class of the LabVIEW class or interface.
• member VI info —
510 ni.com
Functions
member VI info returns the qualified name, path, access scope, and dynamic dispatch
information of all member VIs of the LabVIEW class or interface. Each array element represents
one member VI. The path is empty if the member VI has not been saved.
• qualified name —
• path —
• access scope —
• is dynamic dispatch —
• error out —
error out contains error information. This output provides standard error out functionality.
• parent interfaces —
parent interfaces returns the interfaces that the LabVIEW class or interface inherits from directly.
Numeric
Use the Numeric VIs and functions to create and perform arithmetic and complex
mathematical operations on numbers and to convert numbers from one data type to
another. Use the VIs and functions on the Elementary and Special Functions and VIs
palette to perform trigonometric and logarithmic functions.
You also can access the following constants from this palette:
• positive infinity
• negative infinity
• machine epsilon
• not a number
Palette
Description
Object
Add
Computes the sum of the inputs.
Function
Subtract
Computes the difference of the inputs.
Function
Multiply
Returns the product of the inputs.
Function
Divide
Computes the quotient of the inputs.
Function
Quotient &
Computes the integer quotient and the remainder of the inputs. This function
Remainder
rounds floor(x/y) to the nearest integer towards -inf.
Function
Conversion Use the Conversion VIs and functions to convert data types.
Increment
Adds 1 to the input value.
Function
Decrement
Subtracts 1 from the input value.
Function
Add Array
Elements Returns the sum of all the elements in numeric array.
Function
Multiply
Returns the product of all the elements in numeric array. If numeric array is an
Array
empty array, the function returns a value of 1. If numeric array contains only one
Elements
element, the function returns that element.
Function
Performs arithmetic on one or more numeric, array, cluster, or Boolean inputs. To
select the operation (Add, Multiply, AND, OR, or XOR), right-click the function and
Compound
select Change Mode from the shortcut menu. When you select this function from the
Arithmetic
Numeric palette, the default mode is Add. When you select this function from the
Boolean palette, the default mode is OR.
Data
Use the Data Manipulation functions to modify the data types used in LabVIEW.
Manipulation
512 ni.com
Functions
Palette
Description
Object
Value
Function
Round To
Rounds the input to the nearest integer. If the value of the input is midway between
Nearest
two integers, the function returns the nearest even integer.
Function
Round
Toward
Truncates the input to the next lowest integer.
-Infinity
Function
Round
Toward
Rounds the input to the next highest integer.
+Infinity
Function
Scale By
Power Of 2 Multiplies x by 2 raised to the power of n.
Function
Use the Complex functions to create complex numbers from two values given in
Complex rectangular or polar and to break a complex number into its rectangular or polar
components.
Square Root
Computes the square root of the input value.
Function
Square
Computes the square of the input value.
Function
Negate
Negates the input value.
Function
Reciprocal
Divides 1 by the input value.
Function
Sign
Returns the sign of number.
Function
Scaling Use the Scaling VIs to convert voltage readings to other temperature or strain units.
Palette
Description
Object
Numeric Use the numeric constant to pass a numeric value to the block diagram. Set this
Constant value by clicking inside the constant with the Operating tool and typing a value.
Enum Use the enumerated constant to create a list of string labels with corresponding
Constant integer values you can select on the block diagram.
Ring Use the ring constant to create a list of value pairs you can select on the block
Constant diagram. Each value pair consists of a numeric value and corresponding string label.
Random
Produces a double-precision, floating-point number between 0 and 1. The number
Number (0-1)
generated is greater than or equal to 0, but less than 1. The distribution is uniform.
Function
Random Generates a random value from a specified range. Wire data to the upper bound or
Number lower bound input to determine the polymorphic instance to use or manually select
(Range) the instance.
Positive
Returns the value Inf (infinity).
Infinity
Negative
Returns the value -Inf (negative infinity).
Infinity
Represents the round-off error for a floating-point number with a given precision.
Machine
Use the machine epsilon constant to compare whether two floating-point numbers
Epsilon
are equivalent.
Not A
Number Returns the value NaN (not a number).
Constant
514 ni.com
Functions
Palette
Description
Object
Math &
Scientific Use the Math & Scientific Constants to create LabVIEW applications.
Constants
Range Limits
Returns the maximum and minimum values of the input data type.
for Type
Use the Expression Node to calculate expressions that contain a single variable. The
following built-in functions are allowed in formulas: abs, acos, acosh, asin, asinh,
Expression
atan, atanh, ceil, cos, cosh, cot, csc, exp, expm1, floor, getexp, getman, int, intrz, ln,
Node
lnp1, log, log2, max, min, mod, rand, rem, sec, sign, sin, sinc, sinh, sizeOfDim, sqrt,
tan, tanh.
Examples
• labview\examples\Numerics\Numeric Functions.vi
Add Function
Inputs/Outputs
• x—
x can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• y—
• x+y —
Note You can manually configure this function to output data of a type you want. To
specify the output data type, right-click the function and select Properties to display
the Object Properties dialog box. On the Output Configuration page, click the
Representation icon and select the data type you want. A blue coercion dot appears
on the output terminal of the function to indicate that you have configured the
output data type.
Matrix Details
When you wire matrix data as an input to this function, a VI that includes subVIs that
work with the matrix data type replaces the function. The resulting VI has the same
icon but contains a matrix-specific algorithm. The node remains a VI if you disconnect
the matrix from the inputs. Wire other data types as inputs to restore the original
function. If you wire a data type to a function and that data type causes a basic math
operation to fail, the function returns a NaN.
You also can add two or more values using the Compound Arithmetic function.
Fixed-Point Details
If you wire fixed-point values to Numeric functions such as Add, Subtract, Multiply, and
Square, the functions usually return values that do not lose any bits of word length.
However, if the operation creates a value that exceeds the maximum word length that
LabVIEW accepts, overflow or rounding conditions can occur. LabVIEW accepts a
maximum word length of 64 bits. Use the Numeric Node Properties dialog box to
configure how LabVIEW handles overflow or rounding of fixed-point data.
Examples
• labview\examples\Numerics\Numeric Functions.vi
516 ni.com
Functions
Subtract Function
If you wire two waveform values or two dynamic data type values to this function,
error in and error out terminals appear on the function. Subtracting two time stamp
values yields a numeric value (difference in time), and subtracting a numeric value
from a time stamp value yields a time stamp. You cannot subtract a time stamp value
from a numeric value. The dimensions of two matrices that you want to subtract must
be the same. Otherwise, this function returns an empty matrix. The connector pane
displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
• x-y —
Note You can manually configure this function to output data of a type you want. To
specify the output data type, right-click the function and select Properties to display
the Object Properties dialog box. On the Output Configuration page, click the
Representation icon and select the data type you want. A blue coercion dot appears
on the output terminal of the function to indicate that you have configured the
output data type.
When you wire matrix data as an input to this function, a VI that includes subVIs that
work with the matrix data type replaces the function. The resulting VI has the same
icon but contains a matrix-specific algorithm. The node remains a VI if you disconnect
the matrix from the input(s). Wire other data types as inputs to restore the original
function. If you wire a data type to a function and that data type causes a basic math
operation to fail, the function returns an empty matrix or NaN.
Fixed-Point Details
If you wire fixed-point values to Numeric functions such as Add, Subtract, Multiply, and
Square, the functions usually return values that do not lose any bits of word length.
However, if the operation creates a value that exceeds the maximum word length that
LabVIEW accepts, overflow or rounding conditions can occur. LabVIEW accepts a
maximum word length of 64 bits. Use the Numeric Node Properties dialog box to
configure how LabVIEW handles overflow or rounding of fixed-point data.
Examples
• labview\examples\Numerics\Numeric Functions.vi
Multiply Function
If you wire two waveform values or two dynamic data type values to this function,
error in and error out terminals appear on the function. The connector pane displays
the default data types for this polymorphic function.
518 ni.com
Functions
Inputs/Outputs
• x—
x can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• y—
y can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• x*y —
You cannot use this function to multiply a matrix and a vector. Use the A x B VI instead.
When multiplying two matrices, if the number of rows in the second matrix does not
match the number of columns in the first matrix, this function returns an empty
matrix. Refer to the A x B VI for more information about matrix multiplication.
When you wire matrix data as an input to this function, a VI that includes subVIs that
work with the matrix data type replaces the function. The resulting VI has the same
icon but contains a matrix-specific algorithm. The node remains a VI if you disconnect
the matrix from the input(s). Wire other data types as inputs to restore the original
function. If you wire a data type to a function and that data type causes a basic math
operation to fail, the function returns an empty matrix or NaN.
Fixed-Point Details
If you wire fixed-point values to Numeric functions such as Add, Subtract, Multiply, and
Square, the functions usually return values that do not lose any bits of word length.
However, if the operation creates a value that exceeds the maximum word length that
LabVIEW accepts, overflow or rounding conditions can occur. LabVIEW accepts a
maximum word length of 64 bits. Use the Numeric Node Properties dialog box to
configure how LabVIEW handles overflow or rounding of fixed-point data.
Examples
• labview\examples\Numerics\Numeric Functions.vi
Divide Function
Inputs/Outputs
• x—
x can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• y—
y can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• x/y —
x/y is a double-precision, floating-point number if both x and y are integers. In general, the
output type is the widest representation of the inputs if the inputs are not integers or if their
representations differ.
Note You can manually configure this function to output data of a type you want. To
specify the output data type, right-click the function and select Properties to display
the Object Properties dialog box. On the Output Configuration page, click the
Representation icon and select the data type you want. A blue coercion dot appears
on the output terminal of the function to indicate that you have configured the
output data type.
Fixed-Point Details
If you wire fixed-point values to this function, by default LabVIEW configures the
integer word length of the quotient to avoid overflow for nonzero values of y. However,
because the precision of the quotient can be infinite, rounding conditions always
occur. Use the Numeric Node Properties dialog box to configure how LabVIEW handles
rounding of fixed-point data. This function always uses the Saturate overflow mode to
520 ni.com
Functions
handle overflow.
Computes the integer quotient and the remainder of the inputs. This function rounds
floor(x/y) to the nearest integer towards -inf.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• y—
y can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• x-y*floor(x/y) —
• floor(x/y) —
floor(x/y) is the integer quotient. If either input is a floating-point number, the quotient is a
floating-point number with an integer value.
If the integer input value of y is zero, the quotient is zero and remainder is dividend x.
For floating-point inputs, if y is zero, the quotient is infinity and the remainder defaults
to NaN.
Note Not all real numbers can be represented in the ANSI/IEEE standard
floating-point numbers. Because of this, LabVIEW may encounter rounding
errors and yield unexpected results if you use floating-point numbers with
this function. For exact calculations and comparisons, convert floating-point
numbers to integers.
Conversion
When these functions convert a floating-point number to an integer, they round the
output to the nearest integer, or the nearest even integer if the fractional part is 0.5. If
the result is out of range for the integer, these functions return the minimum or
maximum value for the integer type. When these functions convert an integer to a
smaller integer, they copy the least-significant bits without checking for overflow.
When they convert an integer to a larger integer, they extend the sign of a signed
integer and pad an unsigned integer with zeros.
Use caution when you convert numbers to smaller representations, particularly when
converting integers, because the LabVIEW conversion routines do not check for
overflow.
Palette
Description
Object
To
Extended
Precision Converts a number to an extended-precision, floating-point number.
Float
Function
To
Double
Precision Converts a number to a double-precision, floating-point number.
Float
Function
522 ni.com
Functions
Palette
Description
Object
To Single
Precision
Converts a number to a single-precision, floating-point number.
Float
Function
To Fixed-
Point Converts any non-complex number to fixed-point representation.
Function
To Quad
Integer Converts a number to a 64-bit integer in the range -(2^63) to (2^63)-1.
Function
To Long
Converts a number to a 32-bit integer in the range -(2^ 31) to (2^ 31)-1. This function
Integer
rounds all floating-point and fixed-point numeric values to the nearest integer.
Function
To Word
Integer Converts a number to a 16-bit integer in the range -32,768 to 32,767.
Function
To Byte
Integer Converts a number to an 8-bit integer in the range -128 to 127.
Function
To
Unsigned
Quad Converts a number to a 64-bit unsigned integer in the range 0 to (2^64)-1.
Integer
Function
To
Unsigned
Long Converts a number to a 32-bit unsigned integer in the range 0 to (2^32)-1.
Integer
Function
To
Unsigned
Word Converts a number to a 16-bit unsigned integer in the range 0 to 65,535.
Integer
Function
To
Converts a number to an 8-bit unsigned integer in the range 0 to 255.
Unsigned
Palette
Description
Object
Byte
Integer
Function
To
Extended
Precision Converts a number to an extended-precision, complex number.
Complex
Function
To
Double
Precision Converts a number to a double-precision, complex number.
Complex
Function
To Single
Precision
Converts a number to a single-precision, complex number.
Complex
Function
Coerce
Converts the input data to a compatible data type while preserving the data value.
To Type
Unlike the Type Cast function, this function does not reinterpret the input data.
Function
Converts an integer or fixed-point number to a Boolean array. If you wire an integer to
Number
number, Boolean array returns an array of 8, 16, 32, or 64 elements, depending on the
To
number of bits in the integer. If you wire a fixed-point number to number, the size of the
Boolean
array that Boolean array returns equals the word length of the fixed-point number. The
Array
0th element of the array corresponds to the least significant bit of the two's complement
Function
representation of the integer.
Boolean
Converts a Boolean array to an integer or a fixed-point number by interpreting the array
Array To
as the binary representation of the number. The first element of the array corresponds
Number
to the least significant bit in the number.
Function
Boolean
Converts a Boolean FALSE or TRUE value to a 16-bit integer with a value of 0 or 1,
To (0,1)
respectively.
Function
To Time
Stamp Converts a number to a timestamp.
Function
524 ni.com
Functions
Palette
Description
Object
String To
Byte
Converts a string into an array of unsigned bytes.
Array
Function
Byte
Array To
Converts an array of unsigned bytes representing ASCII characters into a string.
String
Function
Converts a physical number (a number that has a unit) to a pure number (a number with
Convert
no units) or a pure number to a physical number. Right-click the function and select
Unit
Build Unit String from the shortcut menu to build and edit a string of units.
Cast Unit
Changes the base units associated with the input to the base units associated with unit
Bases
and returns the results at the output terminal.
Function
Color to Resolves any color input, including system colors, into its respective red, green, and blue
RGB components.
RGB to
Converts a red, green, and blue value from 0 to 255 to the corresponding RGB color.
Color
Enum to
Array of Creates an array of enums with the same number of elements as values in the enum.
Enums
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, a time
stamp, and so on.
The connector pane displays the default data types for this polymorphic function.
526 ni.com
Functions
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
To Fixed-Point Function
If you do not wire a value to the fixed-point type input or configure the output settings
of this function, the data type of the fixed-point output adapts to the data you wire to
the number input. For example, if you wire an 8-bit unsigned integer to the number
input, LabVIEW returns an 8-bit unsigned fixed-point number with 8 integer bits. This
function saturates the number by default if overflow occurs.
Inputs/Outputs
• fixed-point type —
fixed-point type is the fixed-point data type to which you want to convert the integer data. You
can configure the fixed-point data type in the Data Type page of the Properties dialog box.
LabVIEW ignores any data in the constant or control that you wire to fixed-point type. You also
can leave this input unwired and configure the output data type in the Output Configuration
page of the Properties dialog box.
• number —
• fixed-point —
fixed-point is the input data scaled to the requested fixed-point data type.
To override the default behavior of this function, right-click the function and select
Properties from the shortcut menu to display the Output Configuration page of the
Properties dialog box. You can use this dialog box to configure the output settings of
this function.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, a time
stamp, and so on.
• 64bit integer —
This function rounds all floating-point and fixed-point numeric values to the nearest
integer. If the fractional part of the value is .5, the function rounds the value to the
nearest even integer. For example, the function rounds 13.5 to 14 and rounds 14.5
to 14.
528 ni.com
Functions
Converts a number to a 32-bit integer in the range -(2^ 31) to (2^ 31)-1. This function
rounds all floating-point and fixed-point numeric values to the nearest integer.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
• 32bit integer —
If the fractional part of the floating-point or fixed-point value is .5, the function
rounds the value to the nearest even integer. For example, the function rounds 13.5
to 14 and rounds 14.5 to 14.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
• 16bit integer —
This function rounds all floating-point and fixed-point numeric values to the nearest
integer. If the fractional part of the value is .5, the function rounds the value to the
nearest even integer. For example, the function rounds 13.5 to 14 and rounds 14.5
to 14.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
• 8bit integer —
This function rounds all floating-point numeric values to the nearest integer. If the
fractional part of the floating-point value is .5, the function rounds the value to the
nearest even integer. For example, the function rounds 13.5 to 14 and rounds 14.5
to 14.
530 ni.com
Functions
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, a time
stamp, and so on.
This function rounds all floating-point and fixed-point numeric values to the nearest
integer. If the fractional part of the value is .5, the function rounds the value to the
nearest even integer. For example, the function rounds 13.5 to 14 and rounds 14.5
to 14.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, a time
stamp, and so on.
This function rounds all floating-point and fixed-point numeric values to the nearest
integer. If the fractional part of the value is .5, the function rounds the value to the
nearest even integer. For example, the function rounds 13.5 to 14 and rounds 14.5
to 14.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
This function rounds all floating-point and fixed-point numeric values to the nearest
integer. If the fractional part of the value is .5, the function rounds the value to the
nearest even integer. For example, the function rounds 13.5 to 14 and rounds 14.5
to 14.
532 ni.com
Functions
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
This function rounds all floating-point and fixed-point numeric values to the nearest
integer. If the fractional part of the value is .5, the function rounds the value to the
nearest even integer. For example, the function rounds 13.5 to 14 and rounds 14.5
to 14.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
The connector pane displays the default data types for this polymorphic function.
534 ni.com
Functions
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
Converts the input data to a compatible data type while preserving the data value.
Unlike the Type Cast function, this function does not reinterpret the input data.
Inputs/Outputs
• type —
type specifies the data type to which you want to convert the input data x.
To set the data type to which you want to convert the input data, wire a constant or control of
the desired data type to type. LabVIEW ignores any data in the constant or control wired to type.
• x—
• coerced x —
coerced x returns the value of the input data x after the conversion.
The Type Cast function also converts data to a desired data type. Unlike the Type Cast
function, the Coerce To Type function allows only conversion between compatible
data types to preserve the value of the input data, similar to what a coercion dot does.
The Type Cast function allows conversion between incompatible data types by
flattening and unflattening the input data, which allows for radical reinterpretation of
the data. When the desired data type requires a different memory size than the input
data, the Type Cast function may reinterpret the input data. NI recommends that you
use the Coerce To Type function instead of the Type Cast function to avoid
reinterpreting the data.
Inputs/Outputs
• number —
• Boolean array —
Boolean array can have 8, 16, 32, or 64 elements if number is an integer. If number is a fixed-
536 ni.com
Functions
If you wire a fixed-point number that includes an overflow status to number, this
function ignores the overflow status and converts only the number to a Boolean array.
Inputs/Outputs
• Boolean array —
This function truncates Boolean array if it is too long. If Boolean array is too short, this function
pads Boolean array according to the Sign Extension Mode you can select by right-clicking the
function.
• Never —This function pads Boolean array with Boolean FALSE bits.
• If Output Is Signed —(default) For an output with an unsigned representation, this function
pads Boolean array with Boolean FALSE bits. For an output with a signed representation,
this function pads Boolean array with the last element of the array.
• Always —This function pads Boolean array with the last element of the array.
• number —
You can change the numeric representation of number on the Output Configuration page of the
Properties dialog box. Right-click the function and select Properties to display the Properties
dialog box.
The following table shows the relationship between Boolean array and number.
Inputs/Outputs
• Boolean —
Boolean can be a scalar, an array, a cluster of Boolean values, an array of clusters of Boolean
values, and so on. If Boolean is an error cluster, only the status parameter of the error cluster
passes to the input terminal.
• 0, 1 —
538 ni.com
Functions
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on, that represents the amount of seconds from the epoch time of 12 a.m., January 1, 1904
[01-01-1904 00:00:00].
• time stamp —
time stamp is a time-zone-independent number of seconds that have elapsed since 12:00 a.m.,
Friday, January 1, 1904, Universal Time [01-01-1904 00:00:00].
Each byte in the array has the ASCII value of the corresponding character in the string.
Inputs/Outputs
• string —
The first byte in the array has the ASCII value of the first character in string, the second byte has
the second value, and so on.
Inputs/Outputs
• unsigned byte array —
unsigned byte array is the array of ASCII values you want to convert.
• string —
string is the result of interpreting each array element as an ASCII value and forming a string out
of the corresponding characters.
Refer to ASCII Codes for the numbers that correspond to each character.
Convert Unit
Converts a physical number (a number that has a unit) to a pure number (a number
with no units) or a pure number to a physical number. Right-click the function and
select Build Unit String from the shortcut menu to build and edit a string of units.
Inputs/Outputs
• —
• —
y is a floating-point number that has a unit if x does not have a unit. y does not have a unit if x
does have a unit.
Edit the unit string by using the Labeling or Operating tool to highlight the string and
entering a new string. You also can right-click the function and select Build Unit String
from the shortcut menu to display the Build Unit String dialog box. The unit you enter
540 ni.com
Functions
If the input is a physical number measured in a compatible unit, the output is a pure
number measured in the unit specified. For example, if x is 37 meters (m), and you
enter m (meters) as the unit in the Convert Unit function, y is 37 with no associated
units. If x is 37 meters and you enter ft (feet) as the unit in the Convert Unit function, y
is 121.36 with no associated units.
If the input is a pure number, LabVIEW assigns the unit you specify in the Convert Unit
function to the number and returns that physical number in the base unit (or a
combination of base units) for that class of measurement, as indicated in the following
table.
For example, if x is 10 and you enter s (seconds) as the unit in the Convert Unit
function, y is 10 seconds because seconds is the base unit LabVIEW uses to measure
time. If x is 10 and you enter min (minutes) as the unit in the Convert Unit function, y is
600 seconds. You then can change the unit the indicator displays to show minutes,
hours, or any other unit of time.
Changes the base units associated with the input to the base units associated with
unit and returns the results at the output terminal.
Caution Use this function with extreme caution. Because this function
works with bases, you must understand the conversion from an arbitrary unit
to its bases before you can effectively use this function. This function can
change base units, such as changing meters to kilograms.
Inputs/Outputs
• unit (none) —
• x—
• x—
Color to RGB
Resolves any color input, including system colors, into its respective red, green, and
blue components.
To perform a task such as color arithmetic with symbolic colors, you must convert the
colors to their red, green, and blue components.
542 ni.com
Functions
Inputs/Outputs
• Color —
Color is the color that you want to convert to its respective red, green, and blue components.
• Resolved Color —
• R—
• G—
• B—
RGB to Color
Converts a red, green, and blue value from 0 to 255 to the corresponding RGB color.
Inputs/Outputs
• R—
• G—
• B—
• Color —
Creates an array of enums with the same number of elements as values in the enum.
Inputs/Outputs
• enum —
• array of enums —
For example, if enum has values {cat, dog, bird}, array of enums returns a three-element array
with values cat, dog, and bird, respectively.
Increment Function
The connector pane displays the default data types for this polymorphic function.
544 ni.com
Functions
Inputs/Outputs
• x—
• Number
• Timestamp
• Analog Waveform
This input also accepts an array or an array of clusters of the listed data types.
• x+1 —
x+1 is the result of x+1. If the input is a time stamp value, this function increments the time by
one second. If the input is an enumerated type value, this function increments the last
enumerated value to the first.
Note You can manually configure this function to output data of a type you want. To
specify the output data type, right-click the function and select Properties to display
the Object Properties dialog box. On the Output Configuration page, click the
Representation icon and select the data type you want. A blue coercion dot appears
on the output terminal of the function to indicate that you have configured the
output data type.
Examples
• labview\examples\Numerics\Numeric Functions.vi
Decrement Function
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
• Number
• Timestamp
• Analog Waveform
This input also accepts an array or an array of clusters of the listed data types.
• x-1 —
x-1 is the result of x-1. If the input is a time stamp value, this function decrements the time by
one second. If the input is an enumerated type value, this function decrements the first
enumerated value to the last.
Note You can manually configure this function to output data of a type you want. To
specify the output data type, right-click the function and select Properties to display
the Object Properties dialog box. On the Output Configuration page, click the
Representation icon and select the data type you want. A blue coercion dot appears
on the output terminal of the function to indicate that you have configured the
output data type.
Examples
• labview\examples\Numerics\Numeric Functions.vi
546 ni.com
Functions
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• numeric array —
• sum —
sum is of the same data type and structure as the elements in numeric array.
Note You cannot use this function with fixed-point numbers. If you wire
fixed-point numbers to this function, the VI appears with a broken Run
button.
Examples
• labview\examples\Numerics\Numeric Functions.vi
Returns the product of all the elements in numeric array. If numeric array is an empty
array, the function returns a value of 1. If numeric array contains only one element, the
function returns that element.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• numeric array —
• product —
product is of the same data type and structure as the elements in numeric array.
Note You cannot use this function with fixed-point numbers. If you wire
fixed-point numbers to this function, the VI appears with a broken Run
button.
Examples
• labview\examples\Numerics\Numeric Functions.vi
Compound Arithmetic
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• value —
548 ni.com
Functions
value 0..n-1 can be a number or Boolean value, an array of numbers or Boolean values, a cluster,
array of clusters, and so on.
You can wire a waveform to only one value input. If an input is a waveform, you can have an
unlimited number of scalar inputs of varying sizes. If value is an error cluster, only the status
parameter of the error cluster passes to the input terminal.
• value —
• result —
result returns the result of the selected operation applied to the value 0..n-1. For AND, OR, or
XOR, result returns the bitwise operations on numeric inputs and logical operations on Boolean
inputs.
Add inputs to the node by right-clicking an input and selecting Add Input from the
shortcut menu or by resizing the function.
You can invert the inputs or the output of this function by right-clicking the individual
terminals and selecting Invert from the shortcut menu. For Add, select Invert to
negate an input or the output. For Multiply, select Invert to use the reciprocal of an
input or to produce the reciprocal of the output. For AND, OR, or XOR, select Invert to
bitwise complement an integer input or output or to logically negate an input or
output.
When you use the Compound Arithmetic function to perform an XOR operation on 3 or
more values, the Compound Arithmetic function performs an XOR operation on the
first pair of inputs, then performs an XOR operation on the result of the first pair of
inputs and the next input, and so on until all inputs have been processed.
Note You cannot use this function with fixed-point numbers. If you wire
fixed-point numbers to this function, the VI appears with a broken Run
button.
Data Manipulation
Use the Data Manipulation functions to modify the data types used in LabVIEW.
Palette
Description
Object
Casts x to the data type, type, by flattening it and unflattening it using the new data
Type Cast type. If the function must reinterpret data instead of transforming it, LabVIEW uses a
Function temporary buffer. This function has the risk of reinterpreting data. To preserve the data
value while converting the data, use the Coerce To Type function instead.
Flatten To Converts the anything input to a flattened data string of binary values. You also can use
String this function to convert the byte order, or endian format, of the data in the flattened
Function data string.
Unflatten
Converts binary string to the type wired to type. binary string should contain flattened
From
data of the type wired to type. You also can use this function to specify the byte order,
String
or endian format, of the data in the binary string.
Function
Mantissa
& Returns the mantissa and exponent of the input numeric value such that number =
Exponent mantissa * 2^exponent.
Function
Rotate
Left With Rotates each bit in the input value one bit to the left (from least significant to most
Carry significant bit), inserts carry in the low-order bit, and returns the most significant bit.
Function
Rotate
Right With Rotates each bit in value one bit to the right (from most significant to least significant),
Carry inserts carry in the high-order bit, and returns the least significant bit.
Function
Logical
Shift Shifts x the number of bits specified by y.
Function
Rotate
Rotates x the number of bits specified by y.
Function
Split
Number Breaks a number into its component bytes or words.
Function
Join
Numbers Creates a number from the component bytes or words.
Function
Swap Swaps the high-order 8 bits and the low-order 8 bits for every word in data.
550 ni.com
Functions
Palette
Description
Object
Bytes
Function
Swap
Words Swaps the high-order 16 bits and the low-order 16 bits for every long integer in data.
Function
Byte Array Computes the message digest on a byte array. You must manually select the
Checksum polymorphic instance you want to use.
Casts x to the data type, type, by flattening it and unflattening it using the new data
type. If the function must reinterpret data instead of transforming it, LabVIEW uses a
temporary buffer. This function has the risk of reinterpreting data. To preserve the data
value while converting the data, use the Coerce To Type function instead.
Note You can also use the Conversion VIs and functions to convert data
types.
Inputs/Outputs
• type —
type is the data type to which you want to convert the data. Wire any constant or control to type
to set the data type to which you want to convert the data. LabVIEW ignores any data in the
constant or control you wire to type.
• x—
• *(type *) &x —
*(type *) &x is the value provided in x and converted to the same data type as type.
Choosing between the Type Cast Function and the Coerce To Type
Function
The Coerce To Type function also converts data to a desired data type. Unlike the
Coerce To Type function, the Type Cast function allows conversion between
incompatible data types by flattening and unflattening the input data, which allows for
radical reinterpretation of the data. When the desired data type requires a different
memory size than the input data, the Type Cast function may reinterpret the input
data. The Coerce To Type function allows only conversion between compatible data
types to preserve the value of the input data, similar to what a coercion dot does. You
also can use the Coerce To Type function to convert a type definition or rename data
on the wire, such as a user event refnum. NI recommends that you use the Coerce To
Type function instead of the Type Cast function to avoid reinterpreting the data.
This function can generate unexpected data if x and type are not the same size. If x
requires more bits of storage than type, this function uses the upper bytes of x and
discards the remaining lower bytes. If x is of a smaller data type than type, this
function moves the data in x to the upper bytes of type and fills the remaining bytes
with zeros. For example, an 8-bit unsigned integer with value 1 type cast to a 16-bit
unsigned integer results in a value of 256.
You can use this function with an array of scalars or an array of clusters of scalars. For
example, if you typecast an array of four 16-bit integers to an array of 32-bit integers,
the output array contains two elements, each formed from the bits of pairs of elements
from the input array. If the input array does not contain enough bytes to form a whole
number of output elements, LabVIEW omits the final elements of the input array.
552 ni.com
Functions
If you want to upcast or downcast references, use the To More Generic Class function
and the To More Specific Class function instead of the Type Cast function. The Type
Cast function does not provide error checking, but the To More Generic Class function
and the To More Specific Class function do. The To More Specific Class function has
error in and error out parameters. The To More Generic Class function breaks the wire
at edit time when you wire a reference to an incompatible target class.
If x might contain Boolean data created with LabVIEW 4.x or earlier, right-click this
function and select Convert 4.x Data from the shortcut menu to convert the data to a
format that is readable by LabVIEW 5.0 and later. In Convert 4.x Data mode, this
function interprets x as if the data is stored in LabVIEW 4.x data storage layout and
displays the icon for this function with a red 4.x on it. LabVIEW 4.x and earlier stores
Boolean data in two bytes unless the data is in an array, in which case LabVIEW stores
each Boolean element in a single bit. LabVIEW 5.0 and later stores Boolean values in a
single byte, regardless of whether it is in an array. National Instruments recommends
reworking any application that uses the Convert 4.x Data mode as a long term
solution.
Converts the anything input to a flattened data string of binary values. You also can
use this function to convert the byte order, or endian format, of the data in the
flattened data string.
Inputs/Outputs
• anything —
anything contains the data you want to convert to a UTF-8 JSON string. This input accepts arrays
and clusters of Booleans, floating-point numbers, and strings. anything can also accept an array
of clusters, or a cluster of arrays, of these data types. This input does not support other data
types, such as enums, refnums, file paths, and fixed-point numbers.
Cluster elements may be named or unnamed, but not a combination of both. If cluster elements
are named, then each name must be unique to that cluster. If you wire an unsupported data
type, LabVIEW breaks the VI.
prepend array or string size? specifies whether LabVIEW includes data size information at the
beginning of data string when anything is an array or string. If prepend array or string size? is
FALSE, LabVIEW does not include the size information. The default is TRUE.
The string created by the Flatten To String function is a LabVIEW string. If prepend array or
string size? is TRUE, the LabVIEW string has a 4-byte (I32) number at the beginning of the string
that tells how long the string is. This enables a LabVIEW string to include NULL characters [ASCII
character zero (0)]. If you pass a LabVIEW string to external code and use it as a C string, NULL
characters embedded in the string may cause problems, since C strings are interpreted as
terminating at the first NULL character. prepend array or string size? only controls the top-level
data size information. Arrays and strings in hierarchical data types such as clusters always
include size information.
byte order sets the endian format of the data in the resulting flattened string. Byte order, or
endian form, indicates whether integers are represented in memory from most significant byte
to least significant byte or vice versa.
big-endian, network order (default)—The most significant byte occupies the lowest memory
0
address.
1 native, host order—Uses the byte-ordering format of the host computer.
2 little-endian—The least significant byte occupies the lowest memory address.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data string —
554 ni.com
Functions
data string might contain header information before each non-scalar component describing its
size. Such a string can be stored in a file or sent over a network. If you send the string over a
network, the receiver must be able to interpret it. Usually, LabVIEW stores data as
noncontiguous, indirectly referenced pieces. This function copies the data in LabVIEW form into
a contiguous buffer data string. Use the Unflatten From String function to convert a data string
back to any data type.
type string (7.x only) is visible only if the terminal is already wired from a previous version of
LabVIEW or if you right-click the function and select Convert 7.x Data from the shortcut menu.
type string (7.x only) is an encoded binary description of data string. type string (7.x only) is
not the same as the type input in the Unflatten From String function.
If type string (7.x only) cannot represent the data type wired to anything, this function returns
an error.
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Type Cast function for conversion of data types that does not result in
flattened data.
If you need to flatten type descriptor data to a string that is readable by LabVIEW 7.x or
earlier, right-click this function and select Convert 7.x Data from the shortcut menu. In
Convert 7.x Data mode, this function shows the type string (7.x only) output and
displays the icon for this function with a red 7.x on it. LabVIEW 7.x and earlier stores
type descriptors in 16-bit flat representation. LabVIEW 8.0 and later stores type
descriptors in 32-bit flat representation. National Instruments recommends reworking
any application that uses the Convert 7.x Data mode as a long term solution.
If you need to flatten Boolean data to a string that is readable by LabVIEW 4.x or
earlier, right-click this function and select Convert 4.x Data from the shortcut menu.
The Convert 4.x Data shortcut menu item is visible only if you wire Boolean data to
anything. In Convert 4.x Data mode, this function writes the data in LabVIEW 4.x data
storage layout and displays the icon for this function with a red 4.x on it. LabVIEW 4.x
and earlier stores Boolean data in two bytes unless the data is in an array, in which
case LabVIEW stores each Boolean element in a single bit. LabVIEW 5.0 and later stores
Boolean values in a single byte, regardless of whether it is in an array. National
Instruments recommends reworking any application that uses the Convert 4.x Data
mode as a long term solution.
If you use this function to flatten variant data, LabVIEW flattens the variant and all its
contents, including attributes. However, if you use the Variant To Flattened String
function, LabVIEW flattens only the variant and discards any attributes.
If you use this function to flatten data from a custom control or indicator that you
saved as a type definition, the function strips the type definition of its type definition
wrapper. If you do not want to strip this wrapper, right-click the function and select
Expose Typedefs from the shortcut menu. The Expose Typedefs shortcut menu item is
visible only if you wire data to type string (7.x only).
Converts binary string to the type wired to type. binary string should contain
flattened data of the type wired to type. You also can use this function to specify the
byte order, or endian format, of the data in the binary string.
Inputs/Outputs
• type —
type is not the type string output in the Flatten To String function.
• binary string —
binary string is a flattened string that is typically generated by the Flatten To String function.
556 ni.com
Functions
If data includes array or string size? is TRUE, binary string contains header information
describing its size.
data includes array or string size? indicates whether LabVIEW reads data size information from
the beginning of an incoming array or string. If data includes array or string size? is TRUE,
LabVIEW reads the size information from the beginning of binary string. If data includes array or
string size? is FALSE, LabVIEW detects the size information from the memory size of binary
string.
The default is TRUE. data includes array or string size? only accesses the top-level data size
information. Arrays and strings in hierarchical data types such as clusters always include size
information.
byte order indicates the endian format of the data in the incoming flattened string. Byte order,
or endian form, indicates whether integers are represented in memory from most-significant
byte to least-significant byte or vice versa.
big-endian, network order (default)—The most-significant byte occupies the lowest memory
0
address.
1 native, host order—Uses the byte-ordering format of the host computer.
2 little-endian—The least-significant byte occupies the lowest memory address.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
rest of the binary string contains any leftover bytes that this function did not convert. This
function does not convert all the bytes if the size of binary string is not a multiple of the size of
type.
• value —
value returns binary string as unflattened data of the same data type and structure as type.
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Type Cast function for conversion of data types that does not require already-
flattened data.
If you need to unflatten data from a string created by LabVIEW 4.x or earlier, right-click
this function and select Convert 4.x Data from the shortcut menu. In Convert 4.x Data
mode, this function interprets the data in LabVIEW 4.x data storage layout and displays
the icon for this function with a red 4.x on it. LabVIEW 4.x and earlier stores Boolean
data in two bytes unless the data is in an array, in which case LabVIEW stores each
Boolean element in a single bit. LabVIEW 5.0 and later stores Boolean values in a single
byte, regardless of whether it is in an array. National Instruments recommends
reworking any application that uses the Convert 4.x Data mode as a long term
solution.
Examples
Returns the mantissa and exponent of the input numeric value such that number =
mantissa * 2^exponent.
If number is 0, both mantissa and exponent are 0. Otherwise, the absolute value of
mantissa is greater than or equal to 1 and less than 2, and the value of exponent is an
integer. The connector pane displays the default data types for this polymorphic
function.
558 ni.com
Functions
Inputs/Outputs
• number —
• mantissa —
• exponent —
Rotates each bit in the input value one bit to the left (from least significant to most
significant bit), inserts carry in the low-order bit, and returns the most significant bit.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• carry —
• value —
• value —
The data type of the output value is determined by the data type of the input value.
Rotates each bit in value one bit to the right (from most significant to least significant),
inserts carry in the high-order bit, and returns the least significant bit.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• carry —
• value —
• value —
The data type of the output value is determined by the data type of the input value.
The connector pane displays the default data types for this polymorphic function.
560 ni.com
Functions
Inputs/Outputs
• y—
y can be any numeric representation. If y is greater than 0, the function shifts x left y bits (from
least significant to most significant bit) and inserts zeros in the low-order bits. If y is less than 0,
the function shifts x right y bits in the positive direction (from most significant to least significant
bit) and inserts zeros in the high-order bits.
• x—
x can be any integer representation. If x is an 8-, 16-, 32-, or 64-bit integer and y is greater than 8,
16, or 32, or 64 or is less than –8, –16, –32, or –64, respectively, the output value is all zeros.
• x << y —
x << y is the result of the shift and has the same numeric representation as x.
Rotate Function
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• y—
If y is greater than 0, the function shifts the first y bits at the left end of x to the right end. If y is
less than 0, the function shifts the first y bits at the right end of x to the left end.
• x—
If x is an 8-, 16-, 32-, or 64-bit integer, then for any value of y, y ± 8, y ± 16, y ± 32, or y ± 64 yields
the same output value, respectively, as y.
The data type of x rotated left by y is determined by the data type of the x input.
x rotated left by
y x Comments
y
3 This function shifts the first one bit on the left, 0, to the right
1 6 (00000110)
(00000011) end.
3 This function shifts the first two bits on the left, 00, to the right
2 12 (00001100)
(00000011) end.
3 This function shifts the first three bits on the right, 011, to the
–3 96 (01100000)
(00000011) left end.
Inputs/Outputs
• x—
x can be an 8-, 16-, 32-, or 64-bit integer, or an array or cluster of those representations.
• hi(x) —
hi(x) and lo(x) are integers that are half the width of x. hi(x) and lo(x) are 8-bit, 16-bit, or 32-bit
562 ni.com
Functions
• lo(x) —
If you wire an 8-bit integer input, this function does not split the number. Instead,
LabVIEW returns the same 8-bit number in the lo(x) output, and returns zero for the
hi(x) output.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• hi —
• lo —
• (hi.lo) —
(hi.lo) is an integer twice the width of hi and lo. (hi.lo) is a 16-, 32-, or 64-bit unsigned integer or
an array or cluster of those representations. If hi and lo are of different widths, (hi.lo) is twice the
width of the widest number.
Swaps the high-order 8 bits and the low-order 8 bits for every word in data.
If you want to byte-swap floating-point or fixed-point numbers, use the Type Cast
function to cast the value to a 1D array of bytes by wiring an array of numeric controls
to the type input and the floating-point or fixed-point numbers to the x input. Then
use the Reverse 1D Array function to convert the array to a floating-point number with
the elements reversed. The connector pane displays the default data types for this
polymorphic function.
Inputs/Outputs
• data —
data is an integer, an array of integers, or a cluster containing integers that you want to byte
swap. If data is a cluster that contains integers, this function swaps only the integer elements of
the cluster. Neither refnums or variants are valid inputs. Both will break the input wire.
• byte swapped —
Swaps the high-order 16 bits and the low-order 16 bits for every long integer in data.
Inputs/Outputs
• data —
564 ni.com
Functions
data is an integer, an array of integers, or a cluster containing integers that you want to word
swap. In the case of a cluster that contains integers, this function swaps only the integer
elements of the cluster.
If you want to byte-swap floating-point or fixed-point numbers, use the Type Cast function to
cast the value to a 1D array of bytes. Then use the Reverse 1D Array function and type cast it back
to a floating-point or fixed-point number. Neither refnums or variants are valid inputs. Both will
break the input wire.
• word swapped —
Computes the message digest on a byte array. You must manually select the
polymorphic instance you want to use.
Inputs/Outputs
• buffer —
buffer specifies the byte array, or buffer, for which you want to compute the message digest.
• digest —
digest returns the SHA-256 message digest of the byte array, or buffer, as a hexadecimal string.
Inputs/Outputs
• buffer —
buffer specifies the byte array, or buffer, for which you want to compute the message digest.
• digest —
digest returns the SHA-224 message digest of the byte array, or buffer, as a hexadecimal string.
566 ni.com
Functions
Inputs/Outputs
• buffer —
buffer specifies the byte array, or buffer, for which you want to compute the message digest.
• digest —
digest returns the SHA-384 message digest of the byte array, or buffer, as a hexadecimal string.
Inputs/Outputs
• buffer —
buffer specifies the byte array, or buffer, for which you want to compute the message digest.
• digest —
digest returns the SHA-512 message digest of the byte array, or buffer, as a hexadecimal string.
Inputs/Outputs
• buffer —
buffer specifies the byte array, or buffer, for which you want to compute the message digest.
• digest —
digest returns the SHA-512/256 message digest of the byte array, or buffer, as a hexadecimal
string.
Inputs/Outputs
• buffer —
buffer specifies the byte array, or buffer, for which you want to compute the message digest.
• digest —
digest returns the SHA-512/224 message digest of the byte array, or buffer, as a hexadecimal
string.
568 ni.com
Functions
Inputs/Outputs
• buffer —
buffer specifies the byte array, or buffer, for which you want to compute the message digest.
• digest —
digest returns the SHA3-224 message digest of the byte array, or buffer, as a hexadecimal string.
Inputs/Outputs
• buffer —
buffer specifies the byte array, or buffer, for which you want to compute the message digest.
• digest —
digest returns the SHA3-256 message digest of the byte array, or buffer, as a hexadecimal string.
Inputs/Outputs
• buffer —
buffer specifies the byte array, or buffer, for which you want to compute the message digest.
• digest —
digest returns the SHA3-384 message digest of the byte array, or buffer, as a hexadecimal string.
Inputs/Outputs
• buffer —
buffer specifies the byte array, or buffer, for which you want to compute the message digest.
• digest —
digest returns the SHA3-512 message digest of the byte array, or buffer, as a hexadecimal string.
570 ni.com
Functions
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
• abs(x) —
When x is of the form x = a + bi, that is, when x is complex, the following equation defines abs(x):
When you wire matrix data as an input to this function, a VI that includes subVIs that
work with the matrix data type replaces the function. The resulting VI has the same
icon but contains a matrix-specific algorithm. The node remains a VI if you disconnect
the matrix from the inputs. Wire other data types as inputs to restore the original
function. If you wire a data type to a function and that data type causes a basic math
operation to fail, the function returns a NaN.
If the absolute value of x is outside the range of the data type of x, abs(x) overflows to
a value within the range of the data type. For example, if x is an 8-bit integer and the
value of x is -128, abs(x) returns -128 since 128 is outside the range of 8-bit integers,
-128 to 127.
Examples
• labview\examples\Numerics\Numeric Functions.vi
Rounds the input to the nearest integer. If the value of the input is midway between
two integers, the function returns the nearest even integer.
Note Note IEEE standards determine the rounding method for this function.
This method produces more accurate values with no positive or negative bias
because it does not round all integers in the same direction.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
nearest integer value is the resulting nearest integer to number. If the input is a time stamp
value, the function rounds to the nearest second.
When number is in the form of a + bi, that is, when number is complex, the function returns a
complex number defined by the nearest integer to the real and imaginary parts of number. The
following equation defines nearest integer value: nearest integer value(x) = nearest integer
value(a) + i * nearest integer value(b)
Examples
• labview\examples\Numerics\Numeric Functions.vi
572 ni.com
Functions
For example, if the input is 3.8, the result is 3. If the input is –3.8, the result is –4. The
connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
floor(x): largest int ≤ x is the resulting lowest integer, closest to x. If the input is a time stamp
value, the function rounds to the previous second.
When x is of the form x = a + bi, that is, when x is complex, the function returns a complex
number defined by the next lowest integers to the real and imaginary parts of x. The following
equation defines floor(x): largest int ≤ x: floor(x) = floor(a) + i floor(b)
For example, if the input is 3.1, the result is 4. If the input is –3.1, the result is –3. The
connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
ceil(x): smallest int >= x is the resulting highest integer, closest to x. If the input is a time stamp
value, the function rounds to the next second.
When x is of the form x = a + bi, that is, when x is complex, the function returns a complex
number defined by the next highest integers to the real and imaginary parts of x. The following
equation defines ceil(x): smallest int >= x: ceil(x) = ceil(a) + i ceil(b)
Inputs/Outputs
• n—
n can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
If n is a floating-point number, this function rounds n before it scales x (0.5 rounds to 0; 0.51
rounds to 1). If n is a 64-bit integer, LabVIEW coerces n to a 32-bit integer.
• x—
x can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• x*2^n —
If you wire a fixed-point value to this function, the resulting output value retains the
574 ni.com
Functions
fixed-point configuration settings of the input value. However, the value is likely to
truncate or wrap.
Examples
• labview\examples\Numerics\Numeric Functions.vi
Complex
Use the Complex functions to create complex numbers from two values given in
rectangular or polar and to break a complex number into its rectangular or polar
components.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x + iy —
• x - iy —
The dimensions of two matrices that you want to combine must be the same.
Otherwise, this function returns an empty complex matrix. The connector pane
displays the default data types for this polymorphic function.
Inputs/Outputs
• r—
r can be a scalar number, an array or cluster of numbers, array of clusters of numbers, and so on.
• theta —
576 ni.com
Functions
theta can be a scalar number, an array or cluster of numbers, array of clusters of numbers, and
so on. theta is in radians.
• r * e^(i*theta) —
r * e^(i*theta) is of the same data type structure as r and theta, with complex representation
instead of scalar.
Given z in rectangular form z = a + bi, this function converts the polar components
according to the following equation:
z = r*cos(theta) + i r*sin(theta)
When you wire matrix data as an input to this function, a VI that includes subVIs that
work with the matrix data type replaces the function. The resulting VI has the same
icon but contains a matrix-specific algorithm. The node remains a VI if you disconnect
the matrix from the input(s). Wire other data types as inputs to restore the original
function. If you wire a data type to a function and that data type causes a basic math
operation to fail, the function returns an empty matrix or NaN.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• r * e^(i*theta) —
• r—
r is of the same data type structure as r * e^(i*theta), with scalar representation instead of
complex.
• theta —
theta is of the same data type structure as r * e^(i*theta), with scalar representation instead of
complex. theta is in radians.
Given z in rectangular form z = a + bi, this function converts the polar components of z
= r * e^(i*theta) according to the following equations:
When you wire matrix data as an input to this function, a VI that includes subVIs that
work with the matrix data type replaces the function. The resulting VI has the same
icon but contains a matrix-specific algorithm. The node remains a VI if you disconnect
the matrix from the input(s). Wire other data types as inputs to restore the original
function. If you wire a data type to a function and that data type causes a basic math
operation to fail, the function returns an empty matrix or NaN.
The dimensions of two matrices that you want to combine must be the same.
Otherwise, this function returns an empty complex matrix. The connector pane
displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• y—
578 ni.com
Functions
y can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• x + iy —
x + iy has the same structure as the input, with complex representation instead of scalar.
When you wire matrix data as an input to this function, a VI that includes subVIs that
work with the matrix data type replaces the function. The resulting VI has the same
icon but contains a matrix-specific algorithm. The node remains a VI if you disconnect
the matrix from the input(s). Wire other data types as inputs to restore the original
function. If you wire a data type to a function and that data type causes a basic math
operation to fail, the function returns an empty matrix or NaN.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x + iy —
• x—
x is of the same data type structure as x + iy, with scalar representation instead of complex.
• y—
y is of the same data type structure as x + iy, with scalar representation instead of complex.
When you wire matrix data as an input to this function, a VI that includes subVIs that
work with the matrix data type replaces the function. The resulting VI has the same
icon but contains a matrix-specific algorithm. The node remains a VI if you disconnect
the matrix from the input(s). Wire other data types as inputs to restore the original
function. If you wire a data type to a function and that data type causes a basic math
operation to fail, the function returns an empty matrix or NaN.
Converts the rectangular components of a complex number into its polar components.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• y—
y can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• r—
• theta —
This function converts the rectangular components to polar components using the
following equations:
580 ni.com
Functions
Converts the polar components of a complex number into its rectangular components.
Inputs/Outputs
• r—
r can be a scalar number, an array or cluster of numbers, array of clusters of numbers, and so on.
• theta —
theta can be a scalar number, an array or cluster of numbers, array of clusters of numbers, and
so on. theta is in radians.
• x—
• y—
x = r*cos(theta) y = r*sin(theta)
If x is negative, the square root is NaN unless x is complex. If x is a matrix, this function
takes the matrix square root of x. The connector pane displays the default data types
for this polymorphic function.
Note If you wire a value that has a unit with an odd exponent to the square
root function, the wire breaks because LabVIEW does not support units with
fractional exponents. For example, 15m² is an acceptable input value, but
15m3 is not an acceptable input value.
Inputs/Outputs
• x—
x can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• sqrt(x) —
If x is less than 0, sqrt(x) is not a number (NaN), unless x is complex. When x is of the form x = a +
bi, that is, when x is complex, the function defines the magnitude and phase with the following
equations: where |x| is the magnitude of x and arg(x) is the
Note You can manually configure this function to output data of a type you want. To
specify the output data type, right-click the function and select Properties to display
the Object Properties dialog box. On the Output Configuration page, click the
Representation icon and select the data type you want. A blue coercion dot appears
on the output terminal of the function to indicate that you have configured the
output data type.
When you wire matrix data as an input to this function, a VI that includes subVIs that
work with the matrix data type replaces the function. The resulting VI has the same
icon but contains a matrix-specific algorithm. The node remains a VI if you disconnect
the matrix from the input(s). Wire other data types as inputs to restore the original
function. If you wire a data type to a function and that data type causes a basic math
operation to fail, the function returns an empty matrix or NaN.
582 ni.com
Functions
Fixed-Point Details
If you wire a signed fixed-point value to this function, the function converts the signed
number into a floating-point number and performs the square root operation. By
default, LabVIEW configures the integer word length of the square root to avoid
overflow. However, because the precision of the square root can be infinite, rounding
conditions always occur. Use the Numeric Node Properties dialog box to configure
how LabVIEW handles overflow and rounding of fixed-point data.
Examples
• labview\examples\Numerics\Numeric Functions.vi
Square Function
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• x^2 —
Note You can manually configure this function to output data of a type you want. To
specify the output data type, right-click the function and select Properties to display
the Object Properties dialog box. On the Output Configuration page, click the
Representation icon and select the data type you want. A blue coercion dot appears
on the output terminal of the function to indicate that you have configured the
output data type.
If you wire fixed-point values to Numeric functions such as Add, Subtract, Multiply, and
Square, the functions usually return values that do not lose any bits of word length.
However, if the operation creates a value that exceeds the maximum word length that
LabVIEW accepts, overflow or rounding conditions can occur. LabVIEW accepts a
maximum word length of 64 bits. Use the Numeric Node Properties dialog box to
configure how LabVIEW handles overflow or rounding of fixed-point data.
Examples
• labview\examples\Numerics\Numeric Functions.vi
Negate Function
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
• -x —
584 ni.com
Functions
Examples
• labview\examples\Numerics\Numeric Functions.vi
Reciprocal Function
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a scalar number, array or cluster of numbers, array of clusters of numbers, and so on.
• 1/x —
Fixed-Point Details
If you wire a fixed-point value to this function, by default LabVIEW configures the
integer word length of the reciprocal to avoid overflow. However, because the
precision of the reciprocal can be infinite, rounding conditions always occur. Use the
Numeric Node Properties dialog box to configure how LabVIEW handles rounding of
fixed-point data. This function always uses the Saturate overflow mode to handle
overflow.
Examples
• labview\examples\Numerics\Numeric Functions.vi
Sign Function
Note For nonzero complex numbers, this function returns a complex value
with the same phase as the input and with a magnitude of 1.
Text-based programming languages typically call this function signum or sgn. The
connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
• -1, 0, 1 —
–1, 0, 1 returns 1 if the input value is greater than 0, returns 0 if the input value is equal to 0, and
returns –1 if the input value is less than 0.
When number is in the form of a + bi, that is, when number is complex, the following defines -1,
0, 1:
Examples
586 ni.com
Functions
• labview\examples\Numerics\Numeric Functions.vi
Scaling
Use the Scaling VIs to convert voltage readings to other temperature or strain units.
Converts a voltage you read from an RTD into temperature in Celsius. Wire data to
Convert RTD
the RTDvolts input to determine the polymorphic instance to use or manually
Reading
select the instance.
Convert Strain Converts a voltage read from a strain gauge to units of strain. Wire data to the Vsg
Gauge input to determine the polymorphic instance to use or manually select the
Reading instance.
Radians to
Converts data from radians to degrees.
Degrees
Degrees to
Converts data from degrees to radians.
Radians
Converts a voltage you read from an RTD into temperature in Celsius. Wire data to the
RTDvolts input to determine the polymorphic instance to use or manually select the
instance.
Inputs/Outputs
• Ro —
588 ni.com
Functions
• RTDvolts —
• Iex —
Iex is the excitation current you used with the RTD. This parameter defaults to an excitation
current of 0.15 mA.
• A—
A is a coefficient of the Callendar Van-Dusen equation that fits your RTD. The default coefficients
are those for the European curve (also called the DIN 43760 standard).
• B—
B is a coefficient of the Callendar Van-Dusen equation that fits your RTD. The default coefficients
of this equation are those for the European curve (also called the DIN 43760 standard).
• RTDtemp —
Inputs/Outputs
• Ro —
• RTDvolts —
• Iex —
Iex is the excitation current you used with the RTD. This parameter defaults to an excitation
current of 0.15 mA.
• A—
A is a coefficient of the Callendar Van-Dusen equation that fits your RTD. The default coefficients
are those for the European curve (also called the DIN 43760 standard).
• B—
B is a coefficient of the Callendar Van-Dusen equation that fits your RTD. The default coefficients
of this equation are those for the European curve (also called the DIN 43760 standard).
• RTDtemp —
Converts a voltage read from a strain gauge to units of strain. Wire data to the Vsg
input to determine the polymorphic instance to use or manually select the instance.
The conversion formula the VI uses is based solely on the bridge configuration. The
following illustrations show the seven bridge configurations you can use and the
corresponding formulas. For all bridge configurations, the VI uses the following
formula to obtain Vr.
590 ni.com
Functions
In the circuit diagrams, VOUT is the voltage you measure and pass to the conversion VI
as the Vsg. In the quarter-bridge and half-bridge configurations, R1 and R2 are dummy
resistors that are not directly incorporated into the conversion formula.
592 ni.com
Functions
Inputs/Outputs
• Rg (120) —
Rg is the strain gauge nominal resistance value in ohms. The default is 120 Ω.
• GF (2.0) —
• v (0.0) —
v is Poisson's Ratio. This parameter is only required for certain bridge configurations.
• Vsg (0.0) —
Bridge Configuration indicates the type of bridge configuration in which the strain gauge is
mounted. The default is Half Bridge II.
0 Qtr Bridge I
1 Qtr Bridge II
2 Half Bridge I
3 Half Bridge II (default)
4 Full Bridge I
5 Full Bridge II
6 Full Bridge III
• Vex (3.33) —
• Vinit (0.0) —
Vinit is the unstrained voltage of the strain gauge after you mount it in its bridge configuration.
Read this voltage at the beginning of your application and save it to pass to this VI.
• Rl (0.0) —
Rl is the lead resistance. The Rl parameter defaults to 0. In many cases, the lead resistance is
negligible and you can leave this terminal unwired.
• Strain —
The conversion formula the VI uses is based solely on the bridge configuration. The
following illustrations show the seven bridge configurations you can use and the
corresponding formulas. For all bridge configurations, the VI uses the following
formula to obtain Vr.
In the circuit diagrams, VOUT is the voltage you measure and pass to the conversion VI
as the Vsg. In the quarter-bridge and half-bridge configurations, R1 and R2 are dummy
resistors that are not directly incorporated into the conversion formula.
594 ni.com
Functions
596 ni.com
Functions
Inputs/Outputs
• Rg (120) —
Rg is the strain gauge nominal resistance value in ohms. The default is 120 Ω.
• GF (2.0) —
• v (0.0) —
v is Poisson's Ratio. This parameter is only required for certain bridge configurations.
• Vsg (0.0) —
Bridge Configuration indicates the type of bridge configuration in which the strain gauge is
mounted. The default is Half Bridge II.
0 Qtr Bridge I
1 Qtr Bridge II
2 Half Bridge I
3 Half Bridge II (default)
4 Full Bridge I
5 Full Bridge II
6 Full Bridge III
• Vex (3.33) —
• Vinit (0.0) —
Vinit is the unstrained voltage of the strain gauge after you mount it in its bridge configuration.
Read this voltage at the beginning of your application and save it to pass to this VI.
• Rl (0.0) —
Rl is the lead resistance. The Rl parameter defaults to 0. In many cases, the lead resistance is
negligible and you can leave this terminal unwired.
• Strain —
The conversion formula the VI uses is based solely on the bridge configuration. The
following illustrations show the seven bridge configurations you can use and the
corresponding formulas. For all bridge configurations, the VI uses the following
formula to obtain Vr.
In the circuit diagrams, VOUT is the voltage you measure and pass to the conversion VI
as the Vsg. In the quarter-bridge and half-bridge configurations, R1 and R2 are dummy
resistors that are not directly incorporated into the conversion formula.
598 ni.com
Functions
600 ni.com
Functions
The Convert Thermistor Reading VI has two modes of operation for use with different
types of thermistor circuits. The following illustration shows how the thermistor can be
connected to a voltage reference.
The following illustration shows a circuit where the thermistor is excited by a constant
current source.
If the thermistor is excited by voltage, the following equation shows the relationship of
the thermistor resistance, RT, to the input values.
If the thermistor is excited by current, the following equation shows the relationship of
the thermistor resistance, RT, to the input values.
The following equation shows the standard formula the VI uses for converting a
thermistor resistance to temperature.
The values used by this VI for A, B, and C are given below. If you are using a thermistor
with different values for A, B, and C (refer to the thermistor data sheet), you can edit
the VI diagram to use different A, B, and C values.
A = 1.295361E-3
B = 2.343159E-4
C = 1.018703E-7
602 ni.com
Functions
Inputs/Outputs
• Type of Excitation —
Type of Excitation distinguishes the two modes of operation of the VI. This VI defaults to the
Voltage Reference mode. Use the Voltage Reference (VREF) and the R1 values only in this
mode. You use the Current Excitation (IEX) value only in the Current Reference mode.
0 Voltage Reference
1 Current Reference
• Voltage —
• Voltage Reference —
Voltage Reference (VREF) is the reference you apply across a resistor of known value in series
with your thermistor. The default is 2.5 V. Use this input only when you set Type of Excitation to
Voltage Reference.
• R1 —
R1 is the value of the resistor in series with your thermistor expressed in Ohms. The default is 5
kΩ. Use this input only when you set Type of Excitation to Voltage Reference.
• Excitation Current —
Excitation Current (IEX) is the current excitation applied to the thermistor. The default is 100 µA.
Use this input only when you set Type of Excitation to Current Reference.
0 Celsius
1 Fahrenheit
2 Kelvin
3 Rankine
• Temperature —
Temperature is the return temperature value in the units specified in Temperature Units.
The Convert Thermistor Reading VI has two modes of operation for use with different
types of thermistor circuits. The following illustration shows how the thermistor can be
connected to a voltage reference.
The following illustration shows a circuit where the thermistor is excited by a constant
current source.
If the thermistor is excited by voltage, the following equation shows the relationship of
the thermistor resistance, RT, to the input values.
If the thermistor is excited by current, the following equation shows the relationship of
the thermistor resistance, RT, to the input values.
604 ni.com
Functions
The following equation shows the standard formula the VI uses for converting a
thermistor resistance to temperature.
The values used by this VI for A, B, and C are given below. If you are using a thermistor
with different values for A, B, and C (refer to the thermistor data sheet), you can edit
the VI diagram to use different A, B, and C values.
A = 1.295361E-3
B = 2.343159E-4
C = 1.018703E-7
Inputs/Outputs
• Type of Excitation —
Type of Excitation distinguishes the two modes of operation of the VI. This VI defaults to the
Voltage Reference mode. Use the Voltage Reference (VREF) and the R1 values only in this
mode. You use the Current Excitation (IEX) value only in the Current Reference mode.
0 Voltage Reference
1 Current Reference
• Voltage —
• Voltage Reference —
Voltage Reference (VREF) is the reference you apply across a resistor of known value in series
with your thermistor. The default is 2.5 V. Use this input only when you set Type of Excitation to
Voltage Reference.
• R1 —
R1 is the value of the resistor in series with your thermistor expressed in Ohms. The default is 5
kΩ. Use this input only when you set Type of Excitation to Voltage Reference.
• Excitation Current —
Excitation Current (IEX) is the current excitation applied to the thermistor. The default is 100 µA.
Use this input only when you set Type of Excitation to Current Reference.
0 Celsius
1 Fahrenheit
2 Kelvin
3 Rankine
• Temperature —
Temperature is the return temperature value in the units specified in Temperature Units.
The Convert Thermistor Reading VI has two modes of operation for use with different
606 ni.com
Functions
types of thermistor circuits. The following illustration shows how the thermistor can be
connected to a voltage reference.
The following illustration shows a circuit where the thermistor is excited by a constant
current source.
If the thermistor is excited by voltage, the following equation shows the relationship of
the thermistor resistance, RT, to the input values.
If the thermistor is excited by current, the following equation shows the relationship of
the thermistor resistance, RT, to the input values.
The following equation shows the standard formula the VI uses for converting a
thermistor resistance to temperature.
The values used by this VI for A, B, and C are given below. If you are using a thermistor
with different values for A, B, and C (refer to the thermistor data sheet), you can edit
A = 1.295361E-3
B = 2.343159E-4
C = 1.018703E-7
Converts a voltage reading from a thermocouple into a temperature value. Wire data to
the Voltage Waveform (waveform), Voltage Array (array), or Thermocouple Voltage
(scalar) input to determine the polymorphic instance to use or manually select the
instance.
Note This VI does not work with the NI 9211 C Series module. Instead, use
the NI 9211 Convert to Temperature VI located in the labview\examples\
CompactRIO\Module Specific\NI 9211\NI 9211 Support
Files.llb directory.
608 ni.com
Functions
instance.
Note This VI does not work with the NI 9211 C Series module. Instead, use
the NI 9211 Convert to Temperature VI located in the labview\examples\
CompactRIO\Module Specific\NI 9211\NI 9211 Support
Files.llb directory.
Inputs/Outputs
• Temperature Units (C) —
0 Celsius
1 Fahrenheit
2 Kelvin
3 Rankine
• Voltage Waveform —
• ThermocoupleType —
ThermocoupleType can be B, E, J, K, R, S, T, or N.
This input accepts the following values. Refer to your thermocouple user manual for more
information about thermocouple types.
0 B
1 E
2 J
3 K
4 R
5 S
6 T
7 N
• CJC Voltage —
CJC Voltage is the cold-junction compensation reference voltage. The CJC Voltage parameter is
either the IC sensor or the thermistor sensor, as specified by CJC Sensor.
• CJC Sensor(0) —
CJC Sensor is the type of cold-junction compensation sensor you are using.
A CJC Sensor value of 0 selects the IC sensor. A CJC Sensor value of 1 selects the thermistor
sensor.
• Type of Excitation —
0 Voltage Reference
1 Current Reference
• Temperature Waveform —
Temperature Waveform returns the linearized temperature value in the units specified in
Temperature Units.
610 ni.com
Functions
Note This VI does not work with the NI 9211 C Series module. Instead, use
the NI 9211 Convert to Temperature VI located in the labview\examples\
CompactRIO\Module Specific\NI 9211\NI 9211 Support
Files.llb directory.
Inputs/Outputs
• Temperature Units (C) —
0 Celsius
1 Fahrenheit
2 Kelvin
3 Rankine
• Voltage Array —
• ThermocoupleType —
ThermocoupleType can be B, E, J, K, R, S, T, or N.
This input accepts the following values. Refer to your thermocouple user manual for more
information about thermocouple types.
0 B
1 E
2 J
3 K
4 R
5 S
6 T
7 N
• CJC Voltage —
CJC Voltage is the cold-junction compensation reference voltage. The CJC Voltage parameter is
either the IC sensor or the thermistor sensor, as specified by CJC Sensor.
• CJC Sensor(0) —
CJC Sensor is the type of cold-junction compensation sensor you are using.
A CJC Sensor value of 0 selects the IC sensor. A CJC Sensor value of 1 selects the thermistor
sensor.
• Type of Excitation —
0 Voltage Reference
1 Current Reference
• Temperature Array —
Temperature Array returns the linearized temperature value in the units specified in
Temperature Units.
612 ni.com
Functions
Note This VI does not work with the NI 9211 C Series module. Instead, use
the NI 9211 Convert to Temperature VI located in the labview\examples\
CompactRIO\Module Specific\NI 9211\NI 9211 Support
Files.llb directory.
Inputs/Outputs
• Temperature Units (C) —
0 Celsius
1 Fahrenheit
2 Kelvin
3 Rankine
• Thermocouple Voltage —
• ThermocoupleType —
ThermocoupleType can be B, E, J, K, R, S, T, or N.
This input accepts the following values. Refer to your thermocouple user manual for more
information about thermocouple types.
0 B
1 E
2 J
3 K
4 R
5 S
6 T
7 N
• CJC Voltage —
CJC Voltage is the cold-junction compensation reference voltage. The CJC Voltage parameter is
either the IC sensor or the thermistor sensor, as specified by CJC Sensor.
• CJC Sensor(0) —
CJC Sensor is the type of cold-junction compensation sensor you are using.
A CJC Sensor value of 0 selects the IC sensor. A CJC Sensor value of 1 selects the thermistor
sensor.
• Type of Excitation —
0 Voltage Reference
1 Current Reference
• Linearized Temperature —
Linearized Temperature returns the linearized temperature value in the units specified in
Temperature Units.
Radians to Degrees
614 ni.com
Functions
Inputs/Outputs
• —
• —
Degrees to Radians
Inputs/Outputs
• —
• —
Converts data from revolutions per minute (RPM) to radians per second.
Inputs/Outputs
• —
• —
Converts data from radians per second to revolutions per minute (RPM).
Inputs/Outputs
• —
• —
Numeric Constant
Use the numeric constant to pass a numeric value to the block diagram. Set this value
by clicking inside the constant with the Operating tool and typing a value.
If you enter a floating-point number for the numeric constant, the default
representation is a double-precision, floating-point number. If you enter an integer,
the default representation is a 32-bit integer. If you enter a complex number, the
default representation is a double-precision, complex number. For example, if you
enter 123, the representation is a 32-bit integer. If you enter 123., the representation is
a double-precision, floating-point number. You also can change the numeric
representation of a numeric constant.
You cannot change the value of the numeric constant while the VI runs. You can assign
a label to this constant.
Enum Constant
Use the enumerated constant to create a list of string labels with corresponding
integer values you can select on the block diagram.
616 ni.com
Functions
The enumerated constant is similar to a ring constant, but you cannot customize the
corresponding numeric values for the string labels in an enumerated constant. The
numeric value is always an integer from zero to n – 1, where n is the number of values
in the enumerated constant.
Unlike the ring constant, the labels associated with an integer value are part of the
data type. If you pass the value from an enumerated constant to an indicator, LabVIEW
displays the string label instead of the numeric value.
The enumerated constant is only visible on the block diagram and cannot be viewed
on the front panel. You also cannot change its value at run time, so you should select a
value from the enumerated constant before you run the VI. Use an enumerated type
control to allow the user to select an enumerated value from the front panel at run
time.
You select, add or remove, and rearrange values in enumerated constants much the
same way you do for ring and enumerated controls.
Ring Constant
Use the ring constant to create a list of value pairs you can select on the block diagram.
Each value pair consists of a numeric value and corresponding string label.
The ring constant is similar to an enumerated constant, but you can customize the
corresponding numeric values for the string labels in a ring constant. You also can
rearrange the order of the value pairs without changing their numeric values.
If you pass the value from a ring constant to an indicator, LabVIEW displays the
numeric value instead of the string label associated with it.
You select, add or remove, and rearrange values in ring constants much the same way
Alternatively, you can use several of the Signal Generation VIs or the Signal Generation
PtByPt VIs to regenerate the same random sequence. For example, the Uniform White
Noise VI allows you to set a seed number that you can use to initialize the generation
of a pseudorandom pattern.
Inputs/Outputs
• number (0 to 1) —
Generates a random value from a specified range. Wire data to the upper bound or
lower bound input to determine the polymorphic instance to use or manually select
the instance.
618 ni.com
Functions
Generates a random value from a specified range. Wire data to the upper bound or
lower bound input to determine the polymorphic instance to use or manually select
the instance.
Inputs/Outputs
• upper bound (100) —
upper bound specifies the upper limit of the range. The default is 100.
lower bound specifies the lower limit of the range. The default is 0.
• number —
number returns a random number greater than or equal to lower bound and less than or equal
to upper bound.
If upper bound is less than or equal to lower bound, this output returns lower bound.
Generates a random value from a specified range. Wire data to the upper bound or
lower bound input to determine the polymorphic instance to use or manually select
the instance.
Inputs/Outputs
• upper bound (100) —
upper bound specifies the upper limit of the range. The default is 100.
lower bound specifies the lower limit of the range. The default is -100.
• number —
number returns a random number greater than or equal to lower bound and less than or equal
to upper bound.
If upper bound is less than or equal to lower bound, this output returns lower bound.
Generates a random value from a specified range. Wire data to the upper bound or
lower bound input to determine the polymorphic instance to use or manually select
the instance.
Inputs/Outputs
• upper bound (100) —
upper bound specifies the upper limit of the range. The default is 100.
lower bound specifies the lower limit of the range. The default is 0.
• number —
number returns a random number greater than or equal to lower bound and less than upper
bound.
620 ni.com
Functions
If upper bound is less than or equal to lower bound, this output returns lower bound.
Fixed-Point
Palette
Description
Object
Fixed-Point
Scales the fixed-point input to produce an integer output. This function is the
to Integer
equivalent of an arithmetic shift of the input, constrained so that the least significant
Cast
bit of the input becomes the least significant bit of the output.
Function
Integer to Scales the integer input to produce an output with the requested fixed-point type.
Fixed-Point This function is the equivalent of an arithmetic shift of the input with configurable
Cast overflow handling, constrained so that the least significant bit of the input becomes
Function the least significant bit of the output.
Clear Fixed-
Point
Overflow Clears the overflow status of FXP by changing the overflow status of FXP to FALSE.
Status
Function
Remove
Fixed-Point
Overflow Removes the overflow status from FXP.
Status
Function
Include
Fixed-Point
Includes an overflow status with FXP. The value of the overflow status equals the
Overflow
value specified in overflow.
Status
Function
Scales the fixed-point input to produce an integer output. This function is the
equivalent of an arithmetic shift of the input, constrained so that the least significant
bit of the input becomes the least significant bit of the output.
Inputs/Outputs
• fixed-point —
fixed-point is the data you want to scale. fixed-point can be any fixed-point data type.
• integer —
integer is the input data scaled to the smallest compatible integer type that prevents overflow.
This output discards the overflow status.
Examples
• labview\examples\Numerics\Fixed-Point Cast.vi
622 ni.com
Functions
Scales the integer input to produce an output with the requested fixed-point type. This
function is the equivalent of an arithmetic shift of the input with configurable overflow
handling, constrained so that the least significant bit of the input becomes the least
significant bit of the output.
Inputs/Outputs
• fixed-point type —
fixed-point type is the fixed-point data type to which you want to convert the integer data. You
can configure the fixed-point data type in the Data Type page of the Properties dialog box.
LabVIEW ignores any data in the constant or control that you wire to fixed-point type. You also
can leave this input unwired and configure the output data type in the Output Configuration
page of the Properties dialog box.
• integer —
integer is the data you want to scale. integer can be any integer data type.
• fixed-point —
fixed-point is the input data scaled to the requested fixed-point data type.
If the word length of integer is greater than or less than the word length of fixed-point
type, LabVIEW first converts integer to the integer word length of fixed-point type
before casting integer to the requested fixed-point type. The least significant bit of
integer becomes the least significant bit of fixed-point, so rounding is never
necessary.
To override the default behavior of this function, right-click the function and select
Properties from the shortcut menu to display the Output Configuration page of the
Properties dialog box. You can use this dialog box to configure the output settings of
this function.
Examples
• labview\examples\Numerics\Fixed-Point Cast.vi
Clears the overflow status of FXP by changing the overflow status of FXP to FALSE.
Inputs/Outputs
• FXP —
FXP with overflow cleared returns FXP with an overflow status of FALSE. If FXP does not include
an overflow status, FXP with overflow cleared returns FXP unchanged.
• overflow? —
overflow? is TRUE if FXP includes an overflow status and FXP is the result of an operation that
overflowed.
If FXP does not include an overflow status, or if FXP includes an overflow status but is not the
result of an operation that overflowed, overflow? is FALSE.
624 ni.com
Functions
To change the overflow status to FALSE, use the Clear Fixed-Point Overflow Status
function.
Inputs/Outputs
• FXP —
FXP with overflow removed returns FXP without an overflow status. If FXP does not include an
overflow status, FXP with overflow removed returns FXP unchanged.
• overflow? —
overflow? is TRUE if FXP includes an overflow status and FXP is the result of an operation that
overflowed.
If FXP does not include an overflow status, or if FXP includes an overflow status but is not the
result of an operation that overflowed, overflow? is FALSE.
Includes an overflow status with FXP. The value of the overflow status equals the value
specified in overflow.
Inputs/Outputs
• FXP —
• overflow —
overflow specifies whether the overflow status of FXP with overflow included is TRUE or FALSE.
FXP with overflow included returns FXP with an overflow status set to the value specified in
overflow.
Use the DBL numeric constant to pass a double-precision, floating-point numeric value
to the block diagram. Set this value by clicking inside the constant with the Operating
tool and typing a value.
If you enter a floating-point number for the numeric constant, the default
representation is a double-precision, floating-point number. For example, if you enter
123, the representation is a 32-bit integer.
You also can change the numeric representation of a numeric constant. If you enter an
integer, the default representation is a 32-bit integer. For example, if you enter 123.,
the representation is a double-precision, floating-point number. If you enter a complex
number, the default representation is a double-precision, complex number.
You cannot change the value of the numeric constant while the VI runs. You can assign
a label to this constant.
Positive Infinity
LabVIEW converts Inf to the highest value for a data type. For example, converting Inf
626 ni.com
Functions
to a 16-bit signed integer returns the value 32,767, the highest possible value for a
16-bit signed integer.
Machine Epsilon
Represents the round-off error for a floating-point number with a given precision. Use
the machine epsilon constant to compare whether two floating-point numbers are
equivalent.
You can change the numeric representation of this constant by right-clicking the
constant and selecting Representation from the shortcut menu. You also can assign a
label to this constant.
Returns the maximum and minimum values of the input data type.
Inputs/Outputs
• type —
This input accepts any scalar numeric data type and enum.
628 ni.com
Functions
maximum value for type returns the maximum value of the data type wired to type. If type is an
enum, this VI returns the last value of the enum.
For example, if type is a 16-bit unsigned integer, this output returns 32767. If type is an enum
with values {cat, dog, bird}, this output returns bird.
minimum value for type returns the minimum value of the data type wired to type. If type is an
enum, this VI returns the first value of the enum.
For example, if type is a 16-bit unsigned integer, this output returns -32768. If type is an enum
with values {cat, dog, bird}, this output returns cat.
Expression Node
Use the Expression Node to calculate expressions that contain a single variable. The
following built-in functions are allowed in formulas: abs, acos, acosh, asin, asinh, atan,
atanh, ceil, cos, cosh, cot, csc, exp, expm1, floor, getexp, getman, int, intrz, ln, lnp1, log,
log2, max, min, mod, rand, rem, sec, sign, sin, sinc, sinh, sizeOfDim, sqrt, tan, tanh.
Inputs/Outputs
• —
input is the value that the Expression Node uses as the variable.
• —
Expression Nodes are useful when an expression has only one variable but is otherwise
complicated. Use the correct syntax, operators, and functions when creating
Expression Nodes.
Boolean
Use the Boolean functions to perform logical operations on single Boolean values or
arrays of Boolean values.
Palette
Description
Object
Computes the logical AND of the inputs. Both inputs must be Boolean values, numeric
And
values, or error clusters. If both inputs are TRUE, the function returns TRUE. Otherwise,
Function
it returns FALSE.
Computes the logical OR of the inputs. Both inputs must be Boolean values, numeric
Or
values, or error clusters. If both inputs are FALSE, the function returns FALSE.
Function
Otherwise, it returns TRUE.
Exclusive Computes the logical exclusive or (XOR) of the inputs. Both inputs must be Boolean
Or values, numeric values, or error clusters. If both inputs are TRUE or both inputs are
Function FALSE, the function returns FALSE. Otherwise, it returns TRUE.
Not Computes the logical negation of the input. If x is FALSE, the function returns TRUE. If x
Function is TRUE, the function returns FALSE.
Computes the logical NAND of the inputs. Both inputs must be Boolean values,
Not And
numeric values, or error clusters. If both inputs are TRUE, the function returns FALSE.
Function
Otherwise, it returns TRUE.
630 ni.com
Functions
Palette
Description
Object
Computes the logical NOR of the inputs. Both inputs must be Boolean values, numeric
Not Or
values, or error clusters. If both inputs are FALSE, the function returns TRUE.
Function
Otherwise, it returns FALSE.
Not
Computes the logical negation of the logical exclusive or (XOR) of the inputs. Both
Exclusive
inputs must be Boolean values, numeric values, or error clusters. If both inputs are
Or
TRUE or both inputs are FALSE, the function returns TRUE. Otherwise, it returns FALSE.
Function
Negates x and then computes the logical OR of y and the negated x. Both inputs must
Implies
be Boolean values, numeric values, or error clusters. If x is TRUE and y is FALSE, the
Function
function returns FALSE. Otherwise, it returns TRUE.
And Array Returns TRUE if all the elements in Boolean array are TRUE or if Boolean array is
Elements empty. Otherwise, the function returns FALSE. This function accepts an array of any
Function size but returns only a single value based on all values in Boolean array.
Or Array Returns FALSE if all the elements in Boolean array are FALSE or if Boolean array is
Elements empty. Otherwise, the function returns TRUE. This function accepts an array of any
Function size but returns only a single value based on all values in Boolean array.
Converts an integer or fixed-point number to a Boolean array. If you wire an integer to
Number To number, Boolean array returns an array of 8, 16, 32, or 64 elements, depending on the
Boolean number of bits in the integer. If you wire a fixed-point number to number, the size of
Array the array that Boolean array returns equals the word length of the fixed-point number.
Function The 0th element of the array corresponds to the least significant bit of the two's
complement representation of the integer.
Boolean
Converts a Boolean array to an integer or a fixed-point number by interpreting the
Array To
array as the binary representation of the number. The first element of the array
Number
corresponds to the least significant bit in the number.
Function
Boolean To
Converts a Boolean FALSE or TRUE value to a 16-bit integer with a value of 0 or 1,
(0,1)
respectively.
Function
True
Use this constant to provide a value of TRUE to the block diagram.
Constant
False
Use this constant to provide a value of FALSE to the block diagram.
Constant
And Function
Computes the logical AND of the inputs. Both inputs must be Boolean values, numeric
values, or error clusters. If both inputs are TRUE, the function returns TRUE. Otherwise,
it returns FALSE.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x must be a Boolean value or a number.x can be a scalar, array or cluster of numbers or Boolean
values, array of clusters of numbers or Boolean values, and so on. If x is an error cluster, only the
status parameter of the error cluster passes to the input terminal.
• y—
y must be a Boolean value or a number. y can be a scalar, array or cluster of numbers or Boolean
values, arrays of clusters of numbers or Boolean values, and so on. If y is an error cluster, only
the status parameter of the error cluster passes to the input terminal.
• x .and. y? —
x y x .and. y?
T T T
T F F
632 ni.com
Functions
x y x .and. y?
F T F
F F F
Examples
• labview\examples\Booleans\Boolean Functions.vi
Or Function
Computes the logical OR of the inputs. Both inputs must be Boolean values, numeric
values, or error clusters. If both inputs are FALSE, the function returns FALSE.
Otherwise, it returns TRUE.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x must be a Boolean value or a number. x can be a scalar, array or cluster of numbers or Boolean
values, array of clusters of numbers or Boolean values, and so on. If x is an error cluster, only the
status parameter of the error cluster passes to the input terminal.
• y—
y must be a Boolean value or a number. y can be a scalar, array or cluster of numbers or Boolean
values, arrays of clusters of numbers or Boolean values, and so on. If y is an error cluster, only
the status parameter of the error cluster passes to the input terminal.
• x .or. y? —
Or Truth Table
x y x .or. y?
T T T
T F T
F T T
F F F
Examples
• labview\examples\Booleans\Boolean Functions.vi
Exclusive Or Function
Computes the logical exclusive or (XOR) of the inputs. Both inputs must be Boolean
values, numeric values, or error clusters. If both inputs are TRUE or both inputs are
FALSE, the function returns FALSE. Otherwise, it returns TRUE.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
634 ni.com
Functions
x must be a Boolean value or a number.x can be a scalar, array or cluster of numbers or Boolean
values, array of clusters of numbers or Boolean values, and so on. If x is an error cluster, only the
status parameter of the error cluster passes to the input terminal.
• y—
y must be a Boolean value or a number.y can be a scalar, array or cluster of numbers or Boolean
values, arrays of clusters of numbers or Boolean values, and so on. If y is an error cluster, only
the status parameter of the error cluster passes to the input terminal.
• x .xor. y? —
x y x .xor. y?
T T F
T F T
F T T
F F F
Examples
• labview\examples\Booleans\Boolean Functions.vi
Not Function
Computes the logical negation of the input. If x is FALSE, the function returns TRUE. If x
is TRUE, the function returns FALSE.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a scalar Boolean value or number, array or cluster of Boolean values or numbers, array
of clusters of Boolean values or numbers, and so on. If x is an error cluster, only the status
parameter of the error cluster passes to the input terminal.
• .not. x? —
x .not. x?
F T
T F
Examples
• labview\examples\Booleans\Boolean Functions.vi
Computes the logical NAND of the inputs. Both inputs must be Boolean values,
numeric values, or error clusters. If both inputs are TRUE, the function returns FALSE.
Otherwise, it returns TRUE.
636 ni.com
Functions
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x must be a Boolean value or a number. x can be a scalar, array or cluster of numbers or Boolean
values, array of clusters of numbers or Boolean values, and so on. If x is an error cluster, only the
status parameter of the error cluster passes to the input terminal.
• y—
y must be a Boolean value or a number. y can be a scalar, array or cluster of numbers or Boolean
values, arrays of clusters of numbers or Boolean values, and so on. If y is an error cluster, only
the status parameter of the error cluster passes to the input terminal.
Examples
• labview\examples\Booleans\Boolean Functions.vi
Not Or Function
Computes the logical NOR of the inputs. Both inputs must be Boolean values, numeric
values, or error clusters. If both inputs are FALSE, the function returns TRUE.
Otherwise, it returns FALSE.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x must be a Boolean value or a number. x can be a scalar, array or cluster of numbers or Boolean
values, array of clusters of numbers or Boolean values, and so on. If x is an error cluster, only the
status parameter of the error cluster passes to the input terminal.
• y—
y must be a Boolean value or a number. y can be a scalar, array or cluster of numbers or Boolean
values, arrays of clusters of numbers or Boolean values, and so on. If y is an error cluster, only
the status parameter of the error cluster passes to the input terminal.
638 ni.com
Functions
Examples
• labview\examples\Booleans\Boolean Functions.vi
Computes the logical negation of the logical exclusive or (XOR) of the inputs. Both
inputs must be Boolean values, numeric values, or error clusters. If both inputs are
TRUE or both inputs are FALSE, the function returns TRUE. Otherwise, it returns FALSE.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x must be a Boolean value or a number. x can be a scalar, array or cluster of numbers or Boolean
values, array of clusters of numbers or Boolean values, and so on. If x is an error cluster, only the
status parameter of the error cluster passes to the input terminal.
• y—
y must be a Boolean value or a number. y can be a scalar, array or cluster of numbers or Boolean
values, arrays of clusters of numbers or Boolean values, and so on. If y is an error cluster, only
the status parameter of the error cluster passes to the input terminal.
.not. (x .xor. y)? is the logical negation of the logical exclusive or (XOR) of x and y.
Examples
• labview\examples\Booleans\Boolean Functions.vi
Implies Function
Negates x and then computes the logical OR of y and the negated x. Both inputs must
be Boolean values, numeric values, or error clusters. If x is TRUE and y is FALSE, the
function returns FALSE. Otherwise, it returns TRUE.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
640 ni.com
Functions
x must be a Boolean value or a number. x can be a scalar, array or cluster of numbers or Boolean
values, array of clusters of numbers or Boolean values, and so on. If x is an error cluster, only the
status parameter of the error cluster passes to the input terminal.
• y—
y must be a Boolean value or a number. y can be a scalar, array or cluster of numbers or Boolean
values, arrays of clusters of numbers or Boolean values, and so on. If y is an error cluster, only
the status parameter of the error cluster passes to the input terminal.
• x .implies. y? —
x y x .implies. y?
T T T
T F F
F T T
F F T
Examples
• labview\examples\Booleans\Boolean Functions.vi
Returns TRUE if all the elements in Boolean array are TRUE or if Boolean array is
empty. Otherwise, the function returns FALSE. This function accepts an array of any
size but returns only a single value based on all values in Boolean array.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• Boolean array —
• logical AND —
Returns FALSE if all the elements in Boolean array are FALSE or if Boolean array is
empty. Otherwise, the function returns TRUE. This function accepts an array of any size
but returns only a single value based on all values in Boolean array.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• Boolean array —
• logical OR —
642 ni.com
Functions
number of bits in the integer. If you wire a fixed-point number to number, the size of
the array that Boolean array returns equals the word length of the fixed-point number.
The 0th element of the array corresponds to the least significant bit of the two's
complement representation of the integer.
Inputs/Outputs
• number —
• Boolean array —
Boolean array can have 8, 16, 32, or 64 elements if number is an integer. If number is a fixed-
point number, Boolean array can have between 1 and 64 elements.
If you wire a fixed-point number that includes an overflow status to number, this
function ignores the overflow status and converts only the number to a Boolean array.
Inputs/Outputs
• Boolean array —
This function truncates Boolean array if it is too long. If Boolean array is too short, this function
pads Boolean array according to the Sign Extension Mode you can select by right-clicking the
function.
• Never —This function pads Boolean array with Boolean FALSE bits.
• If Output Is Signed —(default) For an output with an unsigned representation, this function
pads Boolean array with Boolean FALSE bits. For an output with a signed representation,
this function pads Boolean array with the last element of the array.
• Always —This function pads Boolean array with the last element of the array.
• number —
You can change the numeric representation of number on the Output Configuration page of the
Properties dialog box. Right-click the function and select Properties to display the Properties
dialog box.
The following table shows the relationship between Boolean array and number.
644 ni.com
Functions
Inputs/Outputs
• Boolean —
Boolean can be a scalar, an array, a cluster of Boolean values, an array of clusters of Boolean
values, and so on. If Boolean is an error cluster, only the status parameter of the error cluster
passes to the input terminal.
• 0, 1 —
True Constant
You can assign a label to this constant by right-clicking the constant and selecting
Visible Items»Label from the shortcut menu.
You can change this value to FALSE by using the Operating tool to click the T portion of
the constant or by right-clicking the constant and selecting Data Operations»Change
Value to False from the shortcut menu. You cannot change this value while the VI runs.
False Constant
You can assign a label to this constant by right-clicking the constant and selecting
Visible Items»Label from the shortcut menu.
You can change this value to TRUE by using the Operating tool to click the F portion of
the constant or by right-clicking the constant and selecting Data Operations»Change
Value to True from the shortcut menu. You cannot change this value while the VI runs.
String
Use the String functions to concatenate two or more strings, extract a subset of strings
from a string, convert data into strings, and format a string for use in a word processing
or spreadsheet application.
Palette
Description
Object
String
Length Returns in length the number of characters (bytes) in string.
Function
Concatenate Concatenates input strings and 1D arrays of strings into a single output string. For
Strings array inputs, this function concatenates each element of the array.
String
Returns the substring of the input string beginning at offset and containing length
Subset
number of characters.
Function
Removes all ASCII white space (spaces, tabs, carriage returns, and linefeeds) from the
Trim
beginning, end, or both ends of string. The Trim Whitespace VI does not remove
Whitespace
double byte characters.
Converts the line endings of the input string to the line ending format you specify. If
Normalize you do not specify a line ending format, this VI converts the line endings of the string
End Of Line to the line endings that the current platform expects. Use this VI to make your strings
readable by different platforms or by the command line of the current platform.
Replace
Substring Inserts, deletes, or replaces a substring at the offset you specify in string.
Function
Search and Replaces one or all instances of a substring with another substring. To include the
646 ni.com
Functions
Palette
Description
Object
Replace
multiline? input and enable advanced regular expression searches, right-click the
String
function and select Regular Expression.
Function
Searches for regular expression in string beginning at offset. If the function finds a
Match match, it splits string into three substrings. A regular expression requires a specific
Pattern combination of characters for pattern matching. This function gives you fewer
Function options for matching strings but performs more quickly than the Match Regular
Expression function.
Searches for a regular expression in the input string beginning at the offset you
Match
enter. If the function finds a match, it splits the string into three substrings and any
Regular
number of submatches. Resize the function to view any submatches found in the
Expression
string.
Path/Array/
String Use the Path/Array/String Conversion functions to convert strings, arrays, and paths.
Conversion
Scan From
Scans the input string and converts the string according to format string.
String
Format Into
Formats string, path, enumerated type, time stamp, Boolean, or numeric data as text.
String
Format
Date/Time Displays a timestamp value or a numeric value as time in the format you specify
String using time format codes.
Function
Creates an output string from a combination of text and parameterized inputs. If the
Build Text input is not a string, this Express VI converts the input into a string based on the
configuration of the Express VI.
Number/
String Use the String/Number Conversion functions to convert strings.
Conversion
Spreadsheet
Converts the spreadsheet string to an array of the dimension and representation of
String To
array type. This function works for arrays of strings and arrays of numbers.
Array
Palette
Description
Object
Function
Array To
Converts an array of any dimension to a table in string form, containing tabs
Spreadsheet
separating column elements, a platform-dependent EOL character separating rows,
String
and, for arrays of three or more dimensions, headers separating pages.
Function
To Upper Converts all alphabetic characters in string to uppercase characters. Evaluates all
Case numbers in string as ASCII codes for characters. This function does not affect non-
Function alphabetic characters.
To Lower Converts all alphabetic characters in string to lowercase characters. Evaluates all
Case numbers in string as ASCII codes for characters. This function does not affect non-
Function alphabetic characters.
Flatten/
Use the Flatten/Unflatten String functions to flatten and unflatten LabVIEW data
Unflatten
types to and from strings.
String
String
Use this constant to supply a constant text string to the block diagram.
Constant
Empty
String Consists of a constant string that is empty (length zero).
Constant
Space
Use this constant to supply a one-character space string to the block diagram.
Constant
Tab
Consists of a constant string containing the ASCII HT (horizontal tab) value.
Constant
Additional
Use the Additional String VIs and functions to scan and search in strings, match
String
patterns, and manipulate strings.
Functions
Carriage
Return Consists of a constant string containing the ASCII CR value.
Constant
Line Feed
Consists of a constant string containing the ASCII LF value.
Constant
End of Line Consists of a constant string containing the platform-dependent end-of-line value.
648 ni.com
Functions
Palette
Description
Object
Constant
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• string —
string can be a string or any data structure that contains only strings, such as an array or clusters
of strings.
• length —
Examples
• labview\examples\Strings\String Length.vi
Concatenate Strings
Concatenates input strings and 1D arrays of strings into a single output string. For
array inputs, this function concatenates each element of the array.
Add inputs to the function by right-clicking an input and selecting Add Input from the
shortcut menu or by resizing the function.
Inputs/Outputs
• string —
• string —
• concatenated string —
concatenated string contains the concatenated input strings in the order you wire them to the
node from top to bottom.
You can use this function to concatenate the output from Picture Functions VIs so that
they draw on a single picture control. The pictures are drawn in order from top to
bottom.
Examples
• labview\examples\Strings\Concatenate Strings.vi
Returns the substring of the input string beginning at offset and containing length
number of characters.
The connector pane displays the default data types for this polymorphic function.
650 ni.com
Functions
Inputs/Outputs
• string —
• offset (0) —
offset specifies number of characters into string at which the function starts searching for a
match. offset must be numeric.
The offset of the first character in string is 0. If offset is unwired or less than 0, the function takes
offset as 0.
• length (rest) —
length must be numeric. If length is left unwired, the default is the length of string minus offset.
• substring —
substring is empty if offset is greater than the length of the string or if the length is less than or
equal to 0.
If length is greater than or equal to the length of string minus offset, substring is the remainder
of string beginning at offset.
Trim Whitespace
Removes all ASCII white space (spaces, tabs, carriage returns, and linefeeds) from the
beginning, end, or both ends of string. The Trim Whitespace VI does not remove
double byte characters.
Inputs/Outputs
• location (both) —
location determines if this function removes white space from the beginning, end, or both ends
of string.
• string —
• trimmed string —
trimmed string contains the string with the white space removed.
Converts the line endings of the input string to the line ending format you specify. If
you do not specify a line ending format, this VI converts the line endings of the string
to the line endings that the current platform expects. Use this VI to make your strings
readable by different platforms or by the command line of the current platform.
For example, if you specify UNIX in end of line, LabVIEW converts the line endings of
string in to \n because \n is the standard UNIX line ending.
Inputs/Outputs
• end of line (Native) —
652 ni.com
Functions
Note In LabVIEW for macOS, Native and Native Command Line are equivalent to
UNIX. In LabVIEW for OS X 32-bit, Native and Native Command Line are equivalent to
Macintosh.
• string in —
string in specifies the string containing the line endings you want to convert.
• string out —
Inputs/Outputs
• string —
• substring ("") —
substring contains the substring that replaces length characters at offset in string.
• offset (0) —
offset determines the number of characters into string at which the function places substring.
result string contains the edited string with the replaced characters.
• replaced substring —
The Replace Substring function deletes length characters in string starting at offset,
and replaces the deleted portion with substring. If length is 0, the Replace Substring
function inserts substring at offset. If substring is empty, the Replace Substring
function deletes length characters at offset.
Replaces one or all instances of a substring with another substring. To include the
multiline? input and enable advanced regular expression searches, right-click the
function and select Regular Expression.
Inputs/Outputs
• multiline? (F) —
multiline? specifies whether to treat the text in input string as a multiple-line string. This setting
654 ni.com
Functions
If you set multiline? to FALSE (default), when you enter ^ at the beginning of a regular
expression, the expression matches only the beginning of the string in input string. When you
enter $ at the end of a regular expression, the expression matches only the end of the string in
input string. If you set multiline? to TRUE, ^ matches the beginning of any line in input string
and $ matches the end of any line in input string.
Note The ^ character anchors the match to the beginning of a string when used as
the first character of a pattern. If you add ^ to the beginning of a character class
immediately after an open square bracket, the expression matches any character not
in a given character class.
replace all? specifies whether the function replaces all occurrences of the search string or only
the first occurrence.
• input string —
input string specifies the input string you want the function to search.
• search string —
search string specifies the string you want to search for and replace.
If search string is an empty string and replace all? is FALSE, the function inserts replace string at
the beginning of input string. If search string is an empty string and replace all? is TRUE, the
function inserts replace string at the beginning, in between each character, and at the end of
input string.
To search using advanced regular expressions, right-click the function and select Regular
Expression.
replace string specifies the string you want to insert in place of search string. The default is an
empty string.
To configure the Search and Replace String function to accept backreferences in replace string,
right-click the function and select Regular Expression.
• offset (0) —
offset determines the number of characters into input string at which the function starts
searching for search string.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• result string —
result string contains the input string with one or all occurrences of search string replaced with
replace string.
If replace string is empty, result string contains input string with search string deleted.
• number of replacements —
number of replacements returns the number of times LabVIEW replaced search string.
offset past replacement indicates the offset in result string of the character immediately
following where the last match and replacement occurred.
If replace all? is FALSE, the next match, if any, is after this point.
If the function does not find search string, offset past replacement returns –1.
• error out —
error out contains error information. This output provides standard error out functionality.
Note The Search and Replace String function does not support null
characters in strings. If you include null characters in the strings you wire to
656 ni.com
Functions
this function, LabVIEW returns an error and the function may return
unexpected results.
If you want to search for more complex patterns, such as patterns that contain
character grouping, alternate pattern matching, backreferences, or non-greedy
quantification, configure the function for advanced regular expression searches or use
the Match Regular Expression function.
To search for matches using advanced regular expressions in search string and partial
match substitution in replace string, right-click the Search and Replace String function
and select Regular Expression from the shortcut menu. This function uses the same
regular expression syntax as the Match Regular Expression function.
Regular expression support is provided by the PCRE library package. Refer to the
<National Instruments>\_Legal Information directory for more
information about the license under which the PCRE library package is redistributed.
Refer to the PCRE website at www.pcre.org for more information about Perl
Compatible Regular Expressions.
Searches for regular expression in string beginning at offset. If the function finds a
match, it splits string into three substrings. A regular expression requires a specific
combination of characters for pattern matching. This function gives you fewer options
for matching strings but performs more quickly than the Match Regular Expression
function.
The Match Pattern function is compatible with a limited set of regular expressions and
does not support character grouping, alternate pattern matching, backreferences, or
non-greedy quantification. You can use a specific set of special characters to refine the
search. The connector pane displays the default data types for this polymorphic
function.
Inputs/Outputs
• string —
string specifies the input string you want the function to search.
• regular expression —
regular expression is the pattern for which you want to search in string. If the function does not
find regular expression, match substring returns an empty string, before substring returns the
entire string, after substring returns an empty string, and offset past match returns –1.
• offset (0) —
offset specifies number of characters into string at which the function starts searching for a
match. offset must be numeric. The offset of the first character in string is 0. If offset is unwired
or less than 0, the function takes offset as 0.
• before substring —
before substring returns a string containing all the characters before the match.
• match substring —
• after substring —
offset past match returns the index in string of the first character of after substring. If the
function does not find a match, offset past match is –1. The offset input and the offset past
match output might be equal when the empty string is a valid match for the regular expression.
For example, if regular expression is b* and the string input is cdb, offset past match is 0. If
string is bbbcd, offset past match is 3.
This function is similar to the Search and Replace Pattern VI. The Match Pattern
658 ni.com
Functions
function gives you fewer options for matching strings but performs more quickly than
the Match Regular Expression function. For example, the Match Pattern function does
not support the parenthesis or vertical bar (|) characters.
The following table shows examples of regular expressions you can use with this
function. Some of these examples use special characters to refine the search.
Note If you want to include special characters in the search string, you must
enclose each special character in brackets. For example, to search for the
string hz+, enter hz[+] in regular expression. Otherwise, LabVIEW uses the
special character to refine the search.
Searches for a regular expression in the input string beginning at the offset you enter.
If the function finds a match, it splits the string into three substrings and any number
of submatches. Resize the function to view any submatches found in the string.
Inputs/Outputs
• multiline? (F) —
multiline? specifies whether to treat the text in input string as a multiple-line string. This setting
affects how the ^ and $ characters handle matches. If you set multiline? to FALSE (default), when
you enter ^ at the beginning of a regular expression, the expression matches only the beginning
of the string in input string. When you enter $ at the end of a regular expression, the expression
matches only the end of the string in input string. If you set multiline? to TRUE, ^ matches the
beginning of any line in input string and $ matches the end of any line in input string.
Note The ^ character anchors the match to the beginning of a string when used as
the first character of a pattern. If you add ^ to the beginning of a character class
immediately after an open square bracket, the expression matches any character not
in a given character class.
660 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• before match —
before match returns all the characters before the match.
• whole match —
whole match returns all the characters that match the expression entered in regular expression.
Any substring matches the function finds appear in the submatch outputs.
• after match —
after match returns all the characters after the match.
• offset past match —
offset past match returns the index in input string of the first character after the last match. If
the VI does not find a match, offset past match returns –1.
• error out —
error out contains error information. This output provides standard error out functionality.
Note The Match Regular Expression function does not support null
characters in strings. If you include null characters in strings you wire to this
function, LabVIEW returns an error and the function may return unexpected
results.
Refer to the PCRE website at www.pcre.org for more information about Perl
Compatible Regular Expressions.
The Match Regular Expression function gives you more options for matching strings
but performs more slowly than the Match Pattern function.
Certain regular expressions that use repeated grouped expressions (such as (.|\s)*
or (a*)*) require significant resources to process when applied to large input
strings. In some cases a stack overflow may occur on large input strings. Some regular
expressions may recurse repeatedly while attempting to match a large string, which
may eventually overflow the stack. For example, the regular expression (.|\n)*A
and a large input string may cause LabVIEW to crash. To avoid recursion, you can
rewrite the regular expression (.|\n)*A as (?s).*A. The (?s) notation indicates
that a period matches new lines. You also can rewrite the expression as [^A]*A.
If you nest a character group within another character group, the regular expression
creates a submatch for the outer group before the inner group. For example, the
regular expression (.(el.).).(L..) returns three submatches in the input Hello
LabVIEW!: Hello, ell, and Lab. In this example, submatch 1 is Hello because
the regular expression matches the outer character group before the inner group.
The following table shows examples of regular expressions you can use with the Match
Regular Expression function.
662 ni.com
Functions
Path/Array/String Conversion
Use the Path/Array/String Conversion functions to convert strings, arrays, and paths.
Converts a path into an array of strings and indicates whether the path is relative.
Inputs/Outputs
• path —
If path is <Not A Path>, the array of strings is empty and relative is FALSE.
• relative —
relative indicates whether the path you converted is a relative path or an absolute path.
The first element is the first step of the path hierarchy. For file systems that support multiple
volumes, the first element is the volume name. If path is a network path, the first element of
array of strings includes the name of the server in addition to the first step of the path hierarchy.
The last element of array of strings is the file or directory specified by the path.
If you have an empty string in the array, the directory location before the empty string
is deleted in the path output. This behavior is similar to moving up a level in directory
hierarchy.
664 ni.com
Functions
Inputs/Outputs
• relative —
relative indicates whether you want to create a relative path or an absolute path.
If TRUE, the function creates a relative path. If FALSE (default), the function creates an absolute
path. If FALSE and the path specified is not valid as an absolute path (for example, the path
means go up a level), the function sets path to <Not A Path>.
• array of strings —
array of strings contains the names of the components of the path you want to build.
The first element is the highest level of the path hierarchy (the volume name, for file systems
that support multiple volumes), and the last element is the last element of the hierarchy. An
element that contains an empty string tells LabVIEW to go up a level in the hierarchy.
Note Each string in the array of strings must represent a single element of the
complete path. Partial paths, such as test\subtest, are not valid as array
elements because they might produce invalid paths on platforms that use different
directory separators.
• path —
Suppose the path to the VI containing this function is c:\dir1\main.vi. To use this
function to build a relative path to another VI such as c:\dir1\dir2\called.vi,
wire TRUE to relative. In array of strings, enter dir2 as the first element and
called.vi as the second element. The function returns a relative path of dir2\
called.vi. You can use the Build Path function to append the relative path to the
output of the Current VI's Path function.
the third element, and called.vi as the fourth element. The function returns an
absolute path of c:\dir1\dir2\called.vi.
Converts path into a string describing a path in the standard format of the platform.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• path —
path is the path, array of paths, cluster of paths, or array of clusters of paths you want to convert
to a string.
string is the path descriptor(s) represented by path in the standard format for the current
platform. string is of the same data type structure as path.
Converts a string, describing a path in the standard format for the current platform, to
a path.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• string —
666 ni.com
Functions
string can be a string or any data structure that contains only strings, such as an array or clusters
of strings.
• path —
If string is not a valid path descriptor on the current platform, the function sets path to <Not a
Path>. path is of the same data type structure as string.
Note If string is <Not a Path>, the function returns a path to <Not a Path>. If
you attempt to use the path, LabVIEW cannot find the file and throws an error.
Each byte in the array has the ASCII value of the corresponding character in the string.
Inputs/Outputs
• string —
The first byte in the array has the ASCII value of the first character in string, the second byte has
the second value, and so on.
Inputs/Outputs
• unsigned byte array —
unsigned byte array is the array of ASCII values you want to convert.
• string —
string is the result of interpreting each array element as an ASCII value and forming a string out
of the corresponding characters.
Refer to ASCII Codes for the numbers that correspond to each character.
Scans the input string and converts the string according to format string.
Use this function when you know the exact format of the input. The input can be
string, path, enumerated type, time stamp, or numeric data. Alternatively, you can use
the Scan From File function to scan text from a file. The connector pane displays the
default data types for this polymorphic function.
Inputs/Outputs
• format string —
format string specifies how to convert the input string into the output arguments.
The default is to scan the string according to the default format for the data types of the outputs.
Formatting a time stamp as anything other than time returns an error. Right-click the function
668 ni.com
Functions
and select Edit Scan String from the shortcut menu to create and edit the format string.
A space in format string matches any amount of white space, such as spaces, tabs, linefeeds,
and form feeds.
• input string —
input string is the string, path, enumerated type, time stamp, or numeric data to scan.
initial scan location is the offset into the string where the scan begins.
The default is 0.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• default value 1 —
default 1..n specifies the type and default value for the output parameters.
If this function cannot scan the input value from format string, the function uses the default. If
you do not wire default 1 and you wire a constant to format string, the function uses format
string to determine the type of the output. Otherwise, the default data type is double-precision,
floating-point. The default value is 0 or an empty string, depending on the output data type. If
you wire an enumerated type to default 1, the function finds substrings matching the string
values in the enumerated type and returns the corresponding numeric value of the enumerated
type.
You can scan for Boolean values if you use a string or numeric format code. If the format code is
%s or unwired, the function reads Y, T, TRUE, ON, or YES and any lowercase versions of those
words as TRUE Boolean values. The function reads F, FALSE, OFF, or NO and any lowercase
versions of those words as FALSE Boolean values. If you specify a numeric format code, the
function reads any numeric value greater than 0.5 as TRUE and any numeric value less than or
equal to 0.5 as FALSE.
Note This function reads negative numbers as FALSE Boolean values because the
function converts the number to an unsigned 8-bit integer and any number less than
or equal to 0.5 becomes 0 during the conversion.
• remaining string —
remaining string returns the portion of the string that remains after scanning all arguments.
offset past scan is the offset of input string after completing the scan.
• error out —
error out contains error information. This output provides standard error out functionality.
• output 1 —
Each output can be a string, path, enumerated type, time stamp, Boolean, or any numeric data
type. If you scan a string that does not fit into the numeric data type you specify, this function
returns the largest number that fits into that data type. You cannot use arrays and clusters with
this function.
Increase the number of parameters by right-clicking the function and selecting Add
Parameter from the shortcut menu or by resizing the function.
Note If an error occurs, the source component of the error out cluster
contains a string of the form ''Scan From String (arg n),'' where
n is the first argument for which the error occurred.
If you set format string to return numeric values in the output parameters, LabVIEW
ignores white spaces in the input string.
If you wire a block diagram constant string to format string, LabVIEW uses format
string to determine the number of outputs and the data type of each output at
compile time. If the types you wire to the outputs do not match the types determined
by format string, you must change the output types before the VI can run.
If you do not directly wire a block diagram constant to format string, LabVIEW checks
for type mismatches at run time. If you want to scan values that have data types other
than double-precision, floating point, you must wire the data types to default 1..n.
670 ni.com
Functions
Note By default, this function is locale aware, which means that it uses the
system decimal separator configured in the regional settings of the operating
system. In some instances, such as using GPIB instruments on European
operating systems, you may need to override the system decimal separator
by using the localization code syntax elements.
Refer to the Format Specifier Syntax topic for more information about and examples of
formatting strings.
remaining
input string format string default(s) output(s)
string
— abc
abc, xyz — xyz
%3s, %s%f%2d 00
>12.3+56i 7200 0.00+00i 12.30+56.00i
— 72
Q+1.27E–3 tail Q%f t — 1.27E–3 ail
— 12.00
0123456789 %3d%3d 6789
— 345
100 (I32) 10
X:9.860 Z:3.450 X:%fY:%f Z: 3450
100.00 (DBL) 100.00
set49.4.2 set%d — 49 .4.2
blue (enum {red,
color: red color: %s red —
green, blue})
abcd
12
abcd012xyz3 %[a-z]%d%[a-z]%d — —
xyz
3
welcome to
welcome to
LabVIEW, John %[^,],%s — Smith
LabVIEW
Smith
remaining
input string format string default(s) output(s)
string
John
11:15:04.250
Time: 23:15:04.25
Time: PM
1/1/1904 —
%<%H:%M:%S%2u%m/%d/%Y>T
5/31/2004
5/31/2004
Formats string, path, enumerated type, time stamp, Boolean, or numeric data as text.
You can use the Format Into String function to convert a number into a string. To
format data as text and write the text to a file, use the Format Into File function
instead.
Inputs/Outputs
• format string —
format string specifies how you want the function to convert the input arguments into resulting
string.
Defaults match the data type of the input arguments. Right-click the function and select Edit
Format String from the shortcut menu to create and edit the format string. Use special escape
codes to insert non-displayable characters, the backslash, and the percent characters.
• initial string —
672 ni.com
Functions
initial string specifies the base string to which you can append any arguments to form the
resulting string.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• input 1 —
input 1..n specifies the input parameters you want the function to convert.
This parameter accepts a string, path, enumerated type, time stamp, Boolean, or any numeric
data type. For complex numeric data types, this function converts only the real component. You
cannot use arrays and clusters with this function. You can specify up to 4,096 characters for each
input.
If you specify a Boolean value for this parameter and %s as the format code, the Format Into
String function outputs the value as TRUE or FALSE. If you specify a Boolean value for this
parameter and any numeric format code, the Format Into String function outputs the
appropriate version of 1 for TRUE and 0 for FALSE. For example, if you specify %f as the format
code, the function outputs 1.00000. If you specify %d, the function outputs 1.
• resulting string —
resulting string contains the concatenation of initial string and the formatted output.
• error out —
error out contains error information. This output provides standard error out functionality.
To increase the number of parameters, right-click input 1 and select Add Parameter
from the shortcut menu or resize the function.
Note If an error occurs, the error out cluster element source contains a
string of the form Format Into String (arg n), where n is the first
argument for which the error occurred.
If you wire a block diagram constant string to format string, LabVIEW uses format
string to determine the number of outputs and the data type of each output at
compile time. If the data types you wire to the outputs do not match the data types
determined by format string, you must change the output data types before the VI can
run.
By default, this function uses the order of the inputs to populate the format specifiers,
or percent codes in the Format String. However, you can use a number followed by a
dollar sign ($) within a percent code to specify exactly which input to use for that
percent code. For example, the percent code %3$d uses the third input regardless of
how many percent codes appear before %3$d in the format string.
Refer to the following block diagram and table for an example of how to use format
specifiers:
The following input combinations illustrate the effects of the $ specifier in the previous
block diagram:
You can use other special characters besides the $ to configure how this function
populates the percent codes in format string.
674 ni.com
Functions
Examples
Displays a timestamp value or a numeric value as time in the format you specify using
time format codes.
Inputs/Outputs
• time format string (%c) —
Time format codes (beginning with %) not recognized by the function as a format code return the
character literally. The default code is %c, which corresponds to the date/time representation
appropriate for the configured time zone for the computer. If time format string is an empty
string, the function uses the default.
• time stamp —
time stamp can be a timestamp or a numeric. If numeric, this number is the time-zone-
independent number of seconds that have elapsed since 12:00 a.m., Friday, January 1, 1904,
Universal Time [01-01-1904 00:00:00]. The default is the current date and time.
UTC format specifies if the output string is in Universal Time or in the configured time zone for
the computer. If TRUE, date/time string is in Universal Time.
This function calculates date/time string by copying time format string and replacing
each of the time format codes with the corresponding values. For example, the time
format string %y%m%d displays timestamp in the format yymmdd. The time format
string %y%m%d displays the date January 30, 2014 as 140130.
The following list describes some of the caveats to consider when you use this
function:
• LabVIEW returns abbreviated weekday and month names as numeric values for
systems that do not support abbreviated names, such as Chinese and Korean.
• The %c, %u, %x, %X, %z, and %Z format codes depend on operating system locale
support. The output of these codes is platform dependent. Interpretation of the
Daylight Saving Time rule also can vary by platform.
• The %p format code only takes effect at locales that use the 12-hour time system.
• Time format codes have leading zeros as necessary to ensure a constant field
width. An optional # modifier before the format code letter removes the leading
zeros from the following format codes: %#d, %#H, %#I, %#j, %#m, %#M,
%#s, %#S, %#U, %#w, %#W, %#X, %#y, %#Y. The # modifier does not
modify the behavior of any other format codes.
Related Information
Build Text
Creates an output string from a combination of text and parameterized inputs. If the
input is not a string, this Express VI converts the input into a string based on the
configuration of the Express VI.
676 ni.com
Functions
Option Description
Specifies the text you want to build. Define parameters by placing text between
Text with
a pair of percent signs. You can use each parameter only once in the text that
Parameters in
you build.
Percents
(%parameter
To include a percent sign in the output string, you must type the percent sign
name%)
twice.
• Parameter—
• Sample text—
• Sample boolean—
Configure
Parameters Displays a button configured according to the options set in Parameter
Properties.
• Sample number—
• Sample result—
Displays the value you enter in Sample text, Sample number, or Sample
boolean based on the options you select in the Parameter Properties
section.
Option Description
• Number—
• Boolean—
• Format—
Provides formatting options for the parameter depending on the data type.
Examples of each format appear in parentheses after the name of the
format.
Pads any excess space to the left or right of the text, number, or Boolean
with zeros or spaces to reach the minimum width you enter in Minimum
field width.
Specifies the width to which you want to pad the text, number, or Boolean.
The default is 0.
Formats the numbers with the precision you specify in Precision. This
option is available only when you select Fractional/Scientific (12.345),
Fractional (12.345), or Scientific (1.234E1) from the Format the numbers
pull-down menu.
• Precision—
Changes the digits of precision of the numbers in the table. The default is
0.
678 ni.com
Functions
Option Description
• Left—
• Right—
• Using spaces—
Inputs/Outputs
• Beginning Text —
Prepends the text you wire to this input to the text the Express VI generates.
• error out —
Contains error information. This output provides standard error out functionality.
• Result —
Returns the resulting data based on the configuration of the Express VI.
Components
Changes the digits of precision of the numbers in the table. The default is 0.
Formats the numbers with the precision you specify in Precision. This option is
available only when you select Fractional/Scientific (12.345), Fractional (12.345), or
Scientific (1.234E1) from the Format the numbers pull-down menu.
Pads any excess space to the left or right of the text, number, or Boolean with zeros or
spaces to reach the minimum width you enter in Minimum field width.
Provides formatting options for the parameter depending on the data type. Examples
of each format appear in parentheses after the name of the format.
Changes the digits of precision of the numbers in the table. The default is 0.
Specifies the width to which you want to pad the text, number, or Boolean. The default
is 0.
Formats the numbers with the precision you specify in Precision. This option is
available only when you select Fractional/Scientific (12.345), Fractional (12.345), or
Scientific (1.234E1) from the Format the numbers pull-down menu.
Pads any excess space to the left or right of the text, number, or Boolean with zeros or
spaces to reach the minimum width you enter in Minimum field width.
680 ni.com
Functions
Provides formatting options for the parameter depending on the data type. Examples
of each format appear in parentheses after the name of the format.
Specifies the text you want to build. Define parameters by placing text between a pair
of percent signs. You can use each parameter only once in the text that you build.
Lists all parameters defined in the Text with Parameters in Percents (%parameter
name%) section.
Displays the value you enter in Sample text, Sample number, or Sample boolean
based on the options you select in the Parameter Properties section.
Number/String Conversion
Palette
Description
Object
Number To
Converts number to a string of decimal digits at least width characters wide or wider
Decimal
if necessary. If number is floating-point or fixed-point, it is rounded to a 64-bit
String
integer before conversion.
Function
Number To Converts number to a string of hexadecimal digits at least width characters wide or
Hexadecimal wider if necessary. The digits A-F always appear in uppercase in the output string. If
String number is floating-point or fixed-point, it is rounded to a 64-bit integer before
Function conversion.
Number To Converts number to a string of octal digits at least width characters wide or wider if
Octal String necessary. If number is floating-point or fixed-point, it is rounded to a 64-bit integer
Function before conversion.
Palette
Description
Object
Number To
Fractional Converts number to an F-format (fractional notation), floating-point string at least
String width characters wide or wider if necessary.
Function
Number To
Exponential Converts number to an E-format (exponential notation), floating-point string at least
String width characters wide or wider if necessary.
Function
Number To
Engineering Converts number to an engineering format, floating-point string at least width
String characters wide or wider if necessary.
Function
Format
Converts a number into a regular string according to the format specified in format
Value
string and appends this to string.
Function
Decimal
String To Converts the numeric characters in string, starting at offset, to a decimal integer and
Number returns it in number.
Function
Hexadecimal
String To Interprets the characters 0 through 9, A through F, and a through f in string starting
Number at offset as a hex integer and returns it in number.
Function
Octal String Interprets the characters 0 through 7 in string starting at offset as an octal integer
To Number and returns it in number. This function also returns the index in string of the first
Function character following the number.
Fract/Exp
Interprets the characters 0 through 9, plus, minus, e, E, and the decimal point
String To
(usually period) in string starting at offset as a floating-point number in engineering
Number
notation, exponential, or fractional format and returns it in number.
Function
Converts characters at the beginning of string to the data type represented by
Scan Value default, according to the conversion codes in format string, and returns the
Function converted number in value and the remainder of string after the match in output
string.
682 ni.com
Functions
Converts number to a string of decimal digits at least width characters wide or wider if
necessary. If number is floating-point or fixed-point, it is rounded to a 64-bit integer
before conversion.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
• width (-) —
width must be numeric. If unwired, the function uses exactly as many digits as are needed to
represent the number, with no extra padding.
The following table shows how the values of number and width affect decimal integer string. In
this table, the underline character ( _ ) represents spaces in decimal integer string.
decimal integer
number width Comments
string
Floating-point and fixed-point numbers are rounded to
4.6 2 _5
integers.
3.0 4 _ _ _3 If width is larger than needed, spaces are added on the left.
If width is inadequate, decimal integer string is as large as
–311 3 –311
necessary.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
• width (-) —
width must be numeric. If unwired, the function uses exactly as many digits as are needed to
represent the number, with no extra padding.
The following table shows how the values of number and width affect hex integer string.
hex
number width integer Comments
string
3 4 0003 If width is larger than needed, zeros are added on the left.
42 3 02A —
–4.2 is rounded up to –4 in 64-bit integer format. Width is too small to
–4.2 3 FFFFFFFC represent the hex version of a negative number, so the field width is
extended.
684 ni.com
Functions
Converts number to a string of octal digits at least width characters wide or wider if
necessary. If number is floating-point or fixed-point, it is rounded to a 64-bit integer
before conversion.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
• width (-) —
width must be numeric. If unwired, the function uses exactly as many digits as are needed to
represent the number, with no extra padding.
octal integer string is the resulting octal string. The following table shows how the values of
number and width affect octal integer string.
octal integer
number width Comments
string
3 4 0003 —
42 3 052 —
–4.2 is rounded up to –4 in 64-bit integer format. width is too small
–4.2 3 37777777774 to represent the octal version of a negative number, so the field
width is extended.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• use system decimal point (T) —
use system decimal point defines the decimal separator. If TRUE (default), the decimal
separator uses the localized decimal separator. If FALSE, the decimal separator is a period.
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
• width (-) —
width must be numeric. If unwired, the function uses exactly as many digits as are needed to
represent the number, with no extra padding.
• precision (6) —
precision must be numeric. The function rounds the number of digits after the decimal point of
the output string to precision.
• F-format string —
F-format string is the resulting fractional string. F-format string can be Inf, -Inf, or NaN if the
value you wire to number is infinity or is not a number. The following table shows how the
values of number, width, and precision affect F-format string. In this table, the underline
character ( _ ) represents a space in F-format string.
686 ni.com
Functions
This function rounds number to the nearest integer. If the fractional part of number is
.5, the function rounds the value to the nearest even integer. For example, the
function rounds 13.5 to 14 and rounds 14.5 to 14.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• use system decimal point (T) —
use system decimal point defines the decimal separator. If TRUE (default), the decimal
separator uses the localized decimal separator. If FALSE, the decimal separator is a period.
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
• width (-) —
width must be numeric. If unwired, the function uses exactly as many digits as are needed to
represent the number, with no extra padding.
• precision (6) —
precision must be numeric. The function rounds the number of digits after the decimal point of
the output string to precision.
• E-format string —
E-format string is the resulting string. The following table shows how the values of number,
width, and precision affect E-format string. In this table, the underline character ( _ ) represents
Inputs/Outputs
• use system decimal point (T) —
use system decimal point defines the decimal separator. If TRUE (default), the decimal
separator uses the localized decimal separator. If FALSE, the decimal separator is a period.
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on.
• width (-) —
width must be numeric. If unwired, the function uses exactly as many digits as are needed to
represent the number, with no extra padding.
• precision (6) —
688 ni.com
Functions
precision must be numeric. The function rounds the number of digits after the decimal point of
the output string to precision.
• Engineering string —
The following table shows how the values of number, width, and precision affect Engineering
string. In this table, the underline character ( _ ) represents a space in Engineering string.
Converts a number into a regular string according to the format specified in format
string and appends this to string.
The connector pane displays the default data types for this polymorphic function.
Note The Format Into String function has the same functionality as Format
Value but can use multiple inputs. Consider using Format Into String instead
of this function to simplify your block diagram.
Inputs/Outputs
• string ("") —
string is the input string to which LabVIEW appends the formatted string. The default is an
empty string.
• format string —
value must be numeric but can be a physical quantity. A physical quantity is a value with a unit.
• output string —
output string is the result of converting value to a string, and appending this to string.
Converts the numeric characters in string, starting at offset, to a decimal integer and
returns it in number.
The connector pane displays the default data types for this polymorphic function.
If you want the function to return a 64-bit integer output, you must wire a 64-bit
integer to the default input.
Inputs/Outputs
• string —
string can be a string, a cluster of strings, an array of strings, or an array of clusters of strings.
• offset —
offset specifies number of characters into string at which the function starts searching for a
match. offset must be numeric.
The offset of the first character in string is 0. If offset is unwired or less than 0, the function takes
offset as 0.
690 ni.com
Functions
• default (0 I32) —
default is any object of numeric representation and specifies the numeric representation for
number. The default is a 32-bit signed integer value of 0.
offset past number is the index in string of the first character following the number. offset past
number reflects the value from the last string if you input an array of strings.
• number —
If number is an integer, it can overflow if the input is out of range. In that case, number is set to
the maximum or minimum value for the data type. For example, if the input string is 300, and the
data type is a 8-bit signed integer, LabVIEW sets the value to 127. The following table shows how
the values of string, offset, and default affect number.
offset past
string offset default number Comments
number
13ax 0 0 2 13 —
–4.8bcde Because an integer is being converted,
0 0 2 –4
conversion conversion stops at the decimal point.
a49b 0 –9 0 –9 default is used since no digits were read.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• string —
string can be a string, a cluster of strings, an array of strings, or an array of clusters of strings.
• offset —
offset specifies number of characters into string at which the function starts searching for a
match. offset must be numeric.
The offset of the first character in string is 0. If offset is unwired or less than 0, the function takes
offset as 0.
• default (0 U32) —
default is any object of numeric representation and specifies the numeric representation for
number. The default is a 32-bit unsigned integer value of 0. To return a 64-bit integer output,
wire a 64-bit integer to default.
offset past number is the index in string of the first character following the number.
offset past number reflects the value from the last string if you input an array of strings.
• number —
If the input string represents a number outside the range of the representation of number,
number is set to the maximum value for that data type.
The following table illustrates how string, offset, and default affect number.
offset
string offset default past number Comments
number
The conversion starts from the first character
3ab 0 3 939
3, as offset specifies.
692 ni.com
Functions
offset
string offset default past number Comments
number
The conversion starts from the third character
3ab 2 3 11
b, as offset specifies.
number is a 32-bit unsigned integer, as default
specifies. The result of the conversion is
1FFFFFFFF 0 9 4294967295
saturated because it is too large to be
represented.
number is a 64-bit unsigned integer, as default
1FFFFFFFF 0 9 8589934591
specifies.
g is not a valid hex character, so conversion
stops there. The value of offset past number
f3g 0 2 243
indicates the conversion stops at the third
character g.
–30 0 0 0 Negative numbers are not permitted for hex.
Interprets the characters 0 through 7 in string starting at offset as an octal integer and
returns it in number. This function also returns the index in string of the first character
following the number.
The connector pane displays the default data types for this polymorphic function.
If you want the function to return a 64-bit integer output, you must wire a 64-bit
integer to the default input.
Inputs/Outputs
• string —
string can be a string, a cluster of strings, an array of strings, or an array of clusters of strings.
• offset —
offset specifies number of characters into string at which the function starts searching for a
match. offset must be numeric.
The offset of the first character in string is 0. If offset is unwired or less than 0, the function takes
offset as 0.
• default (0 U32) —
default is any object of numeric representation and specifies the numeric representation for
number. The default is a 32-bit unsigned integer value of 0. To return a 64-bit integer output,
wire a 64-bit integer to default.
offset past number is the index in string of the first character following the number.
offset past number reflects the value from the last string if you input an array of strings.
• number —
If the input string represents a number outside the range of the representation of number,
number is set to the maximum value for that data type. The following table shows how the
values of string, offset, and default affect number.
Interprets the characters 0 through 9, plus, minus, e, E, and the decimal point (usually
period) in string starting at offset as a floating-point number in engineering notation,
exponential, or fractional format and returns it in number.
The connector pane displays the default data types for this polymorphic function.
694 ni.com
Functions
Inputs/Outputs
• use system decimal point (T) —
If TRUE (default), the decimal separator uses the localized decimal separator. If FALSE, the
decimal separator is a period.
• string —
string can be a string, a cluster of strings, an array of strings, or an array of clusters of strings.
If string contains the characters Inf or NaN, this function returns the LabVIEW values Inf and
NaN, respectively.
• offset —
offset specifies number of characters into string at which the function starts searching for a
match. offset must be numeric.
The offset of the first character in string is 0. If offset is unwired or less than 0, the function takes
offset as 0.
• default (0 DBL) —
default is any object of numeric representation and specifies the numeric representation for
number.
offset past number is the index in string of the first character following the number.
offset past number reflects the value from the last string if you input an array of strings.
• number —
The following table shows how the values of string, offset, and default affect number.
offset past
string offset default number Comments
number
–4.7e–3x 0 0 7 –0.0047 x is not allowed, so conversion stops there.
Second decimal point not allowed, so conversion
+5.3.2 0 0 4 5.3
stops there.
If you scan a string that does not fit into the numeric data type you specify, this function returns
the largest number that fits into that data type.
If you want the function to return a 64-bit integer output, you must wire a 64-bit
integer to the default input.
Examples
Converts characters at the beginning of string to the data type represented by default,
according to the conversion codes in format string, and returns the converted number
in value and the remainder of string after the match in output string.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• string —
• format string —
696 ni.com
Functions
format string specifies how to convert the input arguments into value.
output string is the remaining characters in string after the match or string if there is no match.
• value —
If value is an integer, it can overflow if the input is out of range. In that case, value is set to the
maximum or minimum value for the data type. For example, if the input string is 300 and the
data type is an 8-bit signed integer, LabVIEW sets the value to 127.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• delimiter (Tab) —
delimiter specifies the value or values used to separate fields in the spreadsheet file. The default
is a single tab character. You can specify multiple delimiters by wiring an array of strings to
delimiter. Each element of the array should contain a different delimiter.
For example, if you wire an array that contains two elements — a space character in one and a
tab character in the other — the function allows either a space character or a tab character to
format string specifies how to convert the spreadsheet string into an array. Use %s to convert
spreadsheet string to an array of strings. Use %d or %f to convert spreadsheet string to an array
of numbers.
spreadsheet string contains numeric or string values separated into columns by delimiters, such
as tabs or commas, with an end-of-line (EOL) character separating rows.
The function converts each element in spreadsheet string according to format string and stores
the resulting values in array.
• array type (2D Dbl) —
array type is the data type input for the array. The default is a 2D array of double-precision,
floating-point numbers.
Refer to Array To Spreadsheet String for information about the spreadsheet format expected for
arrays of three dimensions or more.
• array —
array is spreadsheet string converted to an array of the dimension and representation of array
type.
Examples
698 ni.com
Functions
Inputs/Outputs
• delimiter (Tab) —
delimiter is the value used to separate fields in the spreadsheet file. The default is a single tab
character.
• format string —
format string specifies how to convert the input array into a string. Use %s to convert an array of
strings to spreadsheet string. Use %d or %f to convert arrays of numbers to spreadsheet string.
Note This function allows you to use only a single format specifier to format all
elements of an array. You cannot wire multiple specifiers to this function to format
some array elements according to one specifier and some elements to a different
specifier.
• array —
• spreadsheet string —
spreadsheet string is separated into columns by delimiters, such as tabs, and an end-of-line
(EOL) character separates rows.
For arrays of three dimensions or more, each page is preceded by a series of indexes of
the following format.
[n,m,…,0,0]
where n is the highest dimension index, m is the next highest dimension index, a
comma (,) separates indexes, 0,0 refers to the first row and column elements of page
n,m,…, and represents the end-of-line character.
In the following example, a spreadsheet string of a 4x4x3 array appears as it does when
you print it. The period character (.) represents omitted values of the latter pages, and
the end-of-line character ( ) does not appear in an actual printout.
[0,0,0]
[1,0,0]
. . .
. . .
. . .
. . .
[2,0,0]
. . .
700 ni.com
Functions
. . .
. . .
. . .
[3,0,0]
. . .
. . .
. . .
. . .
Examples
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• string —
string can be a string, a cluster of strings, an array of strings, or an array of clusters of strings.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• string —
string can be a string, a cluster of strings, an array of strings, or an array of clusters of strings.
702 ni.com
Functions
Flatten/Unflatten String
Use the Flatten/Unflatten String functions to flatten and unflatten LabVIEW data types
to and from strings.
Palette
Description
Object
Flatten To Converts the anything input to a flattened data string of binary values. You also can
String use this function to convert the byte order, or endian format, of the data in the
Function flattened data string.
Unflatten Converts binary string to the type wired to type. binary string should contain
From String flattened data of the type wired to type. You also can use this function to specify the
Function byte order, or endian format, of the data in the binary string.
Variant To
Flattened Converts variant data into a flattened string and an array of integers that represent
String the data type. You cannot flatten ActiveX variant data.
Function
Flattened
String To
Converts flattened data into variant data.
Variant
Function
Flatten To
Converts any data type you wire to anything and converts it to an XML string
XML
according to the LabVIEW XML schema.
Function
Palette
Description
Object
Unflatten
Converts an XML string to a LabVIEW data type according to the LabVIEW XML
From XML
schema.
Function
Flatten To
Converts data you wire to the anything input to a UTF-8 JavaScript Object Notation
JSON
(JSON) string.
Function
Unflatten
Converts a UTF-8 JavaScript Object Notation (JSON) string to the LabVIEW data type
From JSON
you wire to type/defaults.
Function
Converts the anything input to a flattened data string of binary values. You also can
use this function to convert the byte order, or endian format, of the data in the
flattened data string.
Inputs/Outputs
• anything —
anything contains the data you want to convert to a UTF-8 JSON string. This input accepts arrays
and clusters of Booleans, floating-point numbers, and strings. anything can also accept an array
of clusters, or a cluster of arrays, of these data types. This input does not support other data
types, such as enums, refnums, file paths, and fixed-point numbers.
Cluster elements may be named or unnamed, but not a combination of both. If cluster elements
are named, then each name must be unique to that cluster. If you wire an unsupported data
type, LabVIEW breaks the VI.
prepend array or string size? specifies whether LabVIEW includes data size information at the
704 ni.com
Functions
beginning of data string when anything is an array or string. If prepend array or string size? is
FALSE, LabVIEW does not include the size information. The default is TRUE.
The string created by the Flatten To String function is a LabVIEW string. If prepend array or
string size? is TRUE, the LabVIEW string has a 4-byte (I32) number at the beginning of the string
that tells how long the string is. This enables a LabVIEW string to include NULL characters [ASCII
character zero (0)]. If you pass a LabVIEW string to external code and use it as a C string, NULL
characters embedded in the string may cause problems, since C strings are interpreted as
terminating at the first NULL character. prepend array or string size? only controls the top-level
data size information. Arrays and strings in hierarchical data types such as clusters always
include size information.
byte order sets the endian format of the data in the resulting flattened string. Byte order, or
endian form, indicates whether integers are represented in memory from most significant byte
to least significant byte or vice versa.
big-endian, network order (default)—The most significant byte occupies the lowest memory
0
address.
1 native, host order—Uses the byte-ordering format of the host computer.
2 little-endian—The least significant byte occupies the lowest memory address.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data string —
data string might contain header information before each non-scalar component describing its
size. Such a string can be stored in a file or sent over a network. If you send the string over a
network, the receiver must be able to interpret it. Usually, LabVIEW stores data as
noncontiguous, indirectly referenced pieces. This function copies the data in LabVIEW form into
a contiguous buffer data string. Use the Unflatten From String function to convert a data string
back to any data type.
type string (7.x only) is visible only if the terminal is already wired from a previous version of
LabVIEW or if you right-click the function and select Convert 7.x Data from the shortcut menu.
type string (7.x only) is an encoded binary description of data string. type string (7.x only) is
not the same as the type input in the Unflatten From String function.
If type string (7.x only) cannot represent the data type wired to anything, this function returns
an error.
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Type Cast function for conversion of data types that does not result in
flattened data.
If you need to flatten type descriptor data to a string that is readable by LabVIEW 7.x or
earlier, right-click this function and select Convert 7.x Data from the shortcut menu. In
Convert 7.x Data mode, this function shows the type string (7.x only) output and
displays the icon for this function with a red 7.x on it. LabVIEW 7.x and earlier stores
type descriptors in 16-bit flat representation. LabVIEW 8.0 and later stores type
descriptors in 32-bit flat representation. National Instruments recommends reworking
any application that uses the Convert 7.x Data mode as a long term solution.
If you need to flatten Boolean data to a string that is readable by LabVIEW 4.x or
earlier, right-click this function and select Convert 4.x Data from the shortcut menu.
The Convert 4.x Data shortcut menu item is visible only if you wire Boolean data to
anything. In Convert 4.x Data mode, this function writes the data in LabVIEW 4.x data
storage layout and displays the icon for this function with a red 4.x on it. LabVIEW 4.x
and earlier stores Boolean data in two bytes unless the data is in an array, in which
case LabVIEW stores each Boolean element in a single bit. LabVIEW 5.0 and later stores
Boolean values in a single byte, regardless of whether it is in an array. National
Instruments recommends reworking any application that uses the Convert 4.x Data
mode as a long term solution.
If you use this function to flatten variant data, LabVIEW flattens the variant and all its
contents, including attributes. However, if you use the Variant To Flattened String
function, LabVIEW flattens only the variant and discards any attributes.
706 ni.com
Functions
If you use this function to flatten data from a custom control or indicator that you
saved as a type definition, the function strips the type definition of its type definition
wrapper. If you do not want to strip this wrapper, right-click the function and select
Expose Typedefs from the shortcut menu. The Expose Typedefs shortcut menu item is
visible only if you wire data to type string (7.x only).
Converts binary string to the type wired to type. binary string should contain
flattened data of the type wired to type. You also can use this function to specify the
byte order, or endian format, of the data in the binary string.
Inputs/Outputs
• type —
type is not the type string output in the Flatten To String function.
• binary string —
binary string is a flattened string that is typically generated by the Flatten To String function.
If data includes array or string size? is TRUE, binary string contains header information
describing its size.
data includes array or string size? indicates whether LabVIEW reads data size information from
the beginning of an incoming array or string. If data includes array or string size? is TRUE,
LabVIEW reads the size information from the beginning of binary string. If data includes array or
string size? is FALSE, LabVIEW detects the size information from the memory size of binary
string.
The default is TRUE. data includes array or string size? only accesses the top-level data size
information. Arrays and strings in hierarchical data types such as clusters always include size
information.
byte order indicates the endian format of the data in the incoming flattened string. Byte order,
or endian form, indicates whether integers are represented in memory from most-significant
byte to least-significant byte or vice versa.
big-endian, network order (default)—The most-significant byte occupies the lowest memory
0
address.
1 native, host order—Uses the byte-ordering format of the host computer.
2 little-endian—The least-significant byte occupies the lowest memory address.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
rest of the binary string contains any leftover bytes that this function did not convert. This
function does not convert all the bytes if the size of binary string is not a multiple of the size of
type.
• value —
value returns binary string as unflattened data of the same data type and structure as type.
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Type Cast function for conversion of data types that does not require already-
flattened data.
If you need to unflatten data from a string created by LabVIEW 4.x or earlier, right-click
this function and select Convert 4.x Data from the shortcut menu. In Convert 4.x Data
mode, this function interprets the data in LabVIEW 4.x data storage layout and displays
708 ni.com
Functions
the icon for this function with a red 4.x on it. LabVIEW 4.x and earlier stores Boolean
data in two bytes unless the data is in an array, in which case LabVIEW stores each
Boolean element in a single bit. LabVIEW 5.0 and later stores Boolean values in a single
byte, regardless of whether it is in an array. National Instruments recommends
reworking any application that uses the Convert 4.x Data mode as a long term
solution.
Examples
Converts variant data into a flattened string and an array of integers that represent the
data type. You cannot flatten ActiveX variant data.
Inputs/Outputs
• variant —
variant is the variant data you want converted to a string of flattened data.
• type string —
type string is an array of numeric integers that identifies the data type of the flattened string.
• data string —
data string is the resulting flattened data you converted from variant data.
If you use this function to flatten variant data, LabVIEW flattens only the variant and
discards all its contents, including attributes. However, if you use the Flatten To String
function, LabVIEW flattens the variant and all of its attributes.
Use the Flatten to String function to produce data string and type string.
Inputs/Outputs
• type string —
type string is an array of numeric integers that identifies the data type of the flattened string if
the data type existed in LabVIEW 7.x or earlier.
• data string —
data string is the flattened data you want to convert to variant data.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• variant —
• error out —
error out contains error information. This output provides standard error out functionality.
Converts any data type you wire to anything and converts it to an XML string according
710 ni.com
Functions
If anything contains the characters <, >, or &, the function converts those characters to
<, >, or &, respectively. Use the Escape XML VI to convert other
characters, such as ", to XML syntax.
Inputs/Outputs
• anything —
anything is any LabVIEW data you want to convert. This parameter is polymorphic.
• xml string —
xml string is the resulting XML string that represents the LabVIEW data type.
When converting decimal values, this function uses only the period (.) as a decimal separator.
The function does not use localized decimal separators.
Examples
Converts an XML string to a LabVIEW data type according to the LabVIEW XML schema.
If xml string contains the characters <, >, or &, the function converts
those characters to <, >, or &, respectively. Use the Unescape XML VI to convert other
characters, such as ".
Inputs/Outputs
• xml string —
xml string is the XML string that includes the data you want to convert.
xml string must conform to the LabVIEW XML schema, including the case and order of tags in the
schema. If xml string does not conform to the schema, the function returns an error and value
contains the default value for the data type wired to type. If the VI containing the function
previously completed execution, value contains the value from the previous execution.
In xml string, this function accepts only the period (.) as a decimal separator. The function does
not recognize localized decimal separators. This restriction prevents errors when you use XML
strings on operating systems with different settings for the decimal separator.
• type —
type is the data type to which you want to convert xml string.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• value —
value is the data type you specified in type and the data in xml string.
• error out —
error out contains error information. This output provides standard error out functionality.
Converts data you wire to the anything input to a UTF-8 JavaScript Object Notation
(JSON) string.
712 ni.com
Functions
Inputs/Outputs
• enable LabVIEW extensions? (T) —
enable LabVIEW extensions enables LabVIEW JSON extensions to support NaN and Inf values
of floating-point numbers. Not all JSON parsers support these extensions.
• anything —
anything contains the data you want to convert to a UTF-8 JSON string. This input accepts arrays
and clusters of Booleans, floating-point numbers, and strings. anything can also accept an array
of clusters, or a cluster of arrays, of these data types. This input does not support other data
types, such as enums, refnums, file paths, and fixed-point numbers.
Cluster elements may be named or unnamed, but not a combination of both. If cluster elements
are named, then each name must be unique to that cluster. If you wire an unsupported data
type, LabVIEW breaks the VI.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• JSON string —
JSON string is the flattened data encoded in UTF-8. UTF-8 encoded strings may not display
correctly in LabVIEW controls.
• error out —
error out contains error information. This output provides standard error out functionality.
Converts a UTF-8 JavaScript Object Notation (JSON) string to the LabVIEW data type
you wire to type/defaults.
Inputs/Outputs
• enable LabVIEW extensions? (T) —
enable LabVIEW extensions enables LabVIEW JSON extensions to support NaN and Inf values
of floating-point numbers. Not all JSON parsers support these extensions.
• path —
path identifies a specific item in JSON string. Use path if your JSON string contains multiple
items, and you would like to extract a specific item from it. path uses an array of strings to
identify the item, where each element in the array references either the name of a cluster
element or an integer index of an array.
If you specify an item using path, you must wire a data type to type/defaults that corresponds to
the data type of the specified item.
• JSON string —
714 ni.com
Functions
JSON string is the flattened UTF-8 string that you want to unflatten. You can use the Flatten To
JSON function to generate this string.
type/defaults specifies the data type and default values to which you want to unflatten the
JSON string. This input accepts Booleans, integers, floating-point numbers, strings, and arrays
or clusters of these types. Cluster elements may be labeled or unlabeled, but not a combination
of both. If the elements in a cluster are labeled, then each name must be unique to that cluster. If
you wire an unsupported data type, LabVIEW breaks the VI.
If the elements in your JSON string are labeled, the elements wired to types/defaults must have
an identical label. For example, if you have JSON string
{"firstelement":"a","secondelement":"b"}, you must wire a cluster containing a
string labeled firstelement and a string labeled secondelement. Additionally, if you
specify the path to a particular item in your JSON string, the data type wired to type/defaults
must match the data type of the item pointed to by path.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
default null elements specifies whether LabVIEW uses default values from the input cluster for
null values in JSON. If default null elements is FALSE, LabVIEW returns an error for null values.
strict validation determines whether LabVIEW returns an error when the JSON object contains
items not defined in the input cluster. If strict validation is FALSE, JSON objects may contain
items not defined in the cluster.
• value —
value returns JSON string as unflattened data of the same data type and structure as type/
defaults.
• error out —
error out contains error information. This output provides standard error out functionality.
If JSON string represents a data type that type/defaults does not accept, such as an
array of arrays or an array of mixed types, you cannot use a single Unflatten From
JSON function to convert the entire JSON string. However, you can use path to identify
and extract items in the JSON string.
String Constant
Use this constant to supply a constant text string to the block diagram.
Set the value of a string constant by using the Operating tool or the Labeling tool to
click it and enter the string you want. You also can set the value of a string constant by
right-clicking the constant and selecting Edit to display the Edit dialog box for string
constants.
You can change the display mode so you can see non-displayable characters or the hex
ASCII equivalent to the characters. You also can set the constant in password display
mode so asterisks are displayed when you type in characters. Right-click a string
constant and select Visible Items»Display Style from the shortcut menu to display a
glyph on the constant that indicates the display type.
You cannot change the value of the string constant while the VI runs. You can assign a
label to this constant.
716 ni.com
Functions
Space Constant
Use this constant to supply a one-character space string to the block diagram.
Inputs/Outputs
• String —
Tab Constant
Use this constant when you do not want to type in the backslash code for the
character.
Use the Additional String VIs and functions to scan and search in strings, match
patterns, and manipulate strings.
Palette
Description
Object
Search/
Split
Divides a single string into two substrings.
String
Function
Pick Line
Chooses a line from multi-line string and appends that line to string.
Function
Match
Compares each prefix string in string array to the beginning of string until it encounters
First
a match. This function returns the original input string with the matching prefix string
String
removed.
Function
Match
True/ Examines the beginning of string to see whether it matches true string or false string.
False This function returns a Boolean TRUE or FALSE value in selection, depending on
String whether string matches true string or false string.
Function
Scan
String For Scans input string starting at offset for tokens and outputs each segment as a token
Tokens string.
Function
Searches string for substrings that match regular expression and replaces those
Search
substrings with replace string. A regular expression requires a specific combination of
and
characters for pattern matching. For more information about special characters in
Replace
regular expressions, refer to the regular expression input description in the detailed
Pattern
help.
Index
String
Selects a string specified by index from string array and appends that string to string.
Array
Function
Append
True/
Selects either a FALSE or TRUE string according to a Boolean selector and appends that
False
string to string.
String
Function
Rotate Places the first character of string in the last position of first char last, shifting the other
718 ni.com
Functions
Palette
Description
Object
String
characters forward one position. For example, the string abcd becomes bcda.
Function
Reverse
String Produces a string whose characters are in reverse order of those in string.
Function
Delimited
String to Converts substrings in a delimited string to the elements of a one-dimensional string
1D String array.
Array
1D String
Array to Converts the elements of a one-dimensional string array to a single string with input
Delimited array elements separated by a delimiting character.
String
Create NI
Generates a globally unique identifier (GUID) string.
GUID
You can divide the string at a certain character or substring. Search/Split String
searches string for the string or character in search string/char. The function splits the
string and returns the resulting two strings in substring before match and match +
rest of string.
Inputs/Outputs
• string —
search string/char is the string or character to search for in string. If you do not wire this input or
it contains an empty string, the function splits string at offset. You must wire either search char
or offset.
• offset (0) —
offset specifies number of characters into string at which the function starts searching for a
match. offset must be numeric. The offset of the first character in string is 0. If offset is unwired
or less than 0, the function takes offset as 0.
substring before match returns the portion of string before search string/char or before offset if
search string/char is unwired. If this function does not find the search string, substring before
match returns the entire original string.
match + rest of string consists of search string/char and all subsequent characters in string. If
this function does not find the search string, match + rest of string returns an empty string.
• offset of match —
offset of match is the position of search string/char in string. If this function does not find the
search string, offset of match returns -1.
If you enable the Match Single Character option, this function uses only the first
character in search string/char and searches string for this character. When finding
the first match in string, this function splits string and returns the resulting two
strings. To enable the Match Single Character option, right-click this function and
select Match Single Character from the shortcut menu.
For example, when you specify Test string for string and str for search string/
char, this function returns different resulting strings depending on whether you enable
the Match Single Character option. The following table shows the resulting strings.
720 ni.com
Functions
Chooses a line from multi-line string and appends that line to string.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• string ("") —
string is the string to which LabVIEW appends the string selected from multi-line string. The
default is an empty string.
• multi-line string —
• line index —
line index selects the line the function appends from multi-line string.
line index must be numeric. A line index of 0 selects the first line. If line index is negative or is
greater than or equal to the number of lines in multi-line string, the function sets output string
to string.
• output string —
Compares each prefix string in string array to the beginning of string until it
encounters a match. This function returns the original input string with the matching
Inputs/Outputs
• string —
string specifies the string to match to the prefixes in string array. The default is an empty string.
• string array —
string array specifies the array of strings that you want to match with string. If the function
encounters an empty string in string array, the function considers that string a match.
• output string —
output string returns the original string with the matching prefix removed. If the beginning of
string does not match any string in string array, output string returns the original string.
• index —
index returns the numeric index of the matching prefix in string array. If the beginning of string
does not match any string in string array, index is –1.
This function compares each string in string array to string in the order in which the
elements are indexed. This function always searches from the beginning of string and
matches the first string prefix that appears at the beginning of string. For example, this
function matches Error 1 in the string Error 16: error occurred if Error
1 comes before Error 16 in string array. However, the function matches Error 16
if Error 16 comes before Error 1 in string array.
Examines the beginning of string to see whether it matches true string or false string.
This function returns a Boolean TRUE or FALSE value in selection, depending on
whether string matches true string or false string.
722 ni.com
Functions
Inputs/Outputs
• string —
• true string —
• false string —
• output string —
output string is a shortened version of string with the matching substring removed if either true
string or false string matches the beginning of string. If neither true string nor false string
matches the beginning of string, output string returns string unchanged.
• selection —
selection is TRUE if true string matches the beginning of string, and FALSE if false string
matches the beginning of string, or if neither string matches.
Scans input string starting at offset for tokens and outputs each segment as a token
string.
Inputs/Outputs
• allow empty tokens? (F) —
allow empty tokens? determines whether the function recognizes a token when it encounters
multiple adjacent delimiters.
If allow empty tokens? is FALSE (default), multiple adjacent delimiters can separate two tokens
in input string. If allow empty tokens? is TRUE, an empty token string is returned between
every pair of adjacent delimiters.
• input string —
• offset —
operators is an array of strings that the function identifies as tokens when they appear in input
string, even if they are not surrounded by delimiters.
If a portion of input string matches more than one defined operator, the function chooses the
longest match as a token. For example, if >, = and >= are defined operators, the input string
4>=0 produces >= as the next token string with an offset of 1.
A string in operators might contain the following special format codes, which you can use to
scan entire numbers as single tokens.
Note If the strings + or – are defined as operators, the function does not recognize
leading, or unary, + and – signs. The function always returns them as separate tokens.
This is an exception to the "longest match" rule.
• delimiters (\s,\t,\r,\n) —
724 ni.com
Functions
Strings in delimiters are not returned as tokens but serve to separate adjacent tokens from each
other. The default delimiters are the white space characters: space, tab, linefeed, and carriage
return.
use cached delim/oper data? is an advanced optional input. If unwired, token string still
behaves correctly.
However, you can use use cached delim/oper data? to greatly improve string parsing
performance. Set use cached delim/oper data? to FALSE the first time token string is executed,
and TRUE each subsequent time as long as operators and delimiters have not changed. Use a
shift register with a constant FALSE coming in and a constant TRUE going out to ensure correct
behavior if operators and delimiters do not change during the execution of the loop. If use
cached delim/oper data? is TRUE and operators or delimiters has changed since the last
execution, incorrect output might result. If both operators and delimiters are unwired or are
wired to block diagram constants, you can leave use cached delim/oper data? unwired and still
achieve optimal performance.
• string out —
offset past token identifies the point in the input string immediately following the most recently
found token and any trailing delimiters.
Any subsequent scanning of the same input string should begin at this offset. If offset is less
than 0 or greater than the number of characters in input string, or if the end of the string was
reached, offset past token is –1.
• token string —
token string is the matched token. It can be one of the strings in operators or any text string in
input string that appears between delimiters.
• token index —
token index is the index of token string in operators if token string matches one of the elements
in operators.
If token string is any other string, token index returns –1. If the function reaches the end of input
string without finding any valid operator, token index returns –2.
Tokens are text segments that typically represent individual keywords, numeric values,
or operators found when parsing a configuration file or other text-based data format.
You can specify tokens with the data you pass into the function through the delimiters
and operators inputs. For example, because the space character is a delimiter by
default, each word of This is a string is a token, and you can parse the
sentence into its component words.
Use this function in a While Loop that processes one section of string at a time until
token index returns –2 (indicating end of string). You can pass offset past token
through a shift register into offset, so that each scan starts where the preceding scan
ended.
By default, the function identifies and returns a token when it encounters a space, tab,
carriage return, or linefeed. You can parse a string using these or any other delimiters
you choose or you can define operators.
For example, suppose you wire the following values to the function.
Input Value
input string This is a testLabVIEWstring
offset 0 (default)
operators [NI,asdf,LabVIEW]
delimiters \s,\t,\r,\n (default)
If you place the function in a While Loop, the function returns the following values.
First Iteration
726 ni.com
Functions
Second Iteration
Third Iteration
Fourth Iteration
Fifth Iteration
Sixth Iteration
Seventh Iteration
Searches string for substrings that match regular expression and replaces those
substrings with replace string. A regular expression requires a specific combination of
characters for pattern matching. For more information about special characters in
regular expressions, refer to the regular expression input description in the detailed
help.
Inputs/Outputs
• replace all? (F) —
If replace all? is TRUE, the VI replaces all substrings in string that match regular expression.
• string —
728 ni.com
Functions
string specifies the input string you want the function to search.
regular expression is the pattern for which you want to search in string.
If the VI does not find regular expression, result string is string and offset past match is –1. If
regular expression matches the empty string, the function makes no replacements, result string
is string, and offset past match returns 0 or the length of the string, depending on whether
replace all? is FALSE or TRUE, respectively.
replace string replaces the substring in string that matches regular expression. The default is an
empty string.
• offset (0) —
offset specifies number of characters into string at which the function starts searching for a
match. offset must be numeric.
The offset of the first character in string is 0. If offset is unwired or less than 0, the function takes
offset as 0.
• result string —
result string contains the edited string with the replaced characters.
offset past match is the index in string of the first character after the last match. If the VI does
not find a match, offset past match is –1.
This VI can perform a case-insensitive search or search for more complex patterns than
the Search and Replace String function.
Selects a string specified by index from string array and appends that string to string.
Inputs/Outputs
• string ("") —
string is the string to which LabVIEW appends the string selected from string array. The default
is an empty string.
• string array —
string array is the array from which LabVIEW selects a string according to index to append to
string.
• index —
• output string —
output string is string with the string in string array at offset index appended.
If index is less than zero or greater than the number of elements in string array, output string
returns string unchanged.
Selects either a FALSE or TRUE string according to a Boolean selector and appends
that string to string.
730 ni.com
Functions
Inputs/Outputs
• string ("") —
• true string —
• false string —
• selector —
selector determines whether the function appends true string (TRUE) or false string (FALSE) to
string.
• output string —
Places the first character of string in the last position of first char last, shifting the
other characters forward one position. For example, the string abcd becomes bcda.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• string —
string can be a string or any data structure that contains only strings, such as an array or clusters
of strings.
first char last is the rotated string and has the same structure as string.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• string —
string can be a string or any data structure that contains only strings, such as an array or clusters
of strings.
• reversed —
reversed is the reversed string and has the same structure as string.
Inputs/Outputs
• delimited string —
delimited string specifies the string with a delimiting character between substrings.
• delimiter —
732 ni.com
Functions
delimiter specifies the character that separates substrings in a delimited string. The default is
\t, which specifies a single tab character.
• string array —
Converts the elements of a one-dimensional string array to a single string with input
array elements separated by a delimiting character.
Inputs/Outputs
• string array —
string array specifies the one-dimensional array of strings on which the node operates.
• delimiter —
delimiter specifies the character that separates substrings in a delimited string. The default is
\t, which specifies a single tab character.
• delimited string —
delimited string returns a string of concatenated array elements separated by the delimiter you
specify.
Create NI GUID
Inputs/Outputs
• NI GUID —
NI GUID returns a globally unique identifier (GUID) string of the following format:
12345678-1234-1234-1234-1234567890AB.
ASCII Codes
ASCII encoding is a 7-bit code (from 0 to 127). It contains upper and lowercase English,
American English punctuation, base 10 numbers, and a few control codes. The first 32
codes (from 0 to 31) are control codes, which are a set of non-printable control
characters used for text formatting.
734 ni.com
Functions
736 ni.com
Functions
738 ni.com
Functions
The following is a list of some of the LabVIEW functions that use ASCII codes:
The Format Date/Time String function calculates the date and time and formats the
output string according to the following format codes.
740 ni.com
Functions
Use this constant when you do not want to type in the backslash code for the
character.
Use this constant when you do not want to type in the backslash code for the
character.
Use this constant when you do not want to type in the backslash code for the
character.
Comparison
Use the Comparison functions to compare Boolean values, strings, numeric values,
arrays, and clusters.
The Comparison functions treat Boolean, string, numeric, array, and cluster values
differently. You also can use the Comparison functions to compare characters. You can
change the comparison mode of some Comparison functions.
Palette
Description
Object
Equal? Returns TRUE if x is equal to y. Otherwise, this function returns FALSE. You can
Function change the comparison mode of this function.
Not Equal? Returns TRUE if x is not equal to y. Otherwise, this function returns FALSE. You can
Function change the comparison mode of this function.
Greater? Returns TRUE if x is greater than y. Otherwise, this function returns FALSE. You can
Function change the comparison mode of this function.
Less? Returns TRUE if x is less than y. Otherwise, this function returns FALSE. You can
Function change the comparison mode of this function.
Greater Or
Returns TRUE if x is greater than or equal to y. Otherwise, this function returns FALSE.
Equal?
You can change the comparison mode of this function.
Function
Less Or
Returns TRUE if x is less than or equal to y. Otherwise, this function returns FALSE.
Equal?
You can change the comparison mode of this function.
Function
Equal To 0?
Returns TRUE if x is equal to 0. Otherwise, this function returns FALSE.
Function
742 ni.com
Functions
Palette
Description
Object
Not Equal
To 0? Returns TRUE if x is not equal to 0. Otherwise, this function returns FALSE.
Function
Greater
Than 0? Returns TRUE if x is greater than 0. Otherwise, this function returns FALSE.
Function
Less Than
Returns TRUE if x is less than 0. Otherwise, this function returns FALSE.
0? Function
Greater Or
Equal To 0? Returns TRUE if x is greater than or equal to 0. Otherwise, this function returns FALSE.
Function
Less Or
Equal To 0? Returns TRUE if x is less than or equal to 0. Otherwise, this function returns FALSE.
Function
Returns the value wired to the t input or f input, depending on the value of s. If s is
Select
TRUE, this function returns the value wired to t. If s is FALSE, this function returns the
Function
value wired to f.
Compares x and y and returns the larger value at the top output terminal and the
smaller value at the bottom output terminal. This function accepts time stamp values
Max & Min
if all inputs are time stamp values. If the inputs are time stamp values, the function
Function
returns the later time at the top and the earlier time at the bottom. You can change
the comparison mode of this function.
Determines whether x falls within a range specified by the upper limit and lower limit
In Range inputs and optionally coerces the value to fall within the range. The function performs
and Coerce the coercion only in Compare Elements mode. This function accepts time stamp
Function values if all inputs are time stamp values. You can change the comparison mode of
this function.
Not A
Number/
Returns TRUE if number/path/refnum is not a number (NaN), <Not a Path>, or not a
Path/
refnum. Otherwise, this function returns FALSE.
Refnum?
Function
Empty
Array? Returns TRUE if the input array is empty. Otherwise, this function returns FALSE.
Function
Palette
Description
Object
Empty
Returns TRUE if string/path is an empty string or an empty path. Otherwise, this
String/
function returns FALSE. This function is also designed to work with variants, pictures,
Path?
and DSC tags.
Function
Returns TRUE if char represents a decimal digit ranging from 0 through 9. If char is a
Decimal string, this function uses the first character in the string. If char is a number, this
Digit? function interprets it as the ASCII value of a character. If char is a floating-point
Function number, this function rounds to the nearest integer. Otherwise, this function returns
FALSE.
Returns TRUE if char represents a hex digit ranging from 0 through 9, A through F, or a
through f. If char is a string, this function uses the first character in the string. If char is
Hex Digit?
a number, this function interprets it as the ASCII value of a character. If char is a
Function
floating-point number, this function rounds to the nearest integer. Otherwise, this
function returns FALSE.
Returns TRUE if char represents an octal digit ranging from 0 through 7. If char is a
string, this function uses the first character in the string. If char is a number, this
Octal Digit?
function interprets it as the ASCII value of a character. If char is a floating-point
Function
number, this function rounds to the nearest integer. Otherwise, this function returns
FALSE.
Returns TRUE if char represents a printable ASCII character. If char is a string, this
Printable? function uses the first character in the string. If char is a number, this function
Function interprets it as the ASCII value of a character. If char is a floating-point number, this
function rounds to the nearest integer. Otherwise, this function returns FALSE.
Returns TRUE if char represents a white space character, such as Space, Tab, Newline,
White Carriage Return, Form Feed, or Vertical Tab. If char is a string, this function uses the
Space? first character in the string. If char is a number, this function interprets it as the ASCII
Function value of a character. If char is a floating-point number, this function rounds to the
nearest integer. Otherwise, the function returns FALSE.
Lexical Returns the class number for char. If char is a string, this function uses the first
Class character in the string. If char is a number, this function interprets it as the ASCII value
Function of a character.
Compares input items you specify to determine whether values are equal, greater
Comparison
than, less than, and so on.
744 ni.com
Functions
Palette
Description
Object
Use the Assert Type VIs and functions in conjunction with the Type Specialization
structure for the following purposes:
Assert Type
• Customizing sections of code in a malleable VI (.vim) for specific data types
• Forcing a malleable VI to accept only data types that meet certain requirements
• Forcing a malleable VI to decline specific data types
Is Value Returns TRUE if this is the first call of this VI or if the input value is different from the
Changed value when this VI was last called.
Is Path and Returns TRUE if path is any value other than <Not A Path> or an empty path.
Not Empty? Otherwise, this VI returns FALSE.
Fixed-Point
Returns TRUE if FXP includes an overflow status and FXP is the result of an operation
Overflow?
that overflowed. Otherwise, this function returns FALSE.
Function
Equal? Function
Returns TRUE if x is equal to y. Otherwise, this function returns FALSE. You can change
the comparison mode of this function.
If you compare two matrices, the default comparison mode is Compare Aggregates,
and this function returns a scalar. You can compare an array or cluster of a data type to
a scalar of the same data type and produce an array or cluster of Boolean values. The
connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x is a value to compare to y
• y—
• x = y? —
When you compare arrays, x = y? is a scalar in Compare Aggregates mode and a Boolean array in
Compare Elements mode (default).
When comparing VI Server references, this function returns TRUE when the two
references refer to the same object, regardless of whether the references have the
same capability or the same value. For example, one might be a strict reference to a
digital numeric control and the other might be a generic reference but if they refer to
the same object, they are equal. To compare the actual values of the references, use
the Type Cast function to convert the references to 32-bit signed integers. Then use the
Equal? function to compare those integers.
Similarly to the previous situation, if you have a local reference and a remote reference
to the same LabVIEW object, this function returns FALSE. However, when two
references refer to the same object but one of them is authenticated and the other is
not, this function still returns TRUE.
Note If you compare two inputs with the value not a number, NaN, or one
input with the value NaN to an input with another value, this function always
returns FALSE. Use the Not a Number/Path/Refnum? function to compare one
or more inputs with a value of NaN.
When you wire matrix data as an input to this function, a VI that includes subVIs that
work with the matrix data type replaces the function. The resulting VI has the same
icon but contains a matrix-specific algorithm. The node remains a VI if you disconnect
the matrix from the input(s). Wire other data types as inputs to restore the original
function. If you wire a data type to a function and that data type causes a basic math
operation to fail, the function returns an empty matrix or NaN.
746 ni.com
Functions
Examples
• labview\examples\Comparison\Comparison Functions.vi
Returns TRUE if x is not equal to y. Otherwise, this function returns FALSE. You can
change the comparison mode of this function.
If you compare two matrices, the default comparison mode is Compare Aggregates,
and this function returns a scalar. You can compare an array or cluster of a data type to
a scalar of the same data type and produce an array or cluster of Booleans. The
connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
• y—
y must be of the same type as x
• x != y? —
x!=y? returns the Boolean result of the operation. When you compare arrays, x!=y? is a scalar in
Compare Aggregates mode and a Boolean array in Compare Elements mode (default).
When comparing VI Server references, this function returns FALSE when the two
references refer to the same object, regardless of whether the references have the
same capability or the same value. For example, one might be a strict reference to a
digital numeric control and the other might be a generic reference but if they refer to
the same object, they are equal. To compare the actual values of the references, use
the Type Cast function to convert the references to 32-bit signed integers. Then use the
Similarly to the previous situation, if you have a local reference and a remote reference
to the same LabVIEW object, this function returns TRUE. However, when two
references refer to the same object but one of them is authenticated and the other is
not, this function still returns FALSE.
Note If you compare two inputs with the value not a number, NaN, or one
input with the value NaN to an input with another value, this function always
returns TRUE. Use the Not a Number/Path/Refnum? function to compare one
or more inputs with a value of NaN.
When you wire matrix data as an input to this function, a VI that includes subVIs that
work with the matrix data type replaces the function. The resulting VI has the same
icon but contains a matrix-specific algorithm. The node remains a VI if you disconnect
the matrix from the input(s). Wire other data types as inputs to restore the original
function. If you wire a data type to a function and that data type causes a basic math
operation to fail, the function returns an empty matrix or NaN.
Examples
• labview\examples\Comparison\Comparison Functions.vi
Greater? Function
Returns TRUE if x is greater than y. Otherwise, this function returns FALSE. You can
change the comparison mode of this function.
You can compare an array or cluster of a data type to a scalar of the same data type
and produce an array or cluster of Boolean values. The connector pane displays the
default data types for this polymorphic function.
748 ni.com
Functions
Inputs/Outputs
• x—
x is a value to compare to y
• y—
• x > y? —
When you compare arrays, x > y? is a scalar in Compare Aggregates mode and a Boolean array in
Compare Elements mode (default).
Less? Function
Returns TRUE if x is less than y. Otherwise, this function returns FALSE. You can change
the comparison mode of this function.
You can compare an array or cluster of a data type to a scalar of the same data type
and produce an array or cluster of Boolean values. The connector pane displays the
default data types for this polymorphic function.
Inputs/Outputs
• x—
x is a value to compare to y
• y—
• x < y? —
x < y? returns the Boolean result of the operation. When you compare arrays, x < y? is a scalar in
Compare Aggregates mode and a Boolean array in Compare Elements mode (default).
Returns TRUE if x is greater than or equal to y. Otherwise, this function returns FALSE.
You can change the comparison mode of this function.
You can compare an array or cluster of a data type to a scalar of the same data type
and produce an array or cluster of Boolean values. The connector pane displays the
default data types for this polymorphic function.
Inputs/Outputs
• x—
x is a value to compare to y
• y—
• x >= y? —
When you compare arrays, x >= y? is a scalar in Compare Aggregates mode and a Boolean array
in Compare Elements mode (default).
Returns TRUE if x is less than or equal to y. Otherwise, this function returns FALSE. You
can change the comparison mode of this function.
750 ni.com
Functions
You can compare an array or cluster of a data type to a scalar of the same data type
and produce an array or cluster of Boolean values. The connector pane displays the
default data types for this polymorphic function.
Inputs/Outputs
• x—
x is a value to compare to y
• y—
• x <= y? —
x ≤ y? returns the Boolean result of the operation. When you compare arrays, x ≤ y? is a scalar in
Compare Aggregates mode and a Boolean array in Compare Elements mode (default).
Equal To 0? Function
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a numeric scalar value, cluster, array of numbers, or a time stamp value.
• x = 0? —
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a numeric scalar value, cluster, array of numbers, or a time stamp value.
• x != 0? —
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a numeric scalar value, cluster, array of numbers, or a time stamp value.
• x > 0? —
752 ni.com
Functions
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a numeric scalar value, cluster, array of numbers, or a time stamp value.
• x < 0? —
Returns TRUE if x is greater than or equal to 0. Otherwise, this function returns FALSE.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a numeric scalar value, cluster, array of numbers, or a time stamp value.
• x >= 0? —
Returns TRUE if x is less than or equal to 0. Otherwise, this function returns FALSE.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
x can be a numeric scalar value, cluster, array of numbers, or a time stamp value.
• x <= 0? —
Select Function
Returns the value wired to the t input or f input, depending on the value of s. If s is
TRUE, this function returns the value wired to t. If s is FALSE, this function returns the
value wired to f.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• t—
754 ni.com
Functions
t and f must be of the same type, but they can have different numeric representations.
• s—
If you wire an error cluster to s and an error occurs, the error cluster passes a TRUE value to the
function. Otherwise, the error cluster passes a FALSE value to the function.
• f—
t and f must be of the same type, but they can have different numeric representations.
• s? t:f —
s? t:f is the value wired to t if s is TRUE. s? t:f is the value wired to f if s is FALSE.
Compares x and y and returns the larger value at the top output terminal and the
smaller value at the bottom output terminal. This function accepts time stamp values
if all inputs are time stamp values. If the inputs are time stamp values, the function
returns the later time at the top and the earlier time at the bottom. You can change the
comparison mode of this function.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• x—
• y—
• max(x,y) —
max(x, y) is the larger value. When you compare arrays in Compare Elements mode (default),
this function compares corresponding elements in each input array and returns the element
with the maximum value. max(x, y) is an array consisting of the maximum value elements. When
you compare arrays in Compare Aggregates mode, this function compares corresponding
elements in each input array starting at the beginning of the array. When this function reaches a
pair of unequal corresponding elements, max(x, y) returns the array that has the greater value
for that element.
• min(x,y) —
min(x, y) is the smaller value. When you compare arrays in Compare Elements mode (default),
this function compares corresponding elements in each input array and returns the element
with the minimum value. min(x, y) is an array consisting of the minimum value elements. When
you compare arrays in Compare Aggregates mode, this function compares corresponding
elements in each input array starting at the beginning of the array. When this function reaches a
pair of unequal corresponding elements, min(x, y) returns the array that has the smaller value
for that element.
In Compare Elements mode, when one or both inputs are NaN (Not-a-Number), this
function produces the following results:
In Compare Aggregates mode, when one or both inputs are NaN (Not-a-Number), this
function produces the following results:
756 ni.com
Functions
Determines whether x falls within a range specified by the upper limit and lower limit
inputs and optionally coerces the value to fall within the range. The function performs
the coercion only in Compare Elements mode. This function accepts time stamp values
if all inputs are time stamp values. You can change the comparison mode of this
function.
upper limit, x, and lower limit should usually be of the same data type structure,
either arrays or clusters, but they can have different numeric representations.
For example, if you change one of the data types to an array, you must change the
remaining data types to arrays to avoid broken wires. However, you can wire an array
to x and two scalars to upper limit and lower limit. You also can wire double-
precision, floating-point and integer data.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• upper limit —
• x—
• lower limit —
• coerced(x) —
coerced(x) returns the coerced or unchanged value of x. If x is within the range set by the upper
limit and lower limit inputs or if the function is in Compare Aggregates mode, the value is
unchanged. If x is not in range and the function is in Compare Elements mode, the function
converts the value to the same value as upper limit or lower limit. If upper limit, x, or lower
limit is NaN, coerced(x) is NaN.
• In Range? —
In Range? is a Boolean value in Compare Aggregates mode. In Compare Elements mode, the
data type structure of In Range? matches the data type structure of x, with each scalar replaced
by a Boolean value. If upper limit, x, or lower limit is NaN, In Range? is FALSE.
This function compares the input data values according to the Boolean comparison
rules. If the function is in Compare Aggregates mode, it returns the unchanged value of
x in coerced(x) rather than a coerced value. The function considers each input array as
a single aggregate object, similar to a cluster, where the first element is primary in the
comparison. If x is greater than upper limit and the function is in Compare Elements
mode (default), the function coerces x to the upper limit value. If x is less than lower
limit and the function is in Compare Elements mode, the function coerces x to the
lower limit value.
If you wire a combination of signed and unsigned integers to the upper limit, x, and
lower limit inputs of the In Range and Coerce function, all of the inputs will be coerced
to the same unsigned integer type. This can lead to unexpected results for negative
input values. For example, wiring an unsigned integer to upper limit and a negative
signed integer to lower limit may cause LabVIEW to interpret the lower limit input as
larger than the upper limit input. To avoid this issue, convert integer inputs to the
same type before you wire them to the In Range and Coerce function.
If the lower limit value is greater than the upper limit value, In Range? is always FALSE
and LabVIEW switches the lower limit value and the upper limit value internally before
computing coerced(x).
Examples
758 ni.com
Functions
Use this function to make sure a reference to an object, such as a VI, application, or
control, still resides in system memory and was not closed.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• number/path/refnum —
• NaN/Path/Refnum? —
This function works only on references generated by LabVIEW functions. Do not use
this function to determine the validity of a rendezvous refnum, semaphore refnum, or
any refnum created by the GOOP wizard, LabVIEW Database Connectivity Toolkit, or
LabVIEW Internet Toolkit. For rendezvous refnums, use the Not A Rendezvous VI. For
semaphore refnums, use the Not A Semaphore VI. For all other GOOP refnums or
toolkit refnums, use the Vis defined by the refnum creator.
To avoid race conditions when evaluating the refnum status, National Instruments
recommends limiting the usage of this function in the following ways:
• Do not use this function to evaluate whether a refnum is invalid before using the
refnum.
• Use this function in custom probes to get the refnum status.
• Use this function to evaluate the status of an existing invalid refnum before
Returns TRUE if the input array is empty. Otherwise, this function returns FALSE.
Inputs/Outputs
• array —
• empty? —
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• string/path —
760 ni.com
Functions
string/path can be a string, a path, a variant, a picture string, a DSC tag, or an array or a cluster
of these types.
• empty? —
Returns TRUE if char represents a decimal digit ranging from 0 through 9. If char is a
string, this function uses the first character in the string. If char is a number, this
function interprets it as the ASCII value of a character. If char is a floating-point
number, this function rounds to the nearest integer. Otherwise, this function returns
FALSE.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• char —
char can be a scalar string or number, clusters of strings or numbers, arrays of strings or
numbers, and so on.
• digit? —
Examples
Returns TRUE if char represents a hex digit ranging from 0 through 9, A through F, or a
through f. If char is a string, this function uses the first character in the string. If char is
a number, this function interprets it as the ASCII value of a character. If char is a
floating-point number, this function rounds to the nearest integer. Otherwise, this
function returns FALSE.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• char —
char can be a scalar string or number, clusters of strings or numbers, arrays of strings or
numbers, and so on.
• hex? —
Examples
Returns TRUE if char represents an octal digit ranging from 0 through 7. If char is a
string, this function uses the first character in the string. If char is a number, this
function interprets it as the ASCII value of a character. If char is a floating-point
number, this function rounds to the nearest integer. Otherwise, this function returns
FALSE.
762 ni.com
Functions
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• char —
char can be a scalar string or number, clusters of strings or numbers, arrays of strings or
numbers, and so on.
• octal? —
Examples
Printable? Function
Returns TRUE if char represents a printable ASCII character. If char is a string, this
function uses the first character in the string. If char is a number, this function
interprets it as the ASCII value of a character. If char is a floating-point number, this
function rounds to the nearest integer. Otherwise, this function returns FALSE.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• char —
char can be a scalar string or number, clusters of strings or numbers, arrays of strings or
numbers, and so on.
• printable ASCII? —
printable ASCII? is a Boolean value of the same data type structure as char.
Examples
Returns TRUE if char represents a white space character, such as Space, Tab, Newline,
Carriage Return, Form Feed, or Vertical Tab. If char is a string, this function uses the
first character in the string. If char is a number, this function interprets it as the ASCII
value of a character. If char is a floating-point number, this function rounds to the
nearest integer. Otherwise, the function returns FALSE.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• char —
char can be a scalar string or number, clusters of strings or numbers, arrays of strings or
numbers, and so on.
space, h/v tab, cr, lf, ff? is a Boolean value of the same data type structure as char.
764 ni.com
Functions
Examples
Returns the class number for char. If char is a string, this function uses the first
character in the string. If char is a number, this function interprets it as the ASCII value
of a character.
Inputs/Outputs
• char —
char can be a scalar string or number, clusters of strings or numbers, arrays of strings or
numbers, and so on.
• class number —
Refer to the ASCII Codes table for the numbers that correspond to each character.
Class
Lexical Class
Number
0 Extended characters (codes 128 through 255)
1 Non-displayable ASCII characters (codes 0 to 31 excluding 9 through 13)
White space characters: Space, Tab, Carriage Return, Form Feed, Newline, and Vertical
2
Tab (codes 32, 9, 13, 12, 10, and 11, respectively)
3 Digits 0 through 9
4 Uppercase characters A through Z
5 Lowercase characters a through z
6 All printable ASCII non-alphanumeric characters
Examples
Comparison
Compares input items you specify to determine whether values are equal, greater
than, less than, and so on.
Option Description
Contains the following options:
• Data points—Compares the data points of the signals in Operand 1 to the data
points of the signals in Operand 2, the value you specify in Value, or the
Constant Value to Compare Against input.
• Timestamps—Compares the initial time stamps (t0) of the signals in Operand 1
to the initial time stamps (t0) of the signals in Operand 2, the value you specify in
Value, or the Constant Value to Compare Against input.
• Time between points—Compares the time between points (dt) of the signals in
Operand 1 to the time between points (dt) of the signals in Operand 2, the value
you specify in Value, or the Constant Value to Compare Against input.
Items to
• Number of data points—Compares the number of data points of the signals in
Compare
Operand 1 to the number of data points of the signals in Operand 2, the value
you specify in Value, or the Constant Value to Compare Against input.
• Signal name—Compares the signal names of the signals in Operand 1 to the
signal names of the signals in Operand 2, the value you specify in Value, or the
Constant Value to Compare Against input. When comparing signal names, you
can use wildcards to match strings. You can use the question mark character (?)
to match any single character. You can use the asterisk character (*) to match any
sequence of zero or more characters.
If you select Signal name, the Comparison Condition section is disabled and set
766 ni.com
Functions
Option Description
to = Equal.
• = Equal—
• > Greater—
Compare Determines if the first input is greater than or equal to the second input.
Condition
• < Less—
Determines if the first input is less than or equal to the second input.
Determines if the inputs are equal within the tolerance you specify in Tolerance.
◦ Tolerance—
• In range—
Option Description
• Out of range—
Determines if an input falls out of the range Minimum and Maximum specify.
• Minimum—
Specifies the minimum value of the In range and Out of range comparisons. The
Express VI includes Minimum in the range. The default is 0.
• Maximum—
Specifies the maximum value of the In range and Out of range comparisons. The
Express VI includes Maximum in the range. The default is 1.
If Operand 1 and Operand 2 are the same size, each item in Operand 1 is
compared to the corresponding item in Operand 2. If Operand 1 and Operand 2
Comparison are of different sizes, all the items in Operand 1 are compared to the first item in
Inputs Operand 2.
• Value—
Compares the Operand 1 input to a constant value you specify. The default is 0. If
you wire the Constant Value to Compare Against input, the VI uses the value
that this input specifies instead.
◦ Point value—
Specifies the constant value with which to compare the Operand 1 input.
The default is 0.
768 ni.com
Functions
Option Description
◦ Timestamp value—
Specifies the constant value with which to compare the Operand 1 input.
The default is 0.
Returns one result per data point. This option is available only when you select
Data points from the Items to Compare pull-down menu.
Returns one result per channel. When you select Data points from the Items to
Result Compare pull-down menu, One result per channel returns 1 only if all data
points in the channel pass the specified comparison. If any point fails, it returns
0.
Returns one result for all the channels. When you select Data points from the
Items to Compare pull-down menu, One result for all channels returns 1 only if
all data points in the channels pass the specified comparison. If any point fails, it
returns 0.
Option Description
• Invert result—
Input Signal If you wire data to the Express VI and run it, Input Signal displays real data. If you
close and reopen the Express VI, Input Signal displays sample data until you run the
Express VI again.
Result If you wire data to the Express VI and run the VI, Result Preview displays real data. If
Preview you close and reopen the Express VI, Result Preview displays sample data until you
run the VI again. If the cutoff frequency values are invalid, Result Preview does not
display valid data.
Inputs/Outputs
• error in (no error) —
• Operand 2 —
Specifies the second signal input for comparison. This input is available only when you select
Second signal input in the configuration dialog box.
770 ni.com
Functions
Specifies the constant value with which to compare the Operand 1 input. If Constant Value to
Compare Against is not wired, the VI uses the Value specified in the configuration dialog box.
• Operand 1 —
• Invert Output —
• Result —
Returns the resulting data based on the configuration of the Express VI.
• error out —
Contains error information. This output provides standard error out functionality.
Components
Specifies the constant value with which to compare the Operand 1 input. The default
is 0.
Returns one result for all the channels. When you select Data points from the Items to
Compare pull-down menu, One result for all channels returns 1 only if all data points
in the channels pass the specified comparison. If any point fails, it returns 0.
Returns one result per channel. When you select Data points from the Items to
Compare pull-down menu, One result per channel returns 1 only if all data points in
the channel pass the specified comparison. If any point fails, it returns 0.
Returns one result per data point. This option is available only when you select Data
points from the Items to Compare pull-down menu.
Compares the Operand 1 input to a constant value you specify. The default is 0. If you
wire the Constant Value to Compare Against input, the VI uses the value that this
input specifies instead.
Compares the Operand 1 input of the Express VI to a second signal input as opposed to
a value you specify in Value or the Constant Value to Compare Against input. Select
this option to include the Operand 2 input on the Express VI.
Specifies the constant value with which to compare the Operand 1 input. The default
is 0.
Specifies the level of tolerance to use when determining if an input is Equal within
tolerance. The default is 0.01.
Specifies the maximum value of the In range and Out of range comparisons. The
Express VI includes Maximum in the range. The default is 1.
Specifies the minimum value of the In range and Out of range comparisons. The
Express VI includes Minimum in the range. The default is 0.
Determines if an input falls out of the range Minimum and Maximum specify.
Determines if the inputs are equal within the tolerance you specify in Tolerance.
Determines if the first input is less than or equal to the second input.
772 ni.com
Functions
Determines if the first input is greater than or equal to the second input.
Changes the name of the Express VI on the block diagram to the name of the function
you select in the Comparison Condition section of the configuration dialog box.
Assert Type
Use the Assert Type VIs and functions in conjunction with the Type Specialization
structure for the following purposes:
Palette
Description
Object
Has one or more subdiagrams, exactly one of which LabVIEW compiles and
executes, depending on the order and the compilation result of the subdiagram.
LabVIEW declines subdiagrams in order if they have syntax errors. LabVIEW accepts
the first subdiagram that does not have syntax errors and ignores the remaining
Type subdiagrams. If all subdiagrams have syntax errors, this structure accepts the last
Specialization subdiagram. Syntax errors are errors within the structure, such as broken wires, not
Structure errors caused by subVIs or other dependencies. Use this structure to customize
sections of code in a malleable VI (.vim) for specific data types. You also can use this
structure in conjunction with the Assert Type VIs and functions to force a malleable
VI to accept only a subset of the acceptable data types or to decline specific data
types.
Assert
Breaks the calling VI unless the two input data types are identical, ignoring type
Structural
definitions and type names.
Type Match
Palette
Description
Object
Function
Assert
Structural Breaks the calling VI if type is the same data type as any of the mismatch inputs,
Type ignoring type definitions and type names.
Mismatch
Breaks the calling VI unless value in is an array with the same number of
dimensions as array type.
Assert Array To check if each dimension has the same size, use the Assert Array Dimension Sizes
Dimension VI.
Count VI
This VI does nothing at run time. Use this VI in conjunction with the Type
Specialization structure to customize sections of code in a malleable VI (.vim) for
certain array types or to force a malleable VI to accept certain array types only.
Breaks the calling VI unless value in is an array with the same number of
dimensions as array type and each dimension in value in has the same size
requirement (fixed, bounded, or variable-sized) and size (for fixed and bounded) as
the corresponding dimension in array type.
Assert Array
Dimension If you do not need to compare the size of each dimension, use the Assert Array
Sizes VI Dimension Count VI.
This VI does nothing at run time. Use this VI in conjunction with the Type
Specialization structure to customize sections of code in a malleable VI (.vim) for
certain array types or to force a malleable VI to accept certain array types only.
Assert Same
or Breaks the calling VI unless the input data is the same as or is a descendant of the
Descendant
774 ni.com
Functions
Palette
Description
Object
This VI does nothing at run time. Use this VI in conjunction with the Type
Type VI Specialization structure to customize sections of code in a malleable VI (.vim) for
the specified class or interface or the descendants of the specified class or interface
or to force a malleable VI to accept the specified class or interface or the
descendants of the specified class or interface only.
Breaks the calling VI unless the input data is a scalar numeric or analog waveform
type.
Assert Scalar
Numeric Or
This VI does nothing at run time. Use this VI in conjunction with the Type
Waveform
Specialization structure to customize sections of code in a malleable VI (.vim) for
Type VI
scalar numeric or waveform types or to force a malleable VI to accept scalar
numeric or waveform types only.
Breaks the calling VI unless the input data is a scalar numeric type.
Assert Scalar
Numeric Type This VI does nothing at run time. Use this VI in conjunction with the Type
VI Specialization structure to customize sections of code in a malleable VI (.vim) for
scalar numeric types or to force a malleable VI to accept scalar numeric types only.
Breaks the calling VI unless the input data is a non-complex numeric or analog
waveform type.
Assert Real
Numeric Or
This VI does nothing at run time. Use this VI in conjunction with the Type
Waveform
Specialization structure to customize sections of code in a malleable VI (.vim) for
Type VI
non-complex numeric or waveform types or to force a malleable VI to accept non-
complex numeric or analog waveform types only.
Breaks the calling VI unless the input data is a non-complex numeric type.
Assert Real
Numeric Type
This VI does nothing at run time. Use this VI in conjunction with the Type
VI
Specialization structure to customize sections of code in a malleable VI (.vim) for
Palette
Description
Object
Breaks the calling VI unless the input data is a floating-point, complex floating-
point, or fixed-point numeric type.
Assert
Fractional This VI does nothing at run time. Use this VI in conjunction with the Type
Numeric Type Specialization structure to customize sections of code in a malleable VI (.vim) for
VI floating-point, complex floating-point, or fixed-point numeric types or to force a
malleable VI to accept floating-point, complex floating-point, or fixed-point
numeric types only.
Breaks the calling VI unless the input data is a complex numeric type.
Assert
Complex This VI does nothing at run time. Use this VI in conjunction with the Type
Numeric Type Specialization structure to customize sections of code in a malleable VI (.vim) for
VI complex numeric types or to force a malleable VI to accept complex numeric types
only.
Breaks the calling VI unless the input data is a floating-point or complex floating-
Assert point numeric type.
Floating-
Point This VI does nothing at run time. Use this VI in conjunction with the Type
Numeric Type Specialization structure to customize sections of code in a malleable VI (.vim) for
VI floating-point or complex floating-point numeric types or to force a malleable VI to
accept floating-point or complex floating-point numeric types only.
Breaks the calling VI unless the input data is a non-complex floating-point numeric
Assert Real type.
Floating-
Point This VI does nothing at run time. Use this VI in conjunction with the Type
Numeric Type Specialization structure to customize sections of code in a malleable VI (.vim) for
VI non-complex floating-point numeric types or to force a malleable VI to accept non-
complex floating-point numeric types only.
776 ni.com
Functions
Palette
Description
Object
Breaks the calling VI unless the input data is an integer numeric type.
Assert Integer This VI does nothing at run time. Use this VI in conjunction with the Type
Type VI Specialization structure to customize sections of code in a malleable VI (.vim) for
integer numeric types or to force a malleable VI to accept integer numeric types
only.
Breaks the calling VI unless the input data is a signed integer numeric type.
Assert Signed
This VI does nothing at run time. Use this VI in conjunction with the Type
Integer Type
Specialization structure to customize sections of code in a malleable VI (.vim) for
VI
signed integer numeric types or to force a malleable VI to accept signed integer
numeric types only.
Breaks the calling VI unless the input data is an unsigned integer numeric type.
Assert
Unsigned This VI does nothing at run time. Use this VI in conjunction with the Type
Integer Type Specialization structure to customize sections of code in a malleable VI (.vim) for
VI unsigned integer numeric types or to force a malleable VI to accept unsigned
integer numeric types only.
Breaks the calling VI unless the input data is a fixed-point numeric type.
Assert Fixed-
Point This VI does nothing at run time. Use this VI in conjunction with the Type
Numeric Type Specialization structure to customize sections of code in a malleable VI (.vim) for
VI fixed-point numeric data types or to force a malleable VI to accept fixed-point
numeric types only.
Has one or more subdiagrams, exactly one of which LabVIEW compiles and executes,
depending on the order and the compilation result of the subdiagram. LabVIEW
declines subdiagrams in order if they have syntax errors. LabVIEW accepts the first
subdiagram that does not have syntax errors and ignores the remaining subdiagrams.
If all subdiagrams have syntax errors, this structure accepts the last subdiagram.
Syntax errors are errors within the structure, such as broken wires, not errors caused
by subVIs or other dependencies. Use this structure to customize sections of code in a
malleable VI (.vim) for specific data types. You also can use this structure in
conjunction with the Assert Type VIs and functions to force a malleable VI to accept
only a subset of the acceptable data types or to decline specific data types.
After you create a Type Specialization structure, you can add, duplicate, rearrange, or
delete the subdiagrams. To scroll through the available subdiagrams, click the
decrement and increment arrows in the selector label. You also can remove the
structure without deleting objects in the structure.
The Type Specialization structure allows you to disable specific sections of code on the
block diagram based on compilation results. To disable specific sections of code on
the block diagram based on some user-defined condition, use the Conditional Disable
structure. To disable a section of a block diagram, use the Diagram Disable structure.
Examples
Breaks the calling VI unless the two input data types are identical, ignoring type
definitions and type names.
778 ni.com
Functions
This function does nothing at run time. Use this function in conjunction with the Type
Specialization structure to customize sections of code in a malleable VI (.vim) for
specific data types or to force a malleable VI to accept only data types that meet
certain requirements.
Inputs/Outputs
• anything —
LabVIEW ignores any run-time value on the wire connected to this input.
• reference —
reference specifies the second input data type, which you want to compare against x.
To set the data type of this input, wire a constant or control of the desired data type to reference.
LabVIEW ignores any run-time value on the wire connected to this input.
For data types with subtypes, such as arrays, clusters, and some refnums, this function
also checks array dimensions and subtypes, but not the subtype names. For example,
this function causes the calling VI to break if one input data type is 1D array of variant
and the other is 2D array of variant or 1D array of scalars. If one input data type is a
cluster of a string named lecture and an unsigned 8-bit integer named number of
students, while the other input data type is a cluster of a string named lecture 1
and an unsigned 8-bit integer named size, the calling VI does not break because the
subtypes of the two clusters are the same even though the subtype names are
different.
Breaks the calling VI if type is the same data type as any of the mismatch inputs,
ignoring type definitions and type names.
This function does nothing at run time. Use this function in conjunction with the Type
Inputs/Outputs
• type —
LabVIEW ignores any run-time value on the wire connected to this input.
• mismatch —
mismatch specifies the data type that you want to compare against type.
To set the data type of this input, wire a constant or control of the desired data type to
mismatch. Wire one data type to each mismatch input you want to compare against type.
LabVIEW ignores any run-time value on the wire connected to this input.
To avoid unexpected behavior in your malleable VI, you can use this function to force a
specific subdiagram of your Type Specialization structure to decline data types that
you intend to be accepted by previous subdiagrams.
For example, you create code in the first subdiagram of a Type Specialization structure
for data type A in a malleable VI. When the input data type is A, you expect the Type
Specialization structure to accept the first subdiagram. However, if the code in the first
subdiagram breaks for reasons unrelated to the data type, for example, due to a
broken subVI, the Type Specialization structure declines the first subdiagram and
attempts to compile the remaining subdiagrams in order. A problem that can arise in
this situation is when one of the remaining subdiagrams is also acceptable with data
type A. In this case, the malleable VI is unbroken but may behave in an unexpected
way for data type A.
780 ni.com
Functions
For data types with subtypes, such as arrays, clusters, and some refnums, this function
also checks array dimensions and subtypes, but not the subtype names. For example,
the calling VI does not break if the input data type is 1D array of variant and the
specified mismatch data type is 2D array of variant or 1D array of scalars. If the input
data type is a cluster of a string named lecture and an unsigned 8-bit integer named
number of students, while the specified mismatch data type is a cluster of a
string named lecture 1 and an unsigned 8-bit integer named size, the calling VI
breaks because the subtypes of the two clusters are the same even though the subtype
names are different.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for error clusters or to
force a malleable VI to accept error clusters only.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for error clusters or to
force a malleable VI to accept error clusters only.
Inputs/Outputs
• value in —
• value out —
value out returns the input data if value in is an error cluster. Otherwise, this output returns an
empty error cluster.
Breaks the calling VI unless value in is an array with the same number of dimensions
as array type.
To check if each dimension has the same size, use the Assert Array Dimension Sizes VI.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for certain array types
or to force a malleable VI to accept certain array types only.
Inputs/Outputs
• array type —
array type specifies the input comparison array with the requirements that the input data must
meet.
This input accepts arrays of any data type. To set the data type of this input, wire a constant or
control of the desired data type to array type. LabVIEW ignores any data in the constant or
control wired to array type.
• value in —
This input accepts arrays that meet the requirements of array type.
• value out —
value out returns the input data if value in is an array that meets the requirements. Otherwise,
this output returns an empty array of array type.
Breaks the calling VI unless value in is an array with the same number of dimensions
782 ni.com
Functions
as array type and each dimension in value in has the same size requirement (fixed,
bounded, or variable-sized) and size (for fixed and bounded) as the corresponding
dimension in array type.
If you do not need to compare the size of each dimension, use the Assert Array
Dimension Count VI.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for certain array types
or to force a malleable VI to accept certain array types only.
Inputs/Outputs
• array type —
array type specifies the input comparison array with the requirements that the input data must
meet.
This input accepts arrays of any data type. To set the data type of this input, wire a constant or
control of the desired data type to array type. LabVIEW ignores any data in the constant or
control wired to array type.
• value in —
This input accepts arrays that meet the requirements of array type.
• value out —
value out returns the input data if value in is an array that meets the requirements. Otherwise,
this output returns an empty array of array type.
Breaks the calling VI unless the input data is the same as or is a descendant of the
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for the specified class
or interface or the descendants of the specified class or interface or to force a
malleable VI to accept the specified class or interface or the descendants of the
specified class or interface only.
Inputs/Outputs
• ancestor type —
ancestor type specifies the input class or interface with the requirements that the input data
must meet.
This input accepts any class or interface. To set the class or interface of this input, wire a
constant or control of the desired class or interface to ancestor type. LabVIEW ignores any data
in the constant or control wired to ancestor type.
• value in —
This input accepts the class or interface of ancestor type or descendants of ancestor type.
• value out —
value out returns the input data if value in meets the requirements. Otherwise, this output
returns the default value of ancestor type.
Breaks the calling VI unless the input data is a scalar numeric or analog waveform
type.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
784 ni.com
Functions
Inputs/Outputs
• value in —
• value out —
value out returns the input data if value in is a scalar numeric or analog waveform type.
Otherwise, this output returns a double-precision floating-point number 0.
Breaks the calling VI unless the input data is a scalar numeric type.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for scalar numeric
types or to force a malleable VI to accept scalar numeric types only.
Inputs/Outputs
• value in —
• value out —
value out returns the input data if value in is a scalar numeric type. Otherwise, this output
returns a double-precision floating-point number 0.
Breaks the calling VI unless the input data is a non-complex numeric or analog
waveform type.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for non-complex
numeric or waveform types or to force a malleable VI to accept non-complex numeric
or analog waveform types only.
Inputs/Outputs
• value in —
• value out —
value out returns the input data if value in is a non-complex numeric or analog waveform type.
Otherwise, this output returns a double-precision floating-point number 0.
Breaks the calling VI unless the input data is a non-complex numeric type.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for non-complex
numeric types or to force a malleable VI to accept non-complex numeric types only.
786 ni.com
Functions
Inputs/Outputs
• value in —
• value out —
value out returns the input data if value in is a non-complex numeric type. Otherwise, this
output returns a double-precision floating-point number 0.
Breaks the calling VI unless the input data is a floating-point, complex floating-point,
or fixed-point numeric type.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for floating-point,
complex floating-point, or fixed-point numeric types or to force a malleable VI to
accept floating-point, complex floating-point, or fixed-point numeric types only.
Inputs/Outputs
• value in —
This input accepts any floating-point, complex floating-point, or fixed-point numeric data type.
• value out —
value out returns the input data if value in is a floating-point, complex floating-point, or fixed-
point numeric type. Otherwise, this output returns a double-precision floating-point number 0.
Breaks the calling VI unless the input data is a complex numeric type.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for complex numeric
types or to force a malleable VI to accept complex numeric types only.
Inputs/Outputs
• value in —
• value out —
value out returns the input data if value in is a complex numeric type. Otherwise, this output
returns a complex double-precision number 0 +0 i.
Breaks the calling VI unless the input data is a floating-point or complex floating-point
numeric type.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for floating-point or
complex floating-point numeric types or to force a malleable VI to accept floating-
788 ni.com
Functions
Inputs/Outputs
• value in —
This input accepts any floating-point or complex floating-point numeric data type.
• value out —
value out returns the input data if value in is a floating-point or complex floating-point numeric
type. Otherwise, this output returns a double-precision floating-point number 0.
Breaks the calling VI unless the input data is a non-complex floating-point numeric
type.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for non-complex
floating-point numeric types or to force a malleable VI to accept non-complex floating-
point numeric types only.
Inputs/Outputs
• value in —
• value out —
value out returns the input data if value in is a non-complex floating-point numeric type.
Otherwise, this output returns a double-precision floating-point number 0.
Breaks the calling VI unless the input data is an integer numeric type.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for integer numeric
types or to force a malleable VI to accept integer numeric types only.
Inputs/Outputs
• value in —
• value out —
value out returns the input data if value in is an integer numeric type. Otherwise, this output
returns a 32-bit signed integer 0.
Breaks the calling VI unless the input data is a signed integer numeric type.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for signed integer
numeric types or to force a malleable VI to accept signed integer numeric types only.
790 ni.com
Functions
Inputs/Outputs
• value in —
• value out —
value out returns the input data if value in is a signed integer numeric type. Otherwise, this
output returns a 32-bit signed integer 0.
Breaks the calling VI unless the input data is an unsigned integer numeric type.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for unsigned integer
numeric types or to force a malleable VI to accept unsigned integer numeric types only.
Inputs/Outputs
• value in —
• value out —
value out returns the input data if value in is an unsigned integer numeric type. Otherwise, this
output returns a 32-bit unsigned integer 0.
Breaks the calling VI unless the input data is a fixed-point numeric type.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for fixed-point
numeric data types or to force a malleable VI to accept fixed-point numeric types only.
This VI does nothing at run time. Use this VI in conjunction with the Type Specialization
structure to customize sections of code in a malleable VI (.vim) for fixed-point
numeric data types or to force a malleable VI to accept fixed-point numeric types only.
Inputs/Outputs
• value in —
• value out —
value out returns the input data if value in is a fixed-point numeric type. Otherwise, this output
returns a fixed-point number 0.
Is Value Changed
Returns TRUE if this is the first call of this VI or if the input value is different from the
value when this VI was last called.
Inputs/Outputs
• value —
792 ni.com
Functions
value specifies the value to check. This input accepts any data type.
changed or first call? returns TRUE if this is the first call of this VI or if the value changed since
the last time this VI was called. Otherwise, this output returns FALSE.
Examples
Returns TRUE if path is any value other than <Not A Path> or an empty path.
Otherwise, this VI returns FALSE.
Inputs/Outputs
• path —
Is Path and Not Empty? returns TRUE if path is any value other than <Not A Path> or an
empty path. Otherwise, Is Path and Not Empty? returns FALSE.
Returns TRUE if FXP includes an overflow status and FXP is the result of an operation
that overflowed. Otherwise, this function returns FALSE.
Inputs/Outputs
• FXP —
• overflow? —
overflow? is TRUE if FXP includes an overflow status and FXP is the result of an operation that
overflowed.
If FXP does not include an overflow status, or if FXP includes an overflow status but is not the
result of an operation that overflowed, overflow? is FALSE.
Waveform
Use the Waveform VIs and functions to build waveforms that include the waveform
values, channel information, and timing information, and to set and retrieve waveform
attributes and components.
The VIs and functions on this palette can return waveform error codes.
Palette
Description
Object
Get
Returns the analog waveform you specify. You specify components by clicking on the
Waveform
center of the output terminal and selecting the component you want.
Components
Builds an analog waveform or modifies an existing waveform. If you do not wire the
Build waveform input, the function creates a new waveform based on the components
Waveform you wire. If you wire the waveform input, the function modifies the waveform based
on the components you wire.
Set Adds or replaces a waveform attribute. You can use any type of data for the value of
794 ni.com
Functions
Palette
Description
Object
Waveform
Attribute the attribute.
Function
Get
Waveform Retrieves the names and values of all attributes or the value of a single attribute,
Attribute depending on whether you wire the name parameter.
Function
Analog to Converts analog waveform to a digital waveform or digital data. You must manually
Digital select the polymorphic instance you want to use.
Digital to Converts a digital waveform or digital data to analog waveform. You must manually
Analog select the polymorphic instance you want to use.
Selects one waveform out of an array of analog or digital waveforms by array index
Index
or channel name. The data types you wire to the waveform array and index inputs
Waveform
and the data type of the Y component of the analog waveform determine the
Array
polymorphic instance to use.
Replaces all dt values with the dt value of the waveform at index position in
Copy waveforms in. The data type you wire to the waveforms in input and the data type of
Waveform dt the Y component of the analog waveform determine the polymorphic instance to
use.
Replaces all the time stamp values (t0) in waveforms in with the value of the index
Align
element in the array. The data type you wire to the waveforms in input and the data
Waveform
type of the Y component of the analog waveform determine the polymorphic
Timestamps
instance to use.
Get
Retrieves a subset of a waveform at a specified time or index. You must manually
Waveform
select the polymorphic instance you want to use.
Subset
Palette
Description
Object
Returns the ending time value of waveform in. The formula used is xf = x0 + duration
Get Final
of waveform in. Wire data to the waveform in input to determine the polymorphic
Time Value
instance to use or manually select the instance.
Multiplies the delta t component of the waveform by the specified scale factor.
Generally, this lengthens or shortens the sample rate of the waveform. The data type
Scale Delta t
you wire to the waveform in input and the data type of the Y component of the
analog waveform determine the polymorphic instance to use.
Returns the X and Y value of a waveform or digital data set. The data type you wire to
Get XY Value the waveform in input and the data type of the Y component of the analog waveform
determine the polymorphic instance to use.
Get Creates an array of waveform time stamps. Each element in the array is the time
Waveform stamp for each data value in the waveform. Wire data to the waveform in input to
Time Array determine the polymorphic instance to use or manually select the instance.
Analog Use the Analog Waveform VIs and functions to perform arithmetic and comparison
Waveform functions on waveforms.
Digital Use the Digital Waveform VIs and functions to perform operations on digital
Waveform waveforms and digital data.
Waveform Use the Waveform File I/O VIs to write waveform data to and read waveform data
File I/O from files.
796 ni.com
Functions
Returns the analog waveform you specify. You specify components by clicking on the
center of the output terminal and selecting the component you want.
Inputs/Outputs
• waveform —
• t0 —
• dt —
dt returns the time interval in seconds between data points in the waveform.
• Y—
• attributes —
You also can use the Get Waveform Attribute VI to retrieve the names and values of all attributes
or the value of a single attribute.
Build Waveform
Builds an analog waveform or modifies an existing waveform. If you do not wire the
waveform input, the function creates a new waveform based on the components you
wire. If you wire the waveform input, the function modifies the waveform based on the
components you wire.
Inputs/Outputs
• waveform —
waveform is the analog waveform you want to edit. If you do not wire an existing waveform, the
function creates a new waveform based on the components you wire.
• t0 —
• dt —
dt specifies the time interval in seconds between data points in the waveform.
• Y—
• attributes —
You also can use the Set Waveform Attribute function to set the name and value of a single
attribute.
• output waveform —
waveform is the resulting waveform. If you did not wire an existing waveform, this is a new
waveform. If you wired an existing waveform, this is the edited waveform.
Adds or replaces a waveform attribute. You can use any type of data for the value of
the attribute.
798 ni.com
Functions
Inputs/Outputs
• waveform —
waveform is the waveform for which you want to add or replace an attribute.
• name —
• value —
value is the value of the attribute. This input is polymorphic, so you can wire any data to it.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• replaced —
• error out —
error out contains error information. This output provides standard error out functionality.
If the attribute in name already exists, the function overwrites the attribute with the
new value, and replaced is TRUE. If the attribute in name does not exist already, the
function creates a new attribute. Some attributes are set by NI-DAQ and Express VIs.
Type
Hardware Any value is NI_DeviceNumber is the device
Device NI_DeviceNumber String acceptable for number of the hardware producing
Number NI_DeviceNumber. the waveform.
Any value is NI_ChannelName is the name of the
Name of
NI_ChannelName String acceptable for virtual channel producing the
Channel
NI_ChannelName. waveform.
NI_LineNames is the name of the
Name of Any value is digital line in the waveform. For more
Digital NI_LineNames String acceptable for than one digital line, the function
Line(s) NI_LineNames. returns the line names in reverse
order.
Volts, PSI, and so
forth are
Unit for NI_UnitDescription is the units of
NI_UnitDescription String acceptable values
Data measure for the waveform.
for
NI_UnitDescription.
The following table lists the waveform attributes set by Express VIs.
Data
Name Attribute Acceptable Values Description
Type
NI_ExpStartTimeStamp is
the time stamp of the first
sample in the first
waveform. In Express VIs,
this is set once per start
of the VI and does not
change, even if waveform
Any value is acceptable data is generated in a
Start Time
NI_ExpStartTimeStamp for loop. In Express VIs,
Timestamp stamp
NI_ExpStartTimeStamp. NI_ExpStartTimeStamp is
set according to the PC
clock unless the
waveform originates in
NI-DAQ. When the
waveform originates in
NI-DAQ, NI-DAQ sets
NI_ExpStartTimeStamp.
800 ni.com
Functions
NI_ExpTimeStamp is the
time stamp of the first
sample in the waveform.
In Express VIs,
NI_ExpTimeStamp is set
Time Any value is acceptable according to the PC clock
Timestamp NI_ExpTimeStamp
stamp for NI_ExpTimeStamp. unless the waveform
originates in NI-DAQ.
When the waveform
originates in NI-DAQ, NI-
DAQ sets
NI_ExpTimeStamp.
If the value of
Use a single character
NI_ExpXDimension is t, t0
for the
and dt are unchanged. If
NI_ExpXDimension
the value of
value. Currently, only t
X NI_ExpXDimension is f,
NI_ExpXDimension String for time and f for
Dimension Express VIs interpret t0
frequency are
and dt as f0 and df. For all
supported. The value
other values, or unknown
for NI_ExpXDimension
dimension, t0 and dt are
is case sensitive.
interpreted as X0 and dX.
If and only if
TRUE or FALSE are NI_ExpXDimension is t,
Relative
NI_ExpIsRelativeTime Boolean acceptable values for Express VIs set t0 as a
Time?
NI_ExpIsRelativeTime. relative/absolute time
stamp value.
Note Express VIs also use the attributes set by NI-DAQ. If the waveform does
not originate in NI-DAQ, Express VIs add NI_ChannelName.
Examples
• labview\examples\Waveform\Waveform - Create.vi
Retrieves the names and values of all attributes or the value of a single attribute,
depending on whether you wire the name parameter.
Attributes can be channel names. The connector pane displays the default data types
for this polymorphic function.
Inputs/Outputs
• waveform —
waveform is the waveform for which you want to retrieve an attribute(s) and value(s).
• name —
name is the name of the attribute whose value you want to retrieve.
Do not wire this parameter if you want to retrieve all the attributes associated with the specified
waveform. If you wire name, the names output changes to a Boolean output found, the array
output values changes to an output called value of the same type as default value, and the
function searches for only the specified attribute.
• default value (empty Variant) —
default value is a value and data type that you specify. If the function does not find the attribute
specified in name, it returns the default value.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• duplicate waveform —
• names —
802 ni.com
Functions
names returns a 1D array containing the names of all attributes associated with the waveform.
If you wire the name parameter, this output changes to a Boolean value found. found returns
TRUE if the function finds the attribute that you specify in name.
• values —
values returns a 1D array containing the values associated with each attribute of the specified
waveform in variant format.
You must unflatten each attribute value to an appropriate data type. If you wire name, this
output changes to a single variant value. If the function does not find the attribute that you
specify in name, it returns the value passed to default value.
• error out —
error out contains error information. This output provides standard error out functionality.
This function has two modes of behavior depending on whether you wire the name
parameter. By default, the function returns the names of all attributes and their
corresponding values in 1D arrays. If you wire name, the names output changes to a
Boolean output found, the values output changes to a variant output value, and the
function searches for only the specified attribute. If the function does not find the
specified attribute(s), or if it cannot convert the attribute(s) to the default value, found
is FALSE, and value displays the contents of default value.
Data
Name Attribute Acceptable Values Description
Type
Hardware NI_DeviceNumber is the device
Any value is acceptable
Device NI_DeviceNumber String number of the hardware device
for NI_DeviceNumber.
Number producing the waveform.
NI_ChannelName is the name of
Name of Any value is acceptable
NI_ChannelName String the virtual channel producing
Channel for NI_ChannelName.
the waveform.
Name of
Any value is acceptable NI_LineNames is the name of
Digital NI_LineNames String
for NI_LineNames. the digital line in the waveform.
Line(s)
Data
Name Attribute Acceptable Values Description
Type
Volts, PSI, and so forth
Unit for NI_UnitDescription is the units
NI_UnitDescription String are acceptable values for
Data of measure for the waveform.
NI_UnitDescription.
The following table lists the waveform attributes set by Express VIs.
Data
Name Attribute Acceptable Values Description
Type
NI_ExpStartTimeStamp is
the time stamp of the first
sample in the first
waveform. In Express VIs,
this is set once per start
of the VI and does not
change, even if waveform
Any value is acceptable data is generated in a
Start Time
NI_ExpStartTimeStamp for loop. In Express VIs,
Timestamp stamp
NI_ExpStartTimeStamp. NI_ExpStartTimeStamp is
set according to the PC
clock unless the
waveform originates in
NI-DAQ. When the
waveform originates in
NI-DAQ, NI-DAQ sets
NI_ExpStartTimeStamp.
NI_ExpTimeStamp is the
time stamp of the first
sample in the waveform.
In Express VIs,
NI_ExpTimeStamp is set
Time Any value is acceptable according to the PC clock
Timestamp NI_ExpTimeStamp
stamp for NI_ExpTimeStamp. unless the waveform
originates in NI-DAQ.
When the waveform
originates in NI-DAQ, NI-
DAQ sets
NI_ExpTimeStamp.
804 ni.com
Functions
Data
Name Attribute Acceptable Values Description
Type
If the value of
NI_ExpXDimension is t, t0
Use a single character
and dt are unchanged. If
for the
the value of
NI_ExpXDimension
NI_ExpXDimension is f,
value. Currently, only t
X Express VIs interpret t0
NI_ExpXDimension String for time and f for
Dimension and dt as f0 and df. For all
frequency are
other values, Express VIs
supported. The value
generically interpret t0
for NI_ExpXDimension
and dt as X0 and dX, but
is case sensitive.
there is no effect
otherwise.
If and only if
TRUE or FALSE are NI_ExpXDimension is t,
Relative
NI_ExpIsRelativeTime Boolean acceptable values for Express VIs set t0 as a
Time?
NI_ExpIsRelativeTime. relative/absolute time
stamp value.
Note Express VIs also use the attributes set by NI-DAQ. If the waveform does
not originate in NI-DAQ, Express VIs add NI_ChannelName.
Analog to Digital
Converts analog waveform to a digital waveform or digital data. You must manually
select the polymorphic instance you want to use.
To create digital data from an analog waveform or to graph an analog signal in a digital
waveform graph, you must convert the raw analog data into digital data or the digital
waveform data type. Use the Analog to Digital VI to convert the data to digital
waveform. Use the Get Waveform Components function to extract the digital data from
The block diagram below simulates the acquisition of a sine wave with an amplitude of
5, which means the sine wave can contain values that range from –5 to 5. The Analog to
Digital VI in this block diagram represents each value with 8 bits. The 8 bits can
represent a peak-to-peak value of 10. The probe displays a portion of the resulting
values in binary format.
Converts analog waveform to a digital waveform or digital data. You must manually
select the polymorphic instance you want to use.
806 ni.com
Functions
Inputs/Outputs
• compress digital (T) —
compress digital specifies whether to compress the digital waveform or digital data. The default
is TRUE.
• analog waveform —
analog waveform is the waveform you want to convert to digital waveform or digital data.
resolution specifies the number of bits represented in the digital waveform or digital data.
full-scale range (pk-pk) specifies the total peak-to-peak range, or the difference between the
minimum and maximum, for the digital waveform or digital data. For example, if the maximum
range of a waveform is 1 and the minimum is –1, the full-scale range for the waveform is 2. The
default is 2.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
If an error occurred before this node runs, this node outputs an empty waveform.
data format specifies which binary representation you want to use for the digital waveform or
digital data.
• digital waveform —
digital waveform returns the waveform that results from the conversion of analog waveform.
• resolution (out) —
resolution (out) returns the number of bits represented in the digital waveform or digital data.
full-scale range (out) returns the total peak-to-peak range for the digital waveform or digital
data.
• error out —
error out contains error information. This output provides standard error out functionality.
To create digital data from an analog waveform or to graph an analog signal in a digital
waveform graph, you must convert the raw analog data into digital data or the digital
waveform data type. Use the Analog to Digital VI to convert the data to digital
waveform. Use the Get Waveform Components function to extract the digital data from
the digital waveform.
The block diagram below simulates the acquisition of a sine wave with an amplitude of
5, which means the sine wave can contain values that range from –5 to 5. The Analog to
Digital VI in this block diagram represents each value with 8 bits. The 8 bits can
represent a peak-to-peak value of 10. The probe displays a portion of the resulting
values in binary format.
808 ni.com
Functions
Converts analog waveform to a digital waveform or digital data. You must manually
select the polymorphic instance you want to use.
Inputs/Outputs
• compress digital (T) —
compress digital specifies whether to compress the digital waveform or digital data. The default
is TRUE.
• analog waveform —
analog waveform is the waveform you want to convert to digital waveform or digital data.
resolution specifies the number of bits represented in the digital waveform or digital data.
full-scale range (pk-pk) specifies the total peak-to-peak range, or the difference between the
minimum and maximum, for the digital waveform or digital data. For example, if the maximum
range of a waveform is 1 and the minimum is –1, the full-scale range for the waveform is 2. The
default is 2.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
If an error occurred before this node runs, this node outputs an empty waveform.
data format specifies which binary representation you want to use for the digital waveform or
digital data.
• digital data —
digital data returns the data resulting from the conversion of analog waveform.
• resolution (out) —
resolution (out) returns the number of bits represented in the digital waveform or digital data.
full-scale range (out) returns the total peak-to-peak range for the digital waveform or digital
data.
• error out —
810 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
To create digital data from an analog waveform or to graph an analog signal in a digital
waveform graph, you must convert the raw analog data into digital data or the digital
waveform data type. Use the Analog to Digital VI to convert the data to digital
waveform. Use the Get Waveform Components function to extract the digital data from
the digital waveform.
The block diagram below simulates the acquisition of a sine wave with an amplitude of
5, which means the sine wave can contain values that range from –5 to 5. The Analog to
Digital VI in this block diagram represents each value with 8 bits. The 8 bits can
represent a peak-to-peak value of 10. The probe displays a portion of the resulting
values in binary format.
Digital to Analog
Converts a digital waveform or digital data to analog waveform. You must manually
select the polymorphic instance you want to use.
Converts a digital waveform or digital data to analog waveform. You must manually
select the polymorphic instance you want to use.
Inputs/Outputs
• digital waveform —
full-scale range (pk-pk) specifies the total peak-to-peak range, or the difference between the
minimum and maximum, for the digital waveform or digital data. For example, if the maximum
range of a waveform is 1 and the minimum is –1, the full-scale range for the waveform is 2. The
default is 2.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
If an error occurred before this node runs, this node outputs an empty waveform.
data format specifies which binary representation you want to use for the digital waveform or
digital data.
812 ni.com
Functions
• analog waveform —
analog waveform returns the waveform resulting from the conversion of digital waveform or
digital table.
• resolution (out) —
resolution (out) returns the number of bits represented in the digital waveform or digital data.
full-scale range (out) returns the total peak-to-peak range for the digital waveform or digital
data.
• error out —
error out contains error information. This output provides standard error out functionality.
Converts a digital waveform or digital data to analog waveform. You must manually
select the polymorphic instance you want to use.
Inputs/Outputs
• digital table —
digital table is the digital data you want to convert to analog waveform.
full-scale range (pk-pk) specifies the total peak-to-peak range, or the difference between the
minimum and maximum, for the digital waveform or digital data. For example, if the maximum
range of a waveform is 1 and the minimum is –1, the full-scale range for the waveform is 2. The
default is 2.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
If an error occurred before this node runs, this node outputs an empty waveform.
data format specifies which binary representation you want to use for the digital waveform or
digital data.
• analog waveform —
analog waveform returns the waveform resulting from the conversion of digital waveform or
digital table.
• resolution (out) —
resolution (out) returns the number of bits represented in the digital waveform or digital data.
full-scale range (out) returns the total peak-to-peak range for the digital waveform or digital
data.
• error out —
error out contains error information. This output provides standard error out functionality.
814 ni.com
Functions
Selects one waveform out of an array of analog or digital waveforms by array index or
channel name. The data types you wire to the waveform array and index inputs and
the data type of the Y component of the analog waveform determine the polymorphic
instance to use.
Examples
Selects one waveform out of an array of analog or digital waveforms by array index or
channel name. The data types you wire to the waveform array and index inputs and
the data type of the Y component of the analog waveform determine the polymorphic
instance to use.
Inputs/Outputs
• waveform array —
waveform array is an array of analog waveforms from which to extract a single waveform.
• index —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Selects one waveform out of an array of analog or digital waveforms by array index or
channel name. The data types you wire to the waveform array and index inputs and
the data type of the Y component of the analog waveform determine the polymorphic
instance to use.
816 ni.com
Functions
Inputs/Outputs
• waveform array —
waveform array is an array of analog waveforms from which to extract a single waveform.
• index —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Selects one waveform out of an array of analog or digital waveforms by array index or
channel name. The data types you wire to the waveform array and index inputs and
the data type of the Y component of the analog waveform determine the polymorphic
instance to use.
Inputs/Outputs
• waveform array —
waveform array is an array of analog waveforms from which to extract a single waveform.
• index —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Selects one waveform out of an array of analog or digital waveforms by array index or
channel name. The data types you wire to the waveform array and index inputs and
the data type of the Y component of the analog waveform determine the polymorphic
instance to use.
818 ni.com
Functions
Inputs/Outputs
• waveform array —
waveform array is an array of analog waveforms from which to extract a single waveform.
• index —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Selects one waveform out of an array of analog or digital waveforms by array index or
channel name. The data types you wire to the waveform array and index inputs and
the data type of the Y component of the analog waveform determine the polymorphic
instance to use.
Inputs/Outputs
• waveform array —
waveform array is an array of analog waveforms from which to extract a single waveform.
• index —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Selects one waveform out of an array of analog or digital waveforms by array index or
channel name. The data types you wire to the waveform array and index inputs and
the data type of the Y component of the analog waveform determine the polymorphic
instance to use.
820 ni.com
Functions
Inputs/Outputs
• waveform array —
waveform array is an array of analog waveforms from which to extract a single waveform.
• channel name —
channel name is the channel name of the waveform to extract from waveform array.
To use this input, the waveform must have a channel name attribute. If you are using a virtual
channel, you do not have to set the channel name attribute manually.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Selects one waveform out of an array of analog or digital waveforms by array index or
channel name. The data types you wire to the waveform array and index inputs and
the data type of the Y component of the analog waveform determine the polymorphic
instance to use.
Inputs/Outputs
• waveform array —
waveform array is an array of analog waveforms from which to extract a single waveform.
• channel name —
channel name is the channel name of the waveform to extract from waveform array.
To use this input, the waveform must have a channel name attribute. If you are using a virtual
channel, you do not have to set the channel name attribute manually.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Selects one waveform out of an array of analog or digital waveforms by array index or
channel name. The data types you wire to the waveform array and index inputs and
the data type of the Y component of the analog waveform determine the polymorphic
822 ni.com
Functions
instance to use.
Inputs/Outputs
• waveform array —
waveform array is an array of analog waveforms from which to extract a single waveform.
• channel name —
channel name is the channel name of the waveform to extract from waveform array.
To use this input, the waveform must have a channel name attribute. If you are using a virtual
channel, you do not have to set the channel name attribute manually.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Selects one waveform out of an array of analog or digital waveforms by array index or
channel name. The data types you wire to the waveform array and index inputs and
the data type of the Y component of the analog waveform determine the polymorphic
instance to use.
Inputs/Outputs
• waveform array —
waveform array is an array of analog waveforms from which to extract a single waveform.
• channel name —
channel name is the channel name of the waveform to extract from waveform array.
To use this input, the waveform must have a channel name attribute. If you are using a virtual
channel, you do not have to set the channel name attribute manually.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
824 ni.com
Functions
Selects one waveform out of an array of analog or digital waveforms by array index or
channel name. The data types you wire to the waveform array and index inputs and
the data type of the Y component of the analog waveform determine the polymorphic
instance to use.
Inputs/Outputs
• waveform array —
waveform array is an array of analog waveforms from which to extract a single waveform.
• channel name —
channel name is the channel name of the waveform to extract from waveform array.
To use this input, the waveform must have a channel name attribute. If you are using a virtual
channel, you do not have to set the channel name attribute manually.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Selects one waveform out of an array of analog or digital waveforms by array index or
channel name. The data types you wire to the waveform array and index inputs and
the data type of the Y component of the analog waveform determine the polymorphic
instance to use.
Inputs/Outputs
• waveform array —
waveform array is an array of digital waveforms from which to extract a single digital waveform.
• index —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform —
waveform is the digital waveform selected from the array of digital waveforms.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
826 ni.com
Functions
Selects one waveform out of an array of analog or digital waveforms by array index or
channel name. The data types you wire to the waveform array and index inputs and
the data type of the Y component of the analog waveform determine the polymorphic
instance to use.
Inputs/Outputs
• waveform array —
waveform array is an array of digital waveforms from which to extract a single digital waveform.
• channel name —
channel name is the channel name of the waveform to extract from waveform array.
To use this input, the waveform must have a channel name attribute. If you are using a virtual
channel, you do not have to set the channel name attribute manually.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform —
waveform is the digital waveform selected from the array of digital waveforms.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Copy Waveform dt
Replaces all dt values with the dt value of the waveform at index position in
waveforms in. The data type you wire to the waveforms in input and the data type of
the Y component of the analog waveform determine the polymorphic instance to use.
Replaces all dt values with the dt value of the waveform at index position in
waveforms in. The data type you wire to the waveforms in input and the data type of
the Y component of the analog waveform determine the polymorphic instance to use.
Inputs/Outputs
• waveforms in —
waveforms in contains the analog waveforms for which the time increment values are replaced
by the time increment of the analog waveform indicated by index. The default is empty.
• index —
828 ni.com
Functions
index is the specifier that the waveform in the waveforms in array uses for the dt value. The
default is 0.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains analog waveforms for which the dt values are all identical.
• error out —
error out contains error information. This output provides standard error out functionality.
Replaces all dt values with the dt value of the waveform at index position in
waveforms in. The data type you wire to the waveforms in input and the data type of
the Y component of the analog waveform determine the polymorphic instance to use.
Inputs/Outputs
• waveforms in —
waveforms in contains the analog waveforms for which the time increment values are replaced
by the time increment of the analog waveform indicated by index. The default is empty.
• index —
index is the specifier that the waveform in the waveforms in array uses for the dt value. The
default is 0.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains analog waveforms for which the dt values are all identical.
• error out —
error out contains error information. This output provides standard error out functionality.
Replaces all dt values with the dt value of the waveform at index position in
waveforms in. The data type you wire to the waveforms in input and the data type of
the Y component of the analog waveform determine the polymorphic instance to use.
Inputs/Outputs
• waveforms in —
waveforms in contains the analog waveforms for which the time increment values are replaced
by the time increment of the analog waveform indicated by index. The default is empty.
• index —
index is the specifier that the waveform in the waveforms in array uses for the dt value. The
default is 0.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
830 ni.com
Functions
waveforms out contains analog waveforms for which the dt values are all identical.
• error out —
error out contains error information. This output provides standard error out functionality.
Replaces all dt values with the dt value of the waveform at index position in
waveforms in. The data type you wire to the waveforms in input and the data type of
the Y component of the analog waveform determine the polymorphic instance to use.
Inputs/Outputs
• waveforms in —
waveforms in contains the analog waveforms for which the time increment values are replaced
by the time increment of the analog waveform indicated by index. The default is empty.
• index —
index is the specifier that the waveform in the waveforms in array uses for the dt value. The
default is 0.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains analog waveforms for which the dt values are all identical.
• error out —
error out contains error information. This output provides standard error out functionality.
Replaces all dt values with the dt value of the waveform at index position in
waveforms in. The data type you wire to the waveforms in input and the data type of
the Y component of the analog waveform determine the polymorphic instance to use.
Inputs/Outputs
• waveforms in —
waveforms in contains the analog waveforms for which the time increment values are replaced
by the time increment of the analog waveform indicated by index. The default is empty.
• index —
index is the specifier that the waveform in the waveforms in array uses for the dt value. The
default is 0.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains analog waveforms for which the dt values are all identical.
• error out —
error out contains error information. This output provides standard error out functionality.
Replaces all dt values with the dt value of the waveform at index position in
waveforms in. The data type you wire to the waveforms in input and the data type of
the Y component of the analog waveform determine the polymorphic instance to use.
832 ni.com
Functions
Inputs/Outputs
• waveforms in —
waveforms in contains the analog waveforms for which the time increment values are replaced
by the time increment of the analog waveform indicated by index. The default is empty.
• index —
index is the specifier that the waveform in the waveforms in array uses for the dt value. The
default is 0.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains analog waveforms for which the dt values are all identical.
• error out —
error out contains error information. This output provides standard error out functionality.
Replaces all dt values with the dt value of the waveform at index position in
waveforms in. The data type you wire to the waveforms in input and the data type of
the Y component of the analog waveform determine the polymorphic instance to use.
Inputs/Outputs
• waveforms in —
waveforms in contains the analog waveforms for which the time increment values are replaced
by the time increment of the analog waveform indicated by index. The default is empty.
• index —
index is the specifier that the waveform in the waveforms in array uses for the dt value. The
default is 0.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains analog waveforms for which the dt values are all identical.
• error out —
error out contains error information. This output provides standard error out functionality.
Replaces all dt values with the dt value of the waveform at index position in
waveforms in. The data type you wire to the waveforms in input and the data type of
the Y component of the analog waveform determine the polymorphic instance to use.
Inputs/Outputs
• waveforms in —
waveforms in contains the digital waveforms for which the time increment values are replaced
by the time increment of the digital waveform indicated by index. The default is empty.
834 ni.com
Functions
• index —
index is the specifier that the waveform in the waveforms in array uses for the dt value. The
default is 0.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains digital waveforms for which the dt values are all identical.
• error out —
error out contains error information. This output provides standard error out functionality.
Replaces all the time stamp values (t0) in waveforms in with the value of the index
element in the array. The data type you wire to the waveforms in input and the data
type of the Y component of the analog waveform determine the polymorphic instance
to use.
Examples
Replaces all the time stamp values (t0) in waveforms in with the value of the index
element in the array. The data type you wire to the waveforms in input and the data
type of the Y component of the analog waveform determine the polymorphic instance
to use.
Inputs/Outputs
• waveforms in —
waveforms in contains all the analog waveforms for which time stamps (t0) are to be changed.
• index —
index selects which waveform to extract the time stamp from. The time stamps of all elements of
waveforms in are changed to this time stamp.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains the waveforms in array with all time stamps on the elements changed
to the time stamp of the element indicated by index.
• error out —
error out contains error information. This output provides standard error out functionality.
836 ni.com
Functions
Examples
Replaces all the time stamp values (t0) in waveforms in with the value of the index
element in the array. The data type you wire to the waveforms in input and the data
type of the Y component of the analog waveform determine the polymorphic instance
to use.
Inputs/Outputs
• waveforms in —
waveforms in contains all the analog waveforms for which time stamps (t0) are to be changed.
• index —
index selects which waveform to extract the time stamp from. The time stamps of all elements of
waveforms in are changed to this time stamp.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains the waveforms in array with all time stamps on the elements changed
to the time stamp of the element indicated by index.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Replaces all the time stamp values (t0) in waveforms in with the value of the index
element in the array. The data type you wire to the waveforms in input and the data
type of the Y component of the analog waveform determine the polymorphic instance
to use.
Inputs/Outputs
• waveforms in —
waveforms in contains all the analog waveforms for which time stamps (t0) are to be changed.
• index —
index selects which waveform to extract the time stamp from. The time stamps of all elements of
waveforms in are changed to this time stamp.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains the waveforms in array with all time stamps on the elements changed
to the time stamp of the element indicated by index.
• error out —
error out contains error information. This output provides standard error out functionality.
838 ni.com
Functions
Examples
Replaces all the time stamp values (t0) in waveforms in with the value of the index
element in the array. The data type you wire to the waveforms in input and the data
type of the Y component of the analog waveform determine the polymorphic instance
to use.
Inputs/Outputs
• waveforms in —
waveforms in contains all the analog waveforms for which time stamps (t0) are to be changed.
• index —
index selects which waveform to extract the time stamp from. The time stamps of all elements of
waveforms in are changed to this time stamp.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains the waveforms in array with all time stamps on the elements changed
to the time stamp of the element indicated by index.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Replaces all the time stamp values (t0) in waveforms in with the value of the index
element in the array. The data type you wire to the waveforms in input and the data
type of the Y component of the analog waveform determine the polymorphic instance
to use.
Inputs/Outputs
• waveforms in —
waveforms in contains all the analog waveforms for which time stamps (t0) are to be changed.
• index —
index selects which waveform to extract the time stamp from. The time stamps of all elements of
waveforms in are changed to this time stamp.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains the waveforms in array with all time stamps on the elements changed
to the time stamp of the element indicated by index.
• error out —
error out contains error information. This output provides standard error out functionality.
840 ni.com
Functions
Examples
Replaces all the time stamp values (t0) in waveforms in with the value of the index
element in the array. The data type you wire to the waveforms in input and the data
type of the Y component of the analog waveform determine the polymorphic instance
to use.
Inputs/Outputs
• waveforms in —
waveforms in contains all the analog waveforms for which time stamps (t0) are to be changed.
• index —
index selects which waveform to extract the time stamp from. The time stamps of all elements of
waveforms in are changed to this time stamp.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains the waveforms in array with all time stamps on the elements changed
to the time stamp of the element indicated by index.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Replaces all the time stamp values (t0) in waveforms in with the value of the index
element in the array. The data type you wire to the waveforms in input and the data
type of the Y component of the analog waveform determine the polymorphic instance
to use.
Inputs/Outputs
• waveforms in —
waveforms in contains all the analog waveforms for which time stamps (t0) are to be changed.
• index —
index selects which waveform to extract the time stamp from. The time stamps of all elements of
waveforms in are changed to this time stamp.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains the waveforms in array with all time stamps on the elements changed
to the time stamp of the element indicated by index.
• error out —
error out contains error information. This output provides standard error out functionality.
842 ni.com
Functions
Examples
Replaces all the time stamp values (t0) in waveforms in with the value of the index
element in the array. The data type you wire to the waveforms in input and the data
type of the Y component of the analog waveform determine the polymorphic instance
to use.
Inputs/Outputs
• waveforms in —
waveforms in contains all the digital waveforms for which time stamps (t0) are to be changed.
• index —
index selects which waveform to extract the time stamp from. The time stamps of all elements of
waveforms in are changed to this time stamp.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveforms out —
waveforms out contains the waveforms in array with all time stamps on the elements changed
to the time stamp of the element indicated by index.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
For example, consider a waveform of 128 scans with a dt of 1.00. If you wire 40.00 to
duration and 25.00 to start samples/time, the actual duration and actual start
samples/time are the same, 40.00 and 25.00, respectively. However, if the waveform
has a dt of 2.00, the actual duration and the actual start samples/time are 40.00 and
24.00, respectively.
Examples
844 ni.com
Functions
Inputs/Outputs
• open interval? (T) —
open interval? defines whether the waveform subset extracted is an open or closed interval. The
default is TRUE, which selects an open interval.
For example, if t0 = 0, dt = 1, Y = {0, 1, 2}, start/duration format is Relative Time, start samples/
time is 0, and duration is 2, an open interval returns {0, 1}. A closed interval returns {0, 1, 2}.
• start/duration format —
start/duration format specifies if you want to retrieve the data value of the specified element or
at a specified time.
0 Samples (default)—Returns the data value of the specified element in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1 waveform. In this mode, the dt of the waveform affects actual start samples/time and actual
duration.
• waveform in —
• start samples/time —
start samples/time is the data element or time value where you want to start acquiring a
waveform subset.
• duration —
duration is the amount of time to retrieve data or the number of elements of data you want to
retrieve, depending on the start/duration format you select.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
actual start samples/time is the actual data element when the subset was acquired.
• actual duration —
actual duration is the actual number of elements retrieved or the actual amount of time the
data values were acquired.
• error out —
error out contains error information. This output provides standard error out functionality.
For example, consider a waveform of 128 scans with a dt of 1.00. If you wire 40.00 to
duration and 25.00 to start samples/time, the actual duration and actual start
samples/time are the same, 40.00 and 25.00, respectively. However, if the waveform
has a dt of 2.00, the actual duration and the actual start samples/time are 40.00 and
24.00, respectively.
Examples
846 ni.com
Functions
Inputs/Outputs
• open interval? (T) —
open interval? defines whether the waveform subset extracted is an open or closed interval. The
default is TRUE, which selects an open interval.
For example, if t0 = 0, dt = 1, Y = {0, 1, 2}, start/duration format is Relative Time, start samples/
time is 0, and duration is 2, an open interval returns {0, 1}. A closed interval returns {0, 1, 2}.
• start/duration format —
start/duration format specifies if you want to retrieve the data value of the specified element or
at a specified time.
0 Samples (default)—Returns the data value of the specified element in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1 waveform. In this mode, the dt of the waveform affects actual start samples/time and actual
duration.
• waveform in —
• start samples/time —
start samples/time is the data element or time value where you want to start acquiring a
waveform subset.
• duration —
duration is the amount of time to retrieve data or the number of elements of data you want to
retrieve, depending on the start/duration format you select.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
actual start samples/time is the actual data element when the subset was acquired.
• actual duration —
actual duration is the actual number of elements retrieved or the actual amount of time the
data values were acquired.
• error out —
error out contains error information. This output provides standard error out functionality.
For example, consider a waveform of 128 scans with a dt of 1.00. If you wire 40.00 to
duration and 25.00 to start samples/time, the actual duration and actual start
samples/time are the same, 40.00 and 25.00, respectively. However, if the waveform
has a dt of 2.00, the actual duration and the actual start samples/time are 40.00 and
24.00, respectively.
Examples
848 ni.com
Functions
Inputs/Outputs
• open interval? (T) —
open interval? defines whether the waveform subset extracted is an open or closed interval. The
default is TRUE, which selects an open interval.
For example, if t0 = 0, dt = 1, Y = {0, 1, 2}, start/duration format is Relative Time, start samples/
time is 0, and duration is 2, an open interval returns {0, 1}. A closed interval returns {0, 1, 2}.
• start/duration format —
start/duration format specifies if you want to retrieve the data value of the specified element or
at a specified time.
0 Samples (default)—Returns the data value of the specified element in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1 waveform. In this mode, the dt of the waveform affects actual start samples/time and actual
duration.
• waveform in —
• start samples/time —
start samples/time is the data element or time value where you want to start acquiring a
waveform subset.
• duration —
duration is the amount of time to retrieve data or the number of elements of data you want to
retrieve, depending on the start/duration format you select.
error in describes error conditions that occur before this node runs. This input provides
• waveform out —
actual start samples/time is the actual data element when the subset was acquired.
• actual duration —
actual duration is the actual number of elements retrieved or the actual amount of time the
data values were acquired.
• error out —
error out contains error information. This output provides standard error out functionality.
For example, consider a waveform of 128 scans with a dt of 1.00. If you wire 40.00 to
duration and 25.00 to start samples/time, the actual duration and actual start
samples/time are the same, 40.00 and 25.00, respectively. However, if the waveform
has a dt of 2.00, the actual duration and the actual start samples/time are 40.00 and
24.00, respectively.
Examples
850 ni.com
Functions
Inputs/Outputs
• open interval? (T) —
open interval? defines whether the waveform subset extracted is an open or closed interval. The
default is TRUE, which selects an open interval.
For example, if t0 = 0, dt = 1, Y = {0, 1, 2}, start/duration format is Relative Time, start samples/
time is 0, and duration is 2, an open interval returns {0, 1}. A closed interval returns {0, 1, 2}.
• start/duration format —
start/duration format specifies if you want to retrieve the data value of the specified element or
at a specified time.
0 Samples (default)—Returns the data value of the specified element in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1 waveform. In this mode, the dt of the waveform affects actual start samples/time and actual
duration.
• waveform in —
• start samples/time —
start samples/time is the data element or time value where you want to start acquiring a
waveform subset.
• duration —
duration is the amount of time to retrieve data or the number of elements of data you want to
retrieve, depending on the start/duration format you select.
error in describes error conditions that occur before this node runs. This input provides
• waveform out —
actual start samples/time is the actual data element when the subset was acquired.
• actual duration —
actual duration is the actual number of elements retrieved or the actual amount of time the
data values were acquired.
• error out —
error out contains error information. This output provides standard error out functionality.
For example, consider a waveform of 128 scans with a dt of 1.00. If you wire 40.00 to
duration and 25.00 to start samples/time, the actual duration and actual start
samples/time are the same, 40.00 and 25.00, respectively. However, if the waveform
has a dt of 2.00, the actual duration and the actual start samples/time are 40.00 and
24.00, respectively.
Examples
852 ni.com
Functions
Inputs/Outputs
• open interval? (T) —
open interval? defines whether the waveform subset extracted is an open or closed interval. The
default is TRUE, which selects an open interval.
For example, if t0 = 0, dt = 1, Y = {0, 1, 2}, start/duration format is Relative Time, start samples/
time is 0, and duration is 2, an open interval returns {0, 1}. A closed interval returns {0, 1, 2}.
• start/duration format —
start/duration format specifies if you want to retrieve the data value of the specified element or
at a specified time.
0 Samples (default)—Returns the data value of the specified element in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1 waveform. In this mode, the dt of the waveform affects actual start samples/time and actual
duration.
• waveform in —
• start samples/time —
start samples/time is the data element or time value where you want to start acquiring a
waveform subset.
• duration —
duration is the amount of time to retrieve data or the number of elements of data you want to
retrieve, depending on the start/duration format you select.
error in describes error conditions that occur before this node runs. This input provides
• waveform out —
actual start samples/time is the actual data element when the subset was acquired.
• actual duration —
actual duration is the actual number of elements retrieved or the actual amount of time the
data values were acquired.
• error out —
error out contains error information. This output provides standard error out functionality.
For example, consider a waveform of 128 scans with a dt of 1.00. If you wire 40.00 to
duration and 25.00 to start samples/time, the actual duration and actual start
samples/time are the same, 40.00 and 25.00, respectively. However, if the waveform
has a dt of 2.00, the actual duration and the actual start samples/time are 40.00 and
24.00, respectively.
Examples
854 ni.com
Functions
Inputs/Outputs
• open interval? (T) —
open interval? defines whether the waveform subset extracted is an open or closed interval. The
default is TRUE, which selects an open interval.
For example, if t0 = 0, dt = 1, Y = {0, 1, 2}, start/duration format is Relative Time, start samples/
time is 0, and duration is 2, an open interval returns {0, 1}. A closed interval returns {0, 1, 2}.
• start/duration format —
start/duration format specifies if you want to retrieve the data value of the specified element or
at a specified time.
0 Samples (default)—Returns the data value of the specified element in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1 waveform. In this mode, the dt of the waveform affects actual start samples/time and actual
duration.
• waveform in —
• start samples/time —
start samples/time is the data element or time value where you want to start acquiring a
waveform subset.
• duration —
duration is the amount of time to retrieve data or the number of elements of data you want to
retrieve, depending on the start/duration format you select.
error in describes error conditions that occur before this node runs. This input provides
• waveform out —
actual start samples/time is the actual data element when the subset was acquired.
• actual duration —
actual duration is the actual number of elements retrieved or the actual amount of time the
data values were acquired.
• error out —
error out contains error information. This output provides standard error out functionality.
For example, consider a waveform of 128 scans with a dt of 1.00. If you wire 40.00 to
duration and 25.00 to start samples/time, the actual duration and actual start
samples/time are the same, 40.00 and 25.00, respectively. However, if the waveform
has a dt of 2.00, the actual duration and the actual start samples/time are 40.00 and
24.00, respectively.
Examples
856 ni.com
Functions
Inputs/Outputs
• open interval? (T) —
open interval? defines whether the waveform subset extracted is an open or closed interval. The
default is TRUE, which selects an open interval.
For example, if t0 = 0, dt = 1, Y = {0, 1, 2}, start/duration format is Relative Time, start samples/
time is 0, and duration is 2, an open interval returns {0, 1}. A closed interval returns {0, 1, 2}.
• start/duration format —
start/duration format specifies if you want to retrieve the data value of the specified element or
at a specified time.
0 Samples (default)—Returns the data value of the specified element in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1 waveform. In this mode, the dt of the waveform affects actual start samples/time and actual
duration.
• waveform in —
• start samples/time —
start samples/time is the data element or time value where you want to start acquiring a
waveform subset.
• duration —
duration is the amount of time to retrieve data or the number of elements of data you want to
retrieve, depending on the start/duration format you select.
error in describes error conditions that occur before this node runs. This input provides
• waveform out —
actual start samples/time is the actual data element when the subset was acquired.
• actual duration —
actual duration is the actual number of elements retrieved or the actual amount of time the
data values were acquired.
• error out —
error out contains error information. This output provides standard error out functionality.
For example, consider a waveform of 128 scans with a dt of 1.00. If you wire 40.00 to
duration and 25.00 to start samples/time, the actual duration and actual start
samples/time are the same, 40.00 and 25.00, respectively. However, if the waveform
has a dt of 2.00, the actual duration and the actual start samples/time are 40.00 and
24.00, respectively.
Examples
858 ni.com
Functions
Inputs/Outputs
• open interval? (T) —
open interval? defines whether the waveform subset extracted is an open or closed interval. The
default is TRUE, which selects an open interval.
For example, if t0 = 0, dt = 1, Y = {0, 1, 2}, start/duration format is Relative Time, start samples/
time is 0, and duration is 2, an open interval returns {0, 1}. A closed interval returns {0, 1, 2}.
• start/duration format —
start/duration format specifies if you want to retrieve the data value of the specified element or
at a specified time.
0 Samples (default)—Returns the data value of the specified element in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1 waveform. In this mode, the dt of the waveform affects actual start samples/time and actual
duration.
• waveform in —
waveform in is the digital waveform for which you want to retrieve a subset.
• start samples/time —
start samples/time is the data element or time value where you want to start acquiring a
waveform subset.
• duration —
duration is the amount of time to retrieve data or the number of elements of data you want to
retrieve, depending on the start/duration format you select.
error in describes error conditions that occur before this node runs. This input provides
• waveform out —
actual start samples/time is the actual data element when the subset was acquired.
• actual duration —
actual duration is the actual number of elements retrieved or the actual amount of time the
data values were acquired.
• error out —
error out contains error information. This output provides standard error out functionality.
For example, consider a waveform of 128 scans with a dt of 1.00. If you wire 40.00 to
duration and 25.00 to start samples/time, the actual duration and actual start
samples/time are the same, 40.00 and 25.00, respectively. However, if the waveform
has a dt of 2.00, the actual duration and the actual start samples/time are 40.00 and
24.00, respectively.
Examples
860 ni.com
Functions
Inputs/Outputs
• digital data —
digital data is the set of digital data for which you want to retrieve a subset.
• start —
start is the data element or time value where you want to start acquiring a data subset.
• number of samples —
number of samples specifies the number of samples to include in digital data subset.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
For example, consider a waveform of 128 scans with a dt of 1.00. If you wire 40.00 to
duration and 25.00 to start samples/time, the actual duration and actual start
samples/time are the same, 40.00 and 25.00, respectively. However, if the waveform
has a dt of 2.00, the actual duration and the actual start samples/time are 40.00 and
24.00, respectively.
Examples
Returns the ending time value of waveform in. The formula used is xf = x0 + duration of
waveform in. Wire data to the waveform in input to determine the polymorphic
instance to use or manually select the instance.
Examples
Returns the ending time value of waveform in. The formula used is xf = x0 + duration of
waveform in. Wire data to the waveform in input to determine the polymorphic
instance to use or manually select the instance.
Inputs/Outputs
• open interval? (T) —
open interval? defines the interval over which the input waveform extends. The default is TRUE,
which selects an open interval.
For example, assume an input waveform contains 3 data elements at t = {0, dt, 2dt}. An open
862 ni.com
Functions
interval defines the waveform as extending over the time interval 0 ≤ t < 2dt, and a closed
interval defines the waveform as extending over the time interval 0 ≤ t < 3dt.
• waveform in —
waveform in is the analog waveform for which you want to retrieve the final time value.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• tf —
tf is the time value when the final data value was acquired.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Returns the ending time value of waveform in. The formula used is xf = x0 + duration of
waveform in. Wire data to the waveform in input to determine the polymorphic
instance to use or manually select the instance.
Inputs/Outputs
• open interval? (T) —
open interval? defines the interval over which the input waveform extends. The default is TRUE,
which selects an open interval.
For example, assume an input waveform contains 3 data elements at t = {0, dt, 2dt}. An open
interval defines the waveform as extending over the time interval 0 ≤ t < 2dt, and a closed
interval defines the waveform as extending over the time interval 0 ≤ t < 3dt.
• waveform in —
waveform in is the digital waveform for which you want to retrieve the final time value.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• tf —
tf is the time value when the final data value was acquired.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
864 ni.com
Functions
Waveform Duration
Examples
Inputs/Outputs
• open interval? (T) —
open interval? defines the interval over which the input waveform extends. The default is TRUE,
which selects an open interval.
For example, assume an input waveform contains 3 data elements at t = {0, dt, 2dt}. An open
interval defines the waveform as extending over the time interval 0 ≤ t < 2dt, and a closed
interval defines the waveform as extending over the time interval 0 ≤ t < 3dt.
• waveform in —
waveform in is the analog waveform for which you want the duration.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• duration —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
866 ni.com
Functions
Inputs/Outputs
• open interval? (T) —
open interval? defines the interval over which the input waveform extends. The default is TRUE,
which selects an open interval.
For example, assume an input waveform contains 3 data elements at t = {0, dt, 2dt}. An open
interval defines the waveform as extending over the time interval 0 ≤ t < 2dt, and a closed
interval defines the waveform as extending over the time interval 0 ≤ t < 3dt.
• waveform in —
waveform in is the digital waveform for which you want the duration.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• duration —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Scale Delta t
Multiplies the delta t component of the waveform by the specified scale factor.
Generally, this lengthens or shortens the sample rate of the waveform. The data type
you wire to the waveform in input and the data type of the Y component of the analog
waveform determine the polymorphic instance to use.
Multiplies the delta t component of the waveform by the specified scale factor.
Generally, this lengthens or shortens the sample rate of the waveform. The data type
you wire to the waveform in input and the data type of the Y component of the analog
waveform determine the polymorphic instance to use.
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to scale the delta t. The default is empty.
• scale factor —
868 ni.com
Functions
scale factor is the number by which you multiply the waveform's delta t. A value of greater than
zero but less than 1 shortens the sample rate. A value of greater than 1 increases the sample rate.
The default is 1000.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out returns the resulting waveform with the new delta t value.
• error out —
error out contains error information. This output provides standard error out functionality.
Multiplies the delta t component of the waveform by the specified scale factor.
Generally, this lengthens or shortens the sample rate of the waveform. The data type
you wire to the waveform in input and the data type of the Y component of the analog
waveform determine the polymorphic instance to use.
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to scale the delta t. The default is empty.
• scale factor —
scale factor is the number by which you multiply the waveform's delta t. A value of greater than
zero but less than 1 shortens the sample rate. A value of greater than 1 increases the sample rate.
The default is 1000.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out returns the resulting waveform with the new delta t value.
• error out —
error out contains error information. This output provides standard error out functionality.
Multiplies the delta t component of the waveform by the specified scale factor.
Generally, this lengthens or shortens the sample rate of the waveform. The data type
you wire to the waveform in input and the data type of the Y component of the analog
waveform determine the polymorphic instance to use.
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to scale the delta t. The default is empty.
• scale factor —
scale factor is the number by which you multiply the waveform's delta t. A value of greater than
zero but less than 1 shortens the sample rate. A value of greater than 1 increases the sample rate.
The default is 1000.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
870 ni.com
Functions
waveform out returns the resulting waveform with the new delta t value.
• error out —
error out contains error information. This output provides standard error out functionality.
Multiplies the delta t component of the waveform by the specified scale factor.
Generally, this lengthens or shortens the sample rate of the waveform. The data type
you wire to the waveform in input and the data type of the Y component of the analog
waveform determine the polymorphic instance to use.
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to scale the delta t. The default is empty.
• scale factor —
scale factor is the number by which you multiply the waveform's delta t. A value of greater than
zero but less than 1 shortens the sample rate. A value of greater than 1 increases the sample rate.
The default is 1000.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out returns the resulting waveform with the new delta t value.
• error out —
error out contains error information. This output provides standard error out functionality.
Multiplies the delta t component of the waveform by the specified scale factor.
Generally, this lengthens or shortens the sample rate of the waveform. The data type
you wire to the waveform in input and the data type of the Y component of the analog
waveform determine the polymorphic instance to use.
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to scale the delta t. The default is empty.
• scale factor —
scale factor is the number by which you multiply the waveform's delta t. A value of greater than
zero but less than 1 shortens the sample rate. A value of greater than 1 increases the sample rate.
The default is 1000.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out returns the resulting waveform with the new delta t value.
• error out —
error out contains error information. This output provides standard error out functionality.
872 ni.com
Functions
Multiplies the delta t component of the waveform by the specified scale factor.
Generally, this lengthens or shortens the sample rate of the waveform. The data type
you wire to the waveform in input and the data type of the Y component of the analog
waveform determine the polymorphic instance to use.
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to scale the delta t. The default is empty.
• scale factor —
scale factor is the number by which you multiply the waveform's delta t. A value of greater than
zero but less than 1 shortens the sample rate. A value of greater than 1 increases the sample rate.
The default is 1000.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out returns the resulting waveform with the new delta t value.
• error out —
error out contains error information. This output provides standard error out functionality.
Multiplies the delta t component of the waveform by the specified scale factor.
Generally, this lengthens or shortens the sample rate of the waveform. The data type
you wire to the waveform in input and the data type of the Y component of the analog
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to scale the delta t. The default is empty.
• scale factor —
scale factor is the number by which you multiply the waveform's delta t. A value of greater than
zero but less than 1 shortens the sample rate. A value of greater than 1 increases the sample rate.
The default is 1000.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out returns the resulting waveform with the new delta t value.
• error out —
error out contains error information. This output provides standard error out functionality.
Multiplies the delta t component of the waveform by the specified scale factor.
Generally, this lengthens or shortens the sample rate of the waveform. The data type
you wire to the waveform in input and the data type of the Y component of the analog
waveform determine the polymorphic instance to use.
874 ni.com
Functions
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to scale the delta t. The default is empty.
• scale factor —
scale factor is the number by which you multiply the waveform's delta t. A value of greater than
zero but less than 1 shortens the sample rate. A value of greater than 1 increases the sample rate.
The default is 1000.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out returns the resulting waveform with the new delta t value.
• error out —
error out contains error information. This output provides standard error out functionality.
Get XY Value
Returns the X and Y value of a waveform or digital data set. The data type you wire to
the waveform in input and the data type of the Y component of the analog waveform
determine the polymorphic instance to use.
Examples
Returns the X and Y value of a waveform or digital data set. The data type you wire to
the waveform in input and the data type of the Y component of the analog waveform
determine the polymorphic instance to use.
Inputs/Outputs
• waveform in —
waveform in is the analog waveform for which you want to retrieve a specified data value (X and
Y value). The default is empty.
• Y position format —
Y position format indicates if you want to retrieve the data value of the specified element or at a
specified time.
0 Samples—Returns the data value of the specified sample in the waveform data.
1 Relative Time—Returns the data value at a specified time relative to the first point in the
876 ni.com
Functions
waveform.
• Y position —
Y position is the element number you want from the set of waveform data or the value at a
specified time. The default is 0.
For example, if you want the value of the 200th scan, wire 199 to this input. If you want the value
at time 100, wire 100 to this input. You select whether this is a samples or relative time Y
position format. In Relative Time mode, this VI checks the Y position input to determine if it is
an integer multiple of dt. If Y position is not an integer multiple of dt, the VI uses the closest
exact multiple of dt.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• X value —
• waveform out —
• actual Y position —
actual Y position is the actual index or time value of the point returned.
• Y value —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Returns the X and Y value of a waveform or digital data set. The data type you wire to
the waveform in input and the data type of the Y component of the analog waveform
determine the polymorphic instance to use.
Inputs/Outputs
• waveform in —
waveform in is the analog waveform for which you want to retrieve a specified data value (X and
Y value). The default is empty.
• Y position format —
Y position format indicates if you want to retrieve the data value of the specified element or at a
specified time.
0 Samples—Returns the data value of the specified sample in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1
waveform.
• Y position —
Y position is the element number you want from the set of waveform data or the value at a
specified time. The default is 0.
For example, if you want the value of the 200th scan, wire 199 to this input. If you want the value
at time 100, wire 100 to this input. You select whether this is a samples or relative time Y
position format. In Relative Time mode, this VI checks the Y position input to determine if it is
an integer multiple of dt. If Y position is not an integer multiple of dt, the VI uses the closest
exact multiple of dt.
878 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• X value —
• waveform out —
• actual Y position —
actual Y position is the actual index or time value of the point returned.
• Y value —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Returns the X and Y value of a waveform or digital data set. The data type you wire to
the waveform in input and the data type of the Y component of the analog waveform
determine the polymorphic instance to use.
Inputs/Outputs
• waveform in —
waveform in is the analog waveform for which you want to retrieve a specified data value (X and
Y value). The default is empty.
• Y position format —
Y position format indicates if you want to retrieve the data value of the specified element or at a
specified time.
0 Samples—Returns the data value of the specified sample in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1
waveform.
• Y position —
Y position is the element number you want from the set of waveform data or the value at a
specified time. The default is 0.
For example, if you want the value of the 200th scan, wire 199 to this input. If you want the value
at time 100, wire 100 to this input. You select whether this is a samples or relative time Y
position format. In Relative Time mode, this VI checks the Y position input to determine if it is
an integer multiple of dt. If Y position is not an integer multiple of dt, the VI uses the closest
exact multiple of dt.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• X value —
• waveform out —
• actual Y position —
actual Y position is the actual index or time value of the point returned.
880 ni.com
Functions
• Y value —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Returns the X and Y value of a waveform or digital data set. The data type you wire to
the waveform in input and the data type of the Y component of the analog waveform
determine the polymorphic instance to use.
Inputs/Outputs
• waveform in —
waveform in is the analog waveform for which you want to retrieve a specified data value (X and
Y value). The default is empty.
• Y position format —
Y position format indicates if you want to retrieve the data value of the specified element or at a
specified time.
0 Samples—Returns the data value of the specified sample in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1
waveform.
• Y position —
Y position is the element number you want from the set of waveform data or the value at a
specified time. The default is 0.
For example, if you want the value of the 200th scan, wire 199 to this input. If you want the value
at time 100, wire 100 to this input. You select whether this is a samples or relative time Y
position format. In Relative Time mode, this VI checks the Y position input to determine if it is
an integer multiple of dt. If Y position is not an integer multiple of dt, the VI uses the closest
exact multiple of dt.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• X value —
• waveform out —
• actual Y position —
actual Y position is the actual index or time value of the point returned.
• Y value —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
882 ni.com
Functions
Returns the X and Y value of a waveform or digital data set. The data type you wire to
the waveform in input and the data type of the Y component of the analog waveform
determine the polymorphic instance to use.
Inputs/Outputs
• waveform in —
waveform in is the analog waveform for which you want to retrieve a specified data value (X and
Y value). The default is empty.
• Y position format —
Y position format indicates if you want to retrieve the data value of the specified element or at a
specified time.
0 Samples—Returns the data value of the specified sample in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1
waveform.
• Y position —
Y position is the element number you want from the set of waveform data or the value at a
specified time. The default is 0.
For example, if you want the value of the 200th scan, wire 199 to this input. If you want the value
at time 100, wire 100 to this input. You select whether this is a samples or relative time Y
position format. In Relative Time mode, this VI checks the Y position input to determine if it is
an integer multiple of dt. If Y position is not an integer multiple of dt, the VI uses the closest
exact multiple of dt.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• X value —
• waveform out —
• actual Y position —
actual Y position is the actual index or time value of the point returned.
• Y value —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Returns the X and Y value of a waveform or digital data set. The data type you wire to
the waveform in input and the data type of the Y component of the analog waveform
determine the polymorphic instance to use.
884 ni.com
Functions
Inputs/Outputs
• waveform in —
waveform in is the analog waveform for which you want to retrieve a specified data value (X and
Y value). The default is empty.
• Y position format —
Y position format indicates if you want to retrieve the data value of the specified element or at a
specified time.
0 Samples—Returns the data value of the specified sample in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1
waveform.
• Y position —
Y position is the element number you want from the set of waveform data or the value at a
specified time. The default is 0.
For example, if you want the value of the 200th scan, wire 199 to this input. If you want the value
at time 100, wire 100 to this input. You select whether this is a samples or relative time Y
position format. In Relative Time mode, this VI checks the Y position input to determine if it is
an integer multiple of dt. If Y position is not an integer multiple of dt, the VI uses the closest
exact multiple of dt.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• X value —
• waveform out —
• actual Y position —
actual Y position is the actual index or time value of the point returned.
• Y value —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Returns the X and Y value of a waveform or digital data set. The data type you wire to
the waveform in input and the data type of the Y component of the analog waveform
determine the polymorphic instance to use.
Inputs/Outputs
• waveform in —
waveform in is the analog waveform for which you want to retrieve a specified data value (X and
Y value). The default is empty.
• Y position format —
Y position format indicates if you want to retrieve the data value of the specified element or at a
specified time.
0 Samples—Returns the data value of the specified sample in the waveform data.
886 ni.com
Functions
Relative Time—Returns the data value at a specified time relative to the first point in the
1
waveform.
• Y position —
Y position is the element number you want from the set of waveform data or the value at a
specified time. The default is 0.
For example, if you want the value of the 200th scan, wire 199 to this input. If you want the value
at time 100, wire 100 to this input. You select whether this is a samples or relative time Y
position format. In Relative Time mode, this VI checks the Y position input to determine if it is
an integer multiple of dt. If Y position is not an integer multiple of dt, the VI uses the closest
exact multiple of dt.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• X value —
• waveform out —
• actual Y position —
actual Y position is the actual index or time value of the point returned.
• Y value —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Returns the X and Y value of a waveform or digital data set. The data type you wire to
the waveform in input and the data type of the Y component of the analog waveform
determine the polymorphic instance to use.
Inputs/Outputs
• waveform in —
waveform in is the digital waveform for which you want to retrieve a specified data value (X and
Y value). The default is empty.
• Y position format —
Y position format indicates if you want to retrieve the data value of the specified element or at a
specified time.
0 Samples—Returns the data value of the specified sample in the waveform data.
Relative Time—Returns the data value at a specified time relative to the first point in the
1
waveform.
• Y position —
Y position is the element number you want from the set of waveform data or the value at a
specified time. The default is 0.
For example, if you want the value of the 200th scan, wire 199 to this input. If you want the value
at time 100, wire 100 to this input. You select whether this is a samples or relative time Y
position format. In Relative Time mode, this VI checks the Y position input to determine if it is
an integer multiple of dt. If Y position is not an integer multiple of dt, the VI uses the closest
exact multiple of dt.
888 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• X value —
• waveform out —
• actual Y position —
actual Y position is the actual index or time value of the point returned.
• Y value —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Returns the X and Y value of a waveform or digital data set. The data type you wire to
the waveform in input and the data type of the Y component of the analog waveform
determine the polymorphic instance to use.
Inputs/Outputs
• digital data in —
digital data in is the set of digital data for which you want to retrieve the X and Y values.
• Start —
Start is the data element or time value where you want to start acquiring X and Y values.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Compressed Index —
Compressed Index returns the index of the data element or time value with respect to the
compressed waveform. For example, if the actual sample number is 8 but the sample is
compressed in a portion of the waveform that starts at 3, the compressed index is 3.
• Sample Number —
Sample Number returns the sample number of the data element or time value. If the value of
Start is inside a compressed portion of the waveform, Sample Number is the sample number
calculated as if the waveform was not compressed.
• digital value —
• error out —
error out contains error information. This output provides standard error out functionality.
890 ni.com
Functions
Examples
Creates an array of waveform time stamps. Each element in the array is the time stamp
for each data value in the waveform. Wire data to the waveform in input to determine
the polymorphic instance to use or manually select the instance.
Examples
Creates an array of waveform time stamps. Each element in the array is the time stamp
for each data value in the waveform. Wire data to the waveform in input to determine
the polymorphic instance to use or manually select the instance.
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve the time stamp information.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• X array —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Creates an array of waveform time stamps. Each element in the array is the time stamp
for each data value in the waveform. Wire data to the waveform in input to determine
the polymorphic instance to use or manually select the instance.
Inputs/Outputs
• waveform in —
waveform in is the digital waveform for which you want to retrieve the time stamp information.
892 ni.com
Functions
match transition array specifies whether the timestamp array output contains a timestamp for
every Y value in a digital waveform or for only the Y values identified as transitions in a
compressed digital waveform. The default is FALSE, which means this VI returns the timestamps
of all Y values in the digital waveform.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• X array —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Analog Waveform
Use the Analog Waveform VIs and functions to perform arithmetic and comparison
functions on waveforms.
Note Many Analog Waveform VIs are available only in the LabVIEW Full and
Professional Development Systems. If you have the LabVIEW Base
Development System, you do not have the full set of the Analog Waveform
VIs described in this help file.
The VIs and functions on this palette can return waveform error codes.
Waveform
Scales the waveform data using the equation waveform out = (scale * waveform in
Scale and
+ offset).
Offset
Normalize Determines the scale and offset necessary to transform the waveform data so that
Waveform its maximum is 1.00 and its minimum is -1.00.
Number of
Returns the number of data elements in the waveform. You must manually select
Waveform
the polymorphic instance you want to use.
Samples
Waveform Min Determines the maximum and minimum values and their associate time values for
Max a waveform.
894 ni.com
Functions
Search
Returns the time value in x for the value specified.
Waveform
Creates an array of data values and their corresponding time stamps. Wire the data
Waveform to
type of the Y component to the waveform in input to determine the polymorphic
XY Pairs
instance to use or manually select the instance.
Waveform
Use the waveform constant to hold acquired data for analysis and display.
Constant
Waveform Use the Waveform Generation VIs to generate different types of single and multi-
Generation tone signals, function generator signals, and noise signals.
Use the Waveform Measurements VIs to perform common time and frequency
Waveform
domain measurements, such as DC, RMS, Tone Frequency/Amplitude/Phase,
Measurements
Harmonic Distortion, SINAD, and Averaged FFT Measurements.
Returns the analog waveform you specify. You specify components by clicking on the
center of the output terminal and selecting the component you want.
Inputs/Outputs
• waveform —
• t0 —
• dt —
dt returns the time interval in seconds between data points in the waveform.
• Y—
• attributes —
You also can use the Get Waveform Attribute VI to retrieve the names and values of all attributes
or the value of a single attribute.
Build Waveform
Builds an analog waveform or modifies an existing waveform. If you do not wire the
waveform input, the function creates a new waveform based on the components you
wire. If you wire the waveform input, the function modifies the waveform based on the
components you wire.
Inputs/Outputs
• waveform —
waveform is the analog waveform you want to edit. If you do not wire an existing waveform, the
function creates a new waveform based on the components you wire.
• t0 —
896 ni.com
Functions
• dt —
dt specifies the time interval in seconds between data points in the waveform.
• Y—
• attributes —
You also can use the Set Waveform Attribute function to set the name and value of a single
attribute.
• output waveform —
waveform is the resulting waveform. If you did not wire an existing waveform, this is a new
waveform. If you wired an existing waveform, this is the edited waveform.
Adds or replaces a waveform attribute. You can use any type of data for the value of
the attribute.
Inputs/Outputs
• waveform —
waveform is the waveform for which you want to add or replace an attribute.
• name —
• value —
value is the value of the attribute. This input is polymorphic, so you can wire any data to it.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• replaced —
• error out —
error out contains error information. This output provides standard error out functionality.
If the attribute in name already exists, the function overwrites the attribute with the
new value, and replaced is TRUE. If the attribute in name does not exist already, the
function creates a new attribute. Some attributes are set by NI-DAQ and Express VIs.
Data
Name Attribute Acceptable Values Description
Type
Hardware Any value is NI_DeviceNumber is the device
Device NI_DeviceNumber String acceptable for number of the hardware producing
Number NI_DeviceNumber. the waveform.
Any value is NI_ChannelName is the name of the
Name of
NI_ChannelName String acceptable for virtual channel producing the
Channel
NI_ChannelName. waveform.
NI_LineNames is the name of the
Name of Any value is digital line in the waveform. For more
Digital NI_LineNames String acceptable for than one digital line, the function
Line(s) NI_LineNames. returns the line names in reverse
order.
898 ni.com
Functions
The following table lists the waveform attributes set by Express VIs.
Data
Name Attribute Acceptable Values Description
Type
NI_ExpStartTimeStamp is
the time stamp of the first
sample in the first
waveform. In Express VIs,
this is set once per start
of the VI and does not
change, even if waveform
Any value is acceptable data is generated in a
Start Time
NI_ExpStartTimeStamp for loop. In Express VIs,
Timestamp stamp
NI_ExpStartTimeStamp. NI_ExpStartTimeStamp is
set according to the PC
clock unless the
waveform originates in
NI-DAQ. When the
waveform originates in
NI-DAQ, NI-DAQ sets
NI_ExpStartTimeStamp.
NI_ExpTimeStamp is the
time stamp of the first
sample in the waveform.
In Express VIs,
NI_ExpTimeStamp is set
Time Any value is acceptable according to the PC clock
Timestamp NI_ExpTimeStamp
stamp for NI_ExpTimeStamp. unless the waveform
originates in NI-DAQ.
When the waveform
originates in NI-DAQ, NI-
DAQ sets
NI_ExpTimeStamp.
X NI_ExpXDimension String Use a single character If the value of
NI_ExpXDimension is t, t0
for the
and dt are unchanged. If
NI_ExpXDimension
the value of
value. Currently, only t
NI_ExpXDimension is f,
for time and f for
Dimension Express VIs interpret t0
frequency are
and dt as f0 and df. For all
supported. The value
other values, or unknown
for NI_ExpXDimension
dimension, t0 and dt are
is case sensitive.
interpreted as X0 and dX.
If and only if
TRUE or FALSE are NI_ExpXDimension is t,
Relative
NI_ExpIsRelativeTime Boolean acceptable values for Express VIs set t0 as a
Time?
NI_ExpIsRelativeTime. relative/absolute time
stamp value.
Note Express VIs also use the attributes set by NI-DAQ. If the waveform does
not originate in NI-DAQ, Express VIs add NI_ChannelName.
Examples
• labview\examples\Waveform\Waveform - Create.vi
Retrieves the names and values of all attributes or the value of a single attribute,
depending on whether you wire the name parameter.
Attributes can be channel names. The connector pane displays the default data types
for this polymorphic function.
900 ni.com
Functions
Inputs/Outputs
• waveform —
waveform is the waveform for which you want to retrieve an attribute(s) and value(s).
• name —
name is the name of the attribute whose value you want to retrieve.
Do not wire this parameter if you want to retrieve all the attributes associated with the specified
waveform. If you wire name, the names output changes to a Boolean output found, the array
output values changes to an output called value of the same type as default value, and the
function searches for only the specified attribute.
• default value (empty Variant) —
default value is a value and data type that you specify. If the function does not find the attribute
specified in name, it returns the default value.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• duplicate waveform —
• names —
names returns a 1D array containing the names of all attributes associated with the waveform.
If you wire the name parameter, this output changes to a Boolean value found. found returns
TRUE if the function finds the attribute that you specify in name.
• values —
values returns a 1D array containing the values associated with each attribute of the specified
waveform in variant format.
You must unflatten each attribute value to an appropriate data type. If you wire name, this
output changes to a single variant value. If the function does not find the attribute that you
specify in name, it returns the value passed to default value.
• error out —
error out contains error information. This output provides standard error out functionality.
This function has two modes of behavior depending on whether you wire the name
parameter. By default, the function returns the names of all attributes and their
corresponding values in 1D arrays. If you wire name, the names output changes to a
Boolean output found, the values output changes to a variant output value, and the
function searches for only the specified attribute. If the function does not find the
specified attribute(s), or if it cannot convert the attribute(s) to the default value, found
is FALSE, and value displays the contents of default value.
Data
Name Attribute Acceptable Values Description
Type
Hardware NI_DeviceNumber is the device
Any value is acceptable
Device NI_DeviceNumber String number of the hardware device
for NI_DeviceNumber.
Number producing the waveform.
NI_ChannelName is the name of
Name of Any value is acceptable
NI_ChannelName String the virtual channel producing
Channel for NI_ChannelName.
the waveform.
Name of
Any value is acceptable NI_LineNames is the name of
Digital NI_LineNames String
for NI_LineNames. the digital line in the waveform.
Line(s)
Volts, PSI, and so forth
Unit for NI_UnitDescription is the units
NI_UnitDescription String are acceptable values for
Data of measure for the waveform.
NI_UnitDescription.
The following table lists the waveform attributes set by Express VIs.
Data
Name Attribute Acceptable Values Description
Type
NI_ExpStartTimeStamp is
Any value is acceptable
Start Time the time stamp of the first
NI_ExpStartTimeStamp for
Timestamp stamp sample in the first
NI_ExpStartTimeStamp.
waveform. In Express VIs,
902 ni.com
Functions
Data
Name Attribute Acceptable Values Description
Type
this is set once per start
of the VI and does not
change, even if waveform
data is generated in a
loop. In Express VIs,
NI_ExpStartTimeStamp is
set according to the PC
clock unless the
waveform originates in
NI-DAQ. When the
waveform originates in
NI-DAQ, NI-DAQ sets
NI_ExpStartTimeStamp.
NI_ExpTimeStamp is the
time stamp of the first
sample in the waveform.
In Express VIs,
NI_ExpTimeStamp is set
Time Any value is acceptable according to the PC clock
Timestamp NI_ExpTimeStamp
stamp for NI_ExpTimeStamp. unless the waveform
originates in NI-DAQ.
When the waveform
originates in NI-DAQ, NI-
DAQ sets
NI_ExpTimeStamp.
If the value of
NI_ExpXDimension is t, t0
Use a single character
and dt are unchanged. If
for the
the value of
NI_ExpXDimension
NI_ExpXDimension is f,
value. Currently, only t
X Express VIs interpret t0
NI_ExpXDimension String for time and f for
Dimension and dt as f0 and df. For all
frequency are
other values, Express VIs
supported. The value
generically interpret t0
for NI_ExpXDimension
and dt as X0 and dX, but
is case sensitive.
there is no effect
otherwise.
Relative TRUE or FALSE are If and only if
NI_ExpIsRelativeTime Boolean
Time? acceptable values for NI_ExpXDimension is t,
Data
Name Attribute Acceptable Values Description
Type
Express VIs set t0 as a
NI_ExpIsRelativeTime. relative/absolute time
stamp value.
Note Express VIs also use the attributes set by NI-DAQ. If the waveform does
not originate in NI-DAQ, Express VIs add NI_ChannelName.
Scales the waveform data using the equation waveform out = (scale * waveform in +
offset).
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to multiply the data values.
• offset —
offset is the value to add to the waveform values according to the following equation: y = (scale
* x) + offset, where x is the data from the waveform in and y is the data written to the waveform
out. The default is 0.
• scale —
scale is the number by which you multiply the waveform data values. A value of greater than
zero but less than 1 decreases the waveform amplitude. A value of greater than 1 increases the
waveform amplitude. The default is 1.0.
904 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out is the resulting waveform with the new scaled data values.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Normalize Waveform
Determines the scale and offset necessary to transform the waveform data so that its
maximum is 1.00 and its minimum is -1.00.
Inputs/Outputs
• waveform in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• normalized waveform —
• scale —
• offset —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - Normalize.vi
Append Waveforms
Appends waveform B to the end of waveform A. If the sampling rates do not match,
the error cluster returns an error. The trigger time of waveform B is ignored. The data
type of the Y component of waveform A and waveform B determines the polymorphic
instance to use or you can manually select the instance.
906 ni.com
Functions
Examples
• labview\examples\Waveform\Waveform - Append.vi
Inputs/Outputs
• waveform A —
• waveform B —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out is the waveform that results from appending waveform B to waveform A.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - Append.vi
Inputs/Outputs
• waveform A —
• waveform B —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out is the waveform that results from appending waveform B to waveform A.
908 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - Append.vi
Inputs/Outputs
• waveform A —
• waveform B —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out is the waveform that results from appending waveform B to waveform A.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - Append.vi
Inputs/Outputs
• waveform A —
• waveform B —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out is the waveform that results from appending waveform B to waveform A.
910 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - Append.vi
Inputs/Outputs
• waveform A —
• waveform B —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out is the waveform that results from appending waveform B to waveform A.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - Append.vi
Inputs/Outputs
• waveform A —
• waveform B —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out is the waveform that results from appending waveform B to waveform A.
912 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - Append.vi
Inputs/Outputs
• waveform A —
• waveform B —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
waveform out is the waveform that results from appending waveform B to waveform A.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - Append.vi
Returns the number of data elements in the waveform. You must manually select the
polymorphic instance you want to use.
914 ni.com
Functions
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve the number of data elements.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• number of samples —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve the number of data elements.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• number of samples —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve the number of data elements.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• number of samples —
916 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve the number of data elements.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• number of samples —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve the number of data elements.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• number of samples —
• error out —
error out contains error information. This output provides standard error out functionality.
918 ni.com
Functions
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve the number of data elements.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• number of samples —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve the number of data elements.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• number of samples —
• error out —
error out contains error information. This output provides standard error out functionality.
Determines the maximum and minimum values and their associate time values for a
waveform.
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve the maximum and minimum values.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
920 ni.com
Functions
• max time —
max time is the time value at which the maximum data value was reached.
• waveform out —
• Y max —
• Y min —
• error out —
error out contains error information. This output provides standard error out functionality.
• min time —
min time is the time value at which the minimum data value was reached.
Examples
Inputs/Outputs
• data —
data is the waveform that includes the data you want to compare to a specified limit.
• compare condition —
compare condition indicates whether the highest or lowest data value of waveform must be
lower than and/or equal to or higher than and/or equal to the number in limit.
0 <—The highest or lowest value in the waveform is less than the limit.
1 <=—The highest or lowest value in the waveform is less than or equal to the limit.
2 >—The highest or lowest value in the waveform is greater than the limit.
3 >= (default)—The highest or lowest value in the waveform is greater than or equal to the limit.
• limit —
limit specifies the number to which you want to compare the highest or lowest data value in the
waveform.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• output waveforms —
The first is a copy of data. The second is the failure waveform, which is a copy of data with all
elements that passed replaced by NaN. All valid elements are failures.
• passed? —
passed? indicates whether the highest or lowest data value met the compare condition based
on the limit. FALSE indicates the highest or lowest data value did not meet the comparison.
• error out —
error out contains error information. This output provides standard error out functionality.
passed? is FALSE if any point in the waveform fails the specified comparison. For
example, passed? is FALSE if any waveform point is greater than the limit value when
compare condition is set to <.
922 ni.com
Functions
This VI also returns an array of waveforms where the first waveform is the original data.
The second waveform contains the data with the failed limit comparison values
replaced by NaN.
Examples
Search Waveform
Inputs/Outputs
• tolerance (%) —
tolerance is the percent tolerance on the input value for a match. The default is 0.01.
• waveform in —
waveform in is the waveform you want to search for a particular data value. The default is
empty.
• value —
value is the data value for which you want to search. The default is 0.
• start index —
start index defines the point in the waveform data where the search begins. The default is 0, the
beginning of the waveform. The VI returns an error if start index is out of range for the waveform.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• indices of fits —
indices of fits is an array of indexes of all values that meet the input value and tolerance criteria.
• waveform out —
index of best fit is the index of the data value that best matches the input value.
time of best fit is the time value where the data value that best matches the input value was
found.
• error out —
error out contains error information. This output provides standard error out functionality.
• time of fits —
time of fits is an array of all time values of all values that meet the input value and tolerance
criteria.
Examples
• labview\examples\Waveform\Waveform - Search.vi
Waveform to XY Pairs
Creates an array of data values and their corresponding time stamps. Wire the data
type of the Y component to the waveform in input to determine the polymorphic
instance to use or manually select the instance.
924 ni.com
Functions
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
• x—
• y—
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
926 ni.com
Functions
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
• x—
• y—
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
• x—
• y—
• error out —
928 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
• x—
• y—
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
930 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
• x—
• y—
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
• x—
• y—
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
932 ni.com
Functions
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
• x—
• y—
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
934 ni.com
Functions
• x—
• y—
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
• x—
• y—
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
936 ni.com
Functions
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
• x—
• y—
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
• x—
• y—
• error out —
938 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
• x—
• y—
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
940 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
• x—
• y—
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
Inputs/Outputs
• waveform in —
waveform in is the waveform for which you want to retrieve data values and corresponding time
stamps.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• XY pairs —
XY pairs is the data values of the waveforms and their corresponding time stamps.
• x—
• y—
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Waveform\Waveform - XY Pairs.vi
942 ni.com
Functions
Waveform Constant
Use the waveform constant to hold acquired data for analysis and display.
The waveform constant consists of components that include a start time, a delta t, the
waveform data, and attributes. Use the Analog Waveform VIs and functions to access
and manipulate individual components of a waveform.
The start time (t0) is a time stamp associated with the first measurement point in the
waveform. Use the start time to synchronize plots on a multi-plot waveform graph or
digital waveform graph and to determine delays between waveforms. Delta t (dt) is the
time interval in seconds between any two points in the signal. The waveform data is
the value that represents the waveform. An array of any numeric data type other than
the fixed-point numeric data type can represent analog waveform data. Generally, the
number of data values in the array corresponds directly to the number of scans from a
DAQ device. Attributes include information about the signal, such as the name of the
signal and the device acquiring the signal. NI-DAQ automatically sets some attributes
for you. Use the Set Waveform Attribute function to set attributes, and use the Get
Waveform Attribute function to read attributes.
Use the Get Waveform Components function to extract and manipulate the
components of a waveform you generate. The Negate function negates waveform data
and plots the results to a graph.
To represent waveform data in the front panel window, use the waveform control or
the waveform graph.
Waveform Generation
Use the Waveform Generation VIs to generate different types of single and multi-tone
signals, function generator signals, and noise signals.
Formula Creates an output waveform using a formula string to specify the time function to
Waveform be used.
Sine
Generates a waveform containing a sine wave.
Waveform
Square
Generates a waveform containing a square wave.
Waveform
Triangle
Generates a waveform containing a triangle wave.
Waveform
Sawtooth
Generates a waveform containing a sawtooth wave.
Waveform
Basic
Generates a waveform that is the sum of integer cycle sine tones.
Multitone
Basic
Multitone with Generates a waveform that is the sum of integer cycle sine tones.
Amplitudes
Multitone
Generates a waveform that is the sum of integer cycle sine tones.
Generator
Uniform White
Generates a uniformly distributed pseudorandom pattern whose values are in the
Noise
range [–a:a], where a is the absolute value of amplitude.
Waveform
944 ni.com
Functions
Gaussian
Generates a Gaussian distributed pseudorandom pattern whose statistical profile is
White Noise
(0,s), where s is the absolute value of the specified standard deviation.
Waveform
Periodic
Random
Generates a waveform containing periodic random noise (PRN).
Noise
Waveform
Inverse f
Generates a continuous noise waveform with a power spectral density that is
Noise
inversely proportional to frequency over a specified frequency range.
Waveform
Gamma Noise Generates a pseudorandom pattern of values which are the waiting times to the
Waveform order number event of a unit mean Poisson process.
Poisson Noise Generates a pseudorandom sequence of values which are the number of discrete
Waveform events occurring in the interval specified by mean of a unit rate Poisson process.
Bernoulli Generates a pseudorandom pattern of ones and zeros, where the probability of
Noise generating a one is one probability and the probability of generating a zero is
Waveform (1–one probability).
MLS Sequence Generates a maximum length sequence of ones and zeros using a modulo-2
Waveform primitive polynomial of order polynomial order.
Simulate
Simulates a sine wave, square wave, triangle wave, sawtooth wave, or noise signal.
Signal
Inputs/Outputs
• offset —
• reset signal —
reset signal, if TRUE, resets the phase to the phase control value and the time stamp to zero. The
default is FALSE.
• signal type —
Sine Wave
0
(default)
1 Triangle Wave
2 Square Wave
3 Sawtooth Wave
• frequency —
946 ni.com
Functions
frequency is the frequency of the waveform in units of hertz. The default is 10.
• amplitude —
amplitude is the amplitude of the waveform. The amplitude is also the peak voltage. The default
is 1.0.
• phase —
phase is the initial phase, in degrees, of the waveform. The default is 0. The VI ignores phase if
reset signal is FALSE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• sampling info —
• Fs —
• #s —
square wave duty cycle is the percentage of time a square wave remains high versus low over
one period. The VI uses this parameter only if the signal type is a square wave. The default is 50.
• signal out —
• phase out —
• error out —
error out contains error information. This output provides standard error out functionality.
This VI remembers the time stamp of the previous waveform generated and continues
to increment the time stamp from that point. It takes as inputs the type of waveform,
number of samples, phase in, and the frequency of the waveform to be generated in
Hz.
Inputs/Outputs
• reset signal —
reset signal, if TRUE, resets the phase of each tone to the phase value from the tones array, the
seed to the seed control value, and the time stamp to zero. The default is FALSE.
• tones —
• frequency —
• amplitude —
• phase —
948 ni.com
Functions
phase specifies the initial phase of the sine tone in degrees. The default is 0.
• noise (rms) —
noise specifies the rms level of the additive Gaussian noise. The default is 0.0.
• offset —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• sampling info —
• Fs —
• #s —
• seed —
seed, when greater than 0, causes reseeding of the noise sample generator. The default is –1.
LabVIEW maintains the internal seed state independently for each instance of this reentrant VI.
For a specific instance of this VI, if seed is less than or equal to 0, LabVIEW does not reseed the
noise generator, and the noise generator resumes producing noise samples as a continuation of
the previous noise sequence.
• signal out —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Mathematics\Interpolation\1D Fourier
Interpolation.vi
Formula Waveform
Creates an output waveform using a formula string to specify the time function to be
used.
Inputs/Outputs
• offset —
• reset signal —
reset signal, if TRUE, resets the time stamp to zero. The default is FALSE.
• frequency —
frequency is the frequency of the waveform in units of hertz. The default is 100.
950 ni.com
Functions
• amplitude —
amplitude is the amplitude of the waveform. The amplitude is also the peak voltage. The default
is 1.0.
• formula —
formula is the representation used to generate the signal out waveform. The default is
sin(w*t)*sin(2*pi(1)*10).
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• sampling info —
• Fs —
• #s —
• signal out —
• error out —
error out contains error information. This output provides standard error out functionality.
Related Information
Examples
Sine Waveform
Generates a waveform containing a sine wave.
Inputs/Outputs
• offset —
• reset signal —
reset signal, if TRUE, resets the phase to the phase control value and the time stamp to zero. The
default is FALSE.
• frequency —
952 ni.com
Functions
frequency is the frequency of the waveform in units of hertz. The default is 10.
• amplitude —
amplitude is the amplitude of the waveform. The amplitude is also the peak voltage. The default
is 1.0.
• phase —
phase is the initial phase, in degrees, of the waveform. The default is 0. The VI ignores phase if
reset signal is FALSE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• sampling info —
• Fs —
• #s —
• signal out —
• error out —
error out contains error information. This output provides standard error out functionality.
If sine wave is represented by the sequence Y, the VI generates the pattern according to
the following equation.
This VI initializes the phase on the first run. After the first run, if reset signal is TRUE,
phase sets the initial phase of the input signal. If reset signal is FALSE, the VI ignores
phase.
Examples
Square Waveform
Generates a waveform containing a square wave.
Inputs/Outputs
• offset —
954 ni.com
Functions
• reset signal —
reset signal, if TRUE, resets the phase to the phase control value and the time stamp to zero. The
default is FALSE.
• frequency —
frequency is the frequency of the waveform in units of hertz. The default is 10.
• amplitude —
amplitude is the amplitude of the waveform. The amplitude is also the peak voltage. The default
is 1.0.
• phase —
phase is the initial phase, in degrees, of the waveform. The default is 0. The VI ignores phase if
reset signal is FALSE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• sampling info —
• Fs —
• #s —
duty cycle is the percentage of time a square wave remains high versus low over one period. The
default is 50.
• signal out —
• error out —
error out contains error information. This output provides standard error out functionality.
If square wave is represented by the sequence Y, the VI generates the pattern according
to the following equation.
or
where pmod = p modulo 360.0, duty = duty cycle in percent, and phase[i] is:
where initial_phase = phase if reset signal is TRUE, or last output phase if reset signal
is FALSE.
956 ni.com
Functions
Triangle Waveform
Generates a waveform containing a triangle wave.
Inputs/Outputs
• offset —
• reset signal —
reset signal, if TRUE, resets the phase to the phase control value and the time stamp to zero. The
default is FALSE.
• frequency —
frequency is the frequency of the waveform in units of hertz. The default is 10.
• amplitude —
amplitude is the amplitude of the waveform. The amplitude is also the peak voltage. The default
is 1.0.
• phase —
phase is the initial phase, in degrees, of the waveform. The default is 0. The VI ignores phase if
reset signal is FALSE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• sampling info —
• Fs —
• #s —
• signal out —
• error out —
error out contains error information. This output provides standard error out functionality.
or
or
958 ni.com
Functions
where initial_phase = phase if reset signal is TRUE, or last output phase if reset signal
is FALSE.
Sawtooth Waveform
Generates a waveform containing a sawtooth wave.
Inputs/Outputs
• offset —
• reset signal —
reset signal, if TRUE, resets the phase to the phase control value and the time stamp to zero. The
default is FALSE.
• frequency —
frequency is the frequency of the waveform in units of hertz. The default is 10.
• amplitude —
amplitude is the amplitude of the waveform. The amplitude is also the peak voltage. The default
is 1.0.
• phase —
phase is the initial phase, in degrees, of the waveform. The default is 0. The VI ignores phase if
reset signal is FALSE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• sampling info —
• Fs —
• #s —
• signal out —
• error out —
error out contains error information. This output provides standard error out functionality.
where amp = amplitude, n = number of samples (#s), and sawtooth (phase[i]) is:
960 ni.com
Functions
or
where initial_phase = phase if reset signal is TRUE, or last output phase if reset signal
is FALSE.
Basic Multitone
Generates a waveform that is the sum of integer cycle sine tones.
Inputs/Outputs
• amplitude —
amplitude is the value that the sum of all the tones is scaled to and is the largest absolute value
that the waveform contains. The default is –1.
amplitude is useful when outputting the waveform to an analog output channel. If the
maximum value that the hardware can output is 5 volts, set amplitude to 5. If amplitude ≤ 0, the
scaling is not applied.
• reset signal —
reset signal, if TRUE, resets the phase to the phase control value and the time stamp to zero. The
default is FALSE.
• #tones —
• start frequency —
start frequency is the lowest tone frequency generated. This value must be an integer multiple
of Fs/#s. The default is 10.
• seed —
• delta frequency —
delta frequency is the magnitude of the spacing between adjacent tone frequencies. delta
frequency must be an integer multiple of Fs/#s.
If start frequency is 100 Hz, delta frequency is ten, and #tones is three, the tone frequencies
generated are 100 Hz, 110 Hz, and 120 Hz.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• sampling info —
• Fs —
962 ni.com
Functions
• #s —
• coerce frequencies? —
If coerce frequencies? is TRUE, the specified tone frequencies will be coerced to the nearest
multiple of Fs/n.
• phase relationship —
phase relationship is the distribution of the phases of the sine tones. The phase distribution
affects the Peak/RMS ratio of the overall waveform.
• signal out —
• crest factor —
crest factor is the ratio of the Peak voltage to the RMS voltage of signal out.
actual tone frequencies are the tone frequencies generated after accounting for coercion, if
coerce frequencies? is TRUE, and the Nyquist criteria.
• error out —
error out contains error information. This output provides standard error out functionality.
the specified tone frequencies and zero at all other frequencies. The sine tones are
generated using the frequency and samples information. The phases of the tones are
random and the amplitude of each tone is equal. This raw array then is scaled so that
the largest absolute value is equal to amplitude. Finally, the waveform is bundled. The
X0 element of the waveform is always set equal to 0 and the delta X element is set
equal to 1/Fs.
Inputs/Outputs
• amplitude —
amplitude is the value that the sum of all the tones is scaled to and is the largest absolute value
that the waveform contains. The default is –1.
amplitude is useful when outputting the waveform to an analog output channel. If the
maximum value that the hardware can output is 5 volts, set amplitude to 5. If amplitude ≤ 0, the
scaling is not applied.
• reset signal —
reset signal, if TRUE, resets the phase to the phase control value and the time stamp to zero. The
default is FALSE.
• start frequency —
start frequency is the lowest tone frequency generated. This value must be an integer multiple
964 ni.com
Functions
• tone amplitudes —
tone amplitudes is an array in which each element is a single tone amplitude. The size of this
array determines how many tones are generated.
• seed —
• delta frequency —
delta frequency is the magnitude of the spacing between adjacent tone frequencies. delta
frequency must be an integer multiple of Fs/#s. The default is 100.
If start frequency is 100 Hz, delta frequency is ten, and the tone amplitudes array contains
three elements, the tone frequencies generated are 100 Hz, 110 Hz, and 120 Hz.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• sampling info —
• Fs —
• #s —
• coerce frequencies? —
If coerce frequencies? is TRUE, the specified tone frequencies will be coerced to the nearest
multiple of Fs/n.
• phase relationship —
phase relationship is the distribution of the phases of the sine tones. The phase distribution
affects the Peak/RMS ratio of the overall waveform.
• signal out —
• crest factor —
crest factor is the ratio of the Peak voltage to the RMS voltage of signal out.
actual tone frequencies are the tone frequencies generated after accounting for coercion, if
coerce frequencies? is TRUE, and the Nyquist criteria.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
966 ni.com
Functions
Multitone Generator
Generates a waveform that is the sum of integer cycle sine tones.
Inputs/Outputs
• amplitude —
amplitude is the value that the sum of all the tones is scaled to and is the largest absolute value
that the waveform contains. The default is –1.
amplitude is useful when outputting the waveform to an analog output channel. If the
maximum value that the hardware can output is 5 volts, set amplitude to 5. If amplitude ≤ 0, the
scaling is not applied.
• reset signal —
reset signal, if TRUE, resets the phase to the phase control value and the time stamp to zero. The
default is FALSE.
• tone frequencies —
tone frequencies is an array in which each element is a single tone frequency. The size of this
array must match the size of the tone amplitudes array and the size of the tone phases array.
• tone amplitudes —
tone amplitudes is an array in which each element is a single tone amplitude. The size of this
array must match the size of the tone frequencies array and the size of the tone phases array.
• tone phases —
tone phases is an array in which each element is a single tone phase in degrees. The size of this
array must match the size of the tone frequencies array and the size of the tone amplitude
array.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• sampling info —
• Fs —
• #s —
• coerce frequencies? —
If coerce frequencies? is TRUE, the specified tone frequencies will be coerced to the nearest
multiple of Fs/n.
• signal out —
• crest factor —
crest factor is the ratio of the Peak voltage to the RMS voltage of signal out.
actual tone frequencies are the tone frequencies generated after accounting for coercion, if
coerce frequencies? is TRUE, and the Nyquist criteria.
• error out —
error out contains error information. This output provides standard error out functionality.
968 ni.com
Functions
LabVIEW assumes tone phases to be referenced to the sine function. To reference tone
phases to the cosine function, add 90 degrees. Be aware that this may change the crest
factor. The following code excerpt shows how to reference tone phases to the cosine
function:
Examples
Inputs/Outputs
• reset signal —
reset signal, if TRUE, resets the seed to the seed control value and the time stamp to zero. The
default is FALSE.
• amplitude —
amplitude is the maximum absolute value that signal out can have. The default is 1.0.
• seed —
seed, when greater than 0, causes reseeding of the noise sample generator. The default is –1.
LabVIEW maintains the internal seed state independently for each instance of this reentrant VI.
For a specific instance of this VI, if seed is less than or equal to 0, LabVIEW does not reseed the
noise generator, and the noise generator resumes producing noise samples as a continuation of
the previous noise sequence.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• sampling info —
• Fs —
• #s —
• signal out —
• error out —
970 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• reset signal —
reset signal, if TRUE, resets the seed to the seed control value and the time stamp to zero. The
default is FALSE.
• standard deviation —
standard deviation is the standard deviation of the generated noise. The default is 1.0.
• seed —
seed, when greater than 0, causes reseeding of the noise sample generator. The default is –1.
LabVIEW maintains the internal seed state independently for each instance of this reentrant VI.
For a specific instance of this VI, if seed is less than or equal to 0, LabVIEW does not reseed the
noise generator, and the noise generator resumes producing noise samples as a continuation of
the previous noise sequence.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• sampling info —
• Fs —
• #s —
• signal out —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• reset signal —
reset signal, if TRUE, resets the seed to the seed control value and the time stamp to zero. The
default is FALSE.
• spectral amplitude —
spectral amplitude is the magnitude of the frequency domain components of signal out.
972 ni.com
Functions
• seed —
seed, when greater than 0, causes reseeding of the noise sample generator. The default is –1.
LabVIEW maintains the internal seed state independently for each instance of this reentrant VI.
For a specific instance of this VI, if seed is less than or equal to 0, LabVIEW does not reseed the
noise generator, and the noise generator resumes producing noise samples as a continuation of
the previous noise sequence.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• sampling info —
• Fs —
• #s —
• signal out —
• error out —
error out contains error information. This output provides standard error out functionality.
The output array contains all frequencies which can be represented with an integral
number of cycles in the requested number of samples. Each frequency-domain
component has a magnitude of the input spectral amplitude and random phase.
Another way of thinking of the output array of PRN is that it is a summation of
sinusoidal signals with the same amplitudes but with random phases. The unit of
spectral amplitude is the same as the output PRN unit and is a linear measure of
amplitude, much like the other Waveform Generation VIs.
Inputs/Outputs
• reset signal (F) —
reset signal resets the noise sample generator and the time stamp to zero. The default is FALSE.
• noise density —
noise density specifies the spectral density (V/root Hz) of the ideal inverse-f noise waveform at
the frequency reference freq.
The actual inverse-f noise waveform approximates the ideal inverse-f noise over the frequency
range defined by filter specifications. Therefore, the actual spectral density of the inverse-f
noise waveform at reference freq is near noise density only if reference freq is within the design
frequency range specified in filter specifications.
• exponent —
exponent specifies the exponent of the desired inverse-f noise spectral shape.
This VI generates the inverse-f noise waveform by passing white noise through a digital filter
with a desired magnitude-squared response of 1/frequency^exponent.
• filter specifications —
filter specifications specifies the operating frequency range and the filter order of the filter.
974 ni.com
Functions
lower cutoff freq specifies the lower frequency edge of the operating frequency range of the
filter.
higher cutoff freq specifies the higher frequency edge of the operating frequency range of
the filter.
• order —
order specifies the number of first order stages of the inverse-f filter. Increasing order
improves the inverse-f spectral shape but requires more computation time during filter
operation.
• seed —
seed, when greater than 0, causes reseeding of the noise sample generator. The default is –1.
LabVIEW maintains the internal seed state independently for each instance of this reentrant VI.
For a specific instance of this VI, if seed is less than or equal to 0, LabVIEW does not reseed the
noise generator, and the noise generator resumes producing noise samples as a continuation of
the previous noise sequence.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• sampling info —
• Fs —
• #s —
reference freq specifies the frequency in Hz at which the spectral density of the ideal inverse-f
noise waveform is equal to noise density.
The actual inverse-f noise waveform source is designed to approximate the ideal inverse-f noise
waveform over the frequency range defined in filter specifications. Therefore, the actual
spectral density of the inverse-f noise waveform at reference freq is near noise density if
reference freq is within the design frequency range specified in filter specifications.
• signal out —
magnitude error returns the magnitude of the deviation of the actual inverse-f filter in dB when
measured against the ideal inverse-f filter.
The ideal filter has a magnitude-squared response proportional to 1/f exponent over the
frequency range specified by filter specifications.
• frequency (Hz) —
• magnitude (dB) —
• expected rms —
expected rms returns the expected RMS level of the generated noise waveform.
• filter information —
filter information returns the magnitude and phase of the frequency response of the designed
inverse-f filter.
976 ni.com
Functions
• magnitude (dB) —
magnitude returns the magnitude of the frequency response of the designed inverse-f filter
in dB.
• frequency (Hz) —
frequency returns the frequencies of the frequency response of the designed inverse-f
filter in Hz.
• magnitude (dB) —
magnitude returns the magnitudes of the frequency response of the designed inverse-f
filter in dB.
• phase (deg) —
phase returns the phase of the frequency response of the designed inverse-f filter in
degrees.
• frequency (Hz) —
frequency returns the frequencies of the frequency response of the designed inverse-f
filter in Hz.
• phase (deg) —
phase returns the phases of the frequency response of the designed inverse-f filter in
degrees.
• error out —
error out contains error information. This output provides standard error out functionality.
This VI generates the inverse-f noise waveform by passing spectrally flat, or white,
noise through a digital filter with a desired magnitude-squared response of 1/
frequency^exponent.
Inputs/Outputs
• reset signal —
reset signal, if TRUE, resets the seed to the seed control value and the time stamp to zero. The
default is FALSE.
• order —
order specifies the event number of the unit mean Poisson process. order must be greater than
0. The default is 1.
• seed —
seed, when greater than 0, causes reseeding of the noise sample generator. The default is –1.
LabVIEW maintains the internal seed state independently for each instance of this reentrant VI.
For a specific instance of this VI, if seed is less than or equal to 0, LabVIEW does not reseed the
noise generator, and the noise generator resumes producing noise samples as a continuation of
the previous noise sequence.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• sampling info —
978 ni.com
Functions
• Fs —
• #s —
• signal out —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• reset signal —
reset signal, if TRUE, resets the seed to the seed control value and the time stamp to zero. The
default is FALSE.
• mean —
mean specifies the interval of a unit rate Poisson process. mean must be greater than or equal to
0. The default is 1.0.
• seed —
seed, when greater than 0, causes reseeding of the noise sample generator. The default is –1.
LabVIEW maintains the internal seed state independently for each instance of this reentrant VI.
For a specific instance of this VI, if seed is less than or equal to 0, LabVIEW does not reseed the
noise generator, and the noise generator resumes producing noise samples as a continuation of
the previous noise sequence.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• sampling info —
• Fs —
• #s —
• signal out —
• error out —
error out contains error information. This output provides standard error out functionality.
980 ni.com
Functions
Inputs/Outputs
• reset signal —
reset signal, if TRUE, resets the seed to the seed control value and the time stamp to zero. The
default is FALSE.
• trial probability —
trial probability is the probability that a given trial is true (1). trial probability must be in the
range [0, 1]. The default is 0.5.
• seed —
seed, when greater than 0, causes reseeding of the noise sample generator. The default is –1.
LabVIEW maintains the internal seed state independently for each instance of this reentrant VI.
For a specific instance of this VI, if seed is less than or equal to 0, LabVIEW does not reseed the
noise generator, and the noise generator resumes producing noise samples as a continuation of
the previous noise sequence.
• trials —
trials is the number of trials performed for each element of signal out. The default is 1.0.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• sampling info —
• Fs —
• #s —
• signal out —
• error out —
error out contains error information. This output provides standard error out functionality.
If one probability is 0.7, each element of signal out has a 70% chance of being one and
a 30% chance of being zero.
Inputs/Outputs
• reset signal —
reset signal, if TRUE, resets the seed to the seed control value and the time stamp to zero. The
default is FALSE.
• one probability —
982 ni.com
Functions
one probability specifies the probability of a given element of signal out being true (1). The
default is 0.5.
• seed —
seed, when greater than 0, causes reseeding of the noise sample generator. The default is –1.
LabVIEW maintains the internal seed state independently for each instance of this reentrant VI.
For a specific instance of this VI, if seed is less than or equal to 0, LabVIEW does not reseed the
noise generator, and the noise generator resumes producing noise samples as a continuation of
the previous noise sequence.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• sampling info —
• Fs —
• #s —
• signal out —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• reset signal —
reset signal, if TRUE, resets the seed to the seed control value and the time stamp to zero. The
default is FALSE.
• polynomial order —
polynomial order specifies the order of the modulo-2 primitive polynomial used to generate
signal out. The default value is 31.
• seed —
seed, when greater than 0, causes reseeding of the noise sample generator. The default is –1.
LabVIEW maintains the internal seed state independently for each instance of this reentrant VI.
For a specific instance of this VI, if seed is less than or equal to 0, LabVIEW does not reseed the
noise generator, and the noise generator resumes producing noise samples as a continuation of
the previous noise sequence.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• sampling info —
984 ni.com
Functions
• Fs —
• #s —
• signal out —
• error out —
error out contains error information. This output provides standard error out functionality.
The binary Maximum Length Sequence (MLS) also is known as the Pseudo-Random
Binary Sequence (PRBS).
Simulate Signal
Simulates a sine wave, square wave, triangle wave, sawtooth wave, or noise signal.
Option Description
Contains the following options:
• Signal type—
Signal
Type of waveform to simulate. You can simulate a sine wave, square wave, sawtooth
wave, triangle wave, or noise (DC).
Option Description
• Frequency (Hz)—
• Phase (deg)—
• Amplitude—
• Offset—
Percentage of time a square wave remains high versus low over one period. The
default is 50.
• Add noise—
• Noise type—
Specifies the type of noise to add to the waveform. This option is available only when
you place a checkmark in the Add Noise checkbox.
986 ni.com
Functions
Option Description
Poisson process.
◦ Poisson Noise generates a signal that contains a pseudorandom sequence of
values that are the number of discrete events occurring in a given interval,
specified by Mean, of a unit rate Poisson process.
◦ Binomial Noise generates a signal that contains a binomially distributed,
pseudorandom pattern whose values are the number of occurrences of an
event, given the probability of that event occurring and the number of trials.
◦ Bernoulli Noise generates a signal that contains a pseudorandom pattern of
ones and zeros.
◦ MLS Sequence generates a signal that contains a maximum length sequence of
ones and zeros using a modulo-2 primitive polynomial of order Polynomial
order.
◦ Inverse F Noise generates a signal that contains a continuous noise waveform
with a power spectral density that is inversely proportional to frequency over a
specified frequency range.
• Noise amplitude—
Maximum absolute value the signal can have. The default is 0.6. This option is
available only when you select Uniform White Noise or Inverse F Noise from the
Noise type pull-down menu.
• Standard deviation—
Standard deviation of the noise you generate. The default is 0.6. This option is
available only when you select Gaussian White Noise from the Noise type pull-down
menu.
• Spectral amplitude—
Magnitude of the frequency domain components of the simulated signal. The default
is 0.6. This option is available only when you select Periodic Random Noise from the
Noise type pull-down menu.
• Order—
Specifies the event number of the unit mean Poisson process. The default is 0.6. This
option is available only when you select Gamma Noise from the Noise type pull-
down menu.
• Mean—
Option Description
Specifies the interval of a unit rate Poisson process. The default is 0.6. This option is
available only when you select Poisson Noise from the Noise type pull-down menu.
• Trial probability—
Probability that a given trial is TRUE. The default is 0.6. This option is available only
when you select Binomial Noise from the Noise type pull-down menu.
• One probability—
Specifies the probability that a given element of the signal is TRUE. The default is 0.6.
This option is available only when you select Bernoulli Noise from the Noise type
pull-down menu.
• Polynomial order—
Specifies the order of the modulo-2 primitive polynomial to use to generate the
signal. The default is 0.6. This option is available only when you select MLS Sequence
from the Noise type pull-down menu.
• Seed number—
When greater than 0, causes reseeding of the noise sample generator. The default is
–1. LabVIEW maintains the internal seed state independently for each instance of this
reentrant VI. For a specific instance of this VI, if Seed number is less than or equal to
0, LabVIEW does not reseed the noise generator, and the noise generator resumes
producing noise samples as a continuation of the previous noise sequence.
• Exponent—
Specifies the exponent of the inverse-f spectral shape you want. The default is 1. This
option is available only when you select Inverse F Noise from the Noise type pull-
down menu.
• Number of samples—
988 ni.com
Functions
Option Description
• Automatic—
Sets the nearest frequency and Number of samples such that the waveform contains
an integer number of cycles.
Indicates the actual number of samples in the waveform when you select Integer
number of cycles.
• Actual frequency—
Indicates the actual frequency of the waveform when you select Integer number of
cycles.
Displays the timestamp in terms of time elapsed since 12:00 a.m., Friday, January 1,
Time 1904, Universal Time [01-01-1904 00:00:00].
Stamps
• Relative to start of measurement—
Displays the timestamp in terms of seconds starting from zero. For example, 100 in
relative time equals 1 minute and 40 seconds.
Option Description
Contains the following options:
Resets the phase to the phase value and the time stamp to zero. Resets the seed
Reset number to –1.
Signal
• Use continuous generation—
Continuously simulates the signal. Does not reset the phase, time stamp, or seed
number.
Result
Displays a preview of the signal to be simulated.
Preview
Inputs/Outputs
• error in (no error) —
• Offset —
Specifies the DC offset of the signal. The default is 0. The value you wire to this input overrides
the value you set in the configuration dialog box.
• Phase —
Specifies the initial phase in degrees of the signal. The default is 0. The value you wire to this
input overrides the value you set in the configuration dialog box.
• Amplitude —
990 ni.com
Functions
Specifies the amplitude of the signal. The default is 1. The value you wire to this input overrides
the value you set in the configuration dialog box.
Specifies the percentage of time a square wave remains high versus low over one period. The
default is 50. The value you wire to this input overrides the value you set in the configuration
dialog box.
• Noise Amplitude —
Specifies the maximum absolute value the signal can have. The default is 0.6. The value you wire
to this input overrides the value you set in the configuration dialog box.
• Standard deviation —
Specifies the standard deviation of the noise you generate. The default is 0.6. The value you wire
to this input overrides the value you set in the configuration dialog box.
• Spectral amplitude —
Specifies the magnitude of the frequency domain components of the simulated signal. The
default is 0.6. The value you wire to this input overrides the value you set in the configuration
dialog box.
• Order —
Specifies the event number of the unit mean Poisson process. The default is 0.6. The value you
wire to this input overrides the value you set in the configuration dialog box.
• Mean —
Specifies the interval of a unit rate Poisson process. The default is 0.6. The value you wire to this
input overrides the value you set in the configuration dialog box.
• Trial probability —
Specifies the probability that a given trial is TRUE. The default is 0.6. The value you wire to this
input overrides the value you set in the configuration dialog box.
• One probability —
Specifies the probability that a given element of the signal is TRUE. The default is 0.6. The value
you wire to this input overrides the value you set in the configuration dialog box.
• Polynomial Order —
Specifies the order of the modulo-2 primitive polynomial to use to generate the signal. The
default is 0.6. The value you wire to this input overrides the value you set in the configuration
dialog box.
• Exponent —
Specifies the exponent of the inverse-f spectral shape you want. The default is 1. The value you
wire to this input overrides the value you set in the configuration dialog box.
• Trials —
Specifies the number of trials performed for each element of the simulated signal. The default is
1. The value you wire to this input overrides the value you set in the configuration dialog box.
• Reset Signal —
Specifies when to reset the signal. The value you wire to this input overrides the value you set in
the configuration dialog box.
• Seed Number —
Reseeds the noise sample generator when this value is > 0. The default is –1. If seed is 0, the
noise generator does not reseed and resumes producing noise samples as a continuation of the
previous noise sequence. The value you wire to this input overrides the value you set in the
configuration dialog box.
• Frequency —
Specifies the frequency in hertz of the waveform. The default is 10.1. The value you wire to this
input overrides the value you set in the configuration dialog box.
• Signal —
• error out —
Contains error information. This output provides standard error out functionality.
992 ni.com
Functions
Examples
Components
Specifies the type of noise to add to the waveform. This option is available only when
you place a checkmark in the Add Noise checkbox.
Type of waveform to simulate. You can simulate a sine wave, square wave, sawtooth
wave, triangle wave, or noise (DC).
Continuously simulates the signal. Does not reset the phase, time stamp, or seed
number.
Resets the phase to the phase value and the time stamp to zero. Resets the seed
number to –1.
Indicates the actual number of samples in the waveform when you select Integer
number of cycles.
Indicates the actual frequency of the waveform when you select Integer number of
cycles.
Sets the nearest frequency and Number of samples such that the waveform contains
an integer number of cycles.
Probability that a given trial is TRUE. The default is 0.6. This option is available only
when you select Binomial Noise from the Noise type pull-down menu.
When greater than 0, causes reseeding of the noise sample generator. The default is –1.
LabVIEW maintains the internal seed state independently for each instance of this
reentrant VI. For a specific instance of this VI, if Seed number is less than or equal to 0,
LabVIEW does not reseed the noise generator, and the noise generator resumes
producing noise samples as a continuation of the previous noise sequence.
Maximum absolute value the signal can have. The default is 0.6. This option is
available only when you select Uniform White Noise or Inverse F Noise from the Noise
type pull-down menu.
Displays the timestamp in terms of time elapsed since 12:00 a.m., Friday, January 1,
1904, Universal Time [01-01-1904 00:00:00].
Displays the timestamp in terms of seconds starting from zero. For example, 100 in
relative time equals 1 minute and 40 seconds.
Percentage of time a square wave remains high versus low over one period. The
default is 50.
Displays the default signal name when you place a checkmark in the Use signal type
name checkbox.
994 ni.com
Functions
Option Description
Contains the following options:
• Define Signal—
Displays the Define Signal dialog box, which you use to generate an arbitrary
signal.
Repeats the x values when you select Start over when end of signal is
reached.
Sequentially increments the x values when you select Start over when
end of signal is reached.
Signal
Contains the following options:
Generation
Option Description
Signal Name Specifies the name of the signal to display on the block diagram.
• Number of points—
Result Preview
Displays the number of data points in the signal you defined in the Define
Signal dialog box.
Inputs/Outputs
• Reset —
Controls the initialization of the internal state of the VI. The default is FALSE.
• Next Value —
Specifies the next value of the signal. The default is TRUE. If FALSE, the Express VI outputs the
same value for each iteration.
• Signal —
996 ni.com
Functions
• error out —
Contains error information. This output provides standard error out functionality.
• Data Valid —
Components
Displays the Define Signal dialog box, which you use to generate an arbitrary signal.
Displays the number of data points in the signal you defined in the Define Signal dialog
box.
Sequentially increments the x values when you select Start over when end of signal is
reached.
Repeats the x values when you select Start over when end of signal is reached.
Waveform Measurements
Use the Waveform Measurements VIs to perform common time and frequency domain
measurements, such as DC, RMS, Tone Frequency/Amplitude/Phase, Harmonic
Distortion, SINAD, and Averaged FFT Measurements.
The VIs on this palette can return waveform error codes. In addition, the VIs on this
palette return an error if an input waveform has a dt less than or equal to zero.
Basic Calculates the DC and RMS values of an input waveform or array of waveforms.
Averaged DC- This VI is similar to the Averaged DC-RMS VI, but this VI returns only one DC value
RMS and one RMS value per input waveform.
Returns the average and RMS levels of a selected cycle of a periodic waveform or
Cycle Average
an array of periodic waveforms. Wire data to the signal in input to determine the
and RMS
polymorphic instance to use or manually select the instance.
Waveform Use the Waveform Monitoring VIs to analyze the waveforms for trigger points, to
Monitoring search for peaks, and to perform limit mask testing.
Transition
Accepts an input signal of a single waveform or an array of waveforms and
Measurements
998 ni.com
Functions
measures the transition duration (rise or fall time), slew rate, undershoot, and
overshoot of a selected positive or negative transition in each waveform. Wire data
to the signal in input to determine the polymorphic instance to use or manually
select the instance.
Returns the amplitude, high state level, and low state level of a waveform or an
Amplitude
array of waveforms. Wire data to the signal in input to determine the polymorphic
and Levels
instance to use or manually select the instance.
Takes a signal in, finds the single tone with the highest amplitude or searches a
Extract Single specified frequency range, and returns the single tone frequency, amplitude, and
Tone phase. The input signal can be real or complex and single-channel or multichannel.
Information Wire data to the time signal in input to determine the polymorphic instance to use
or manually select the instance.
Extract Returns the frequency, amplitude, and phase for each signal tone whose
Multiple Tone amplitude exceeds a specified threshold. Wire data to the time signal in input to
Information determine the polymorphic instance to use or manually select the instance.
Takes a signal in and performs a full harmonic analysis, including measuring the
Harmonic fundamental frequency tone and harmonics, and returning the fundamental
Distortion frequency, all harmonic amplitude levels, and the total harmonic distortion (THD).
Analyzer Wire data to the signal in input to determine the polymorphic instance to use or
manually select the instance.
SINAD Takes a signal in and performs a full Signal in Noise and Distortion (SINAD)
Analyzer analysis, including measuring the fundamental frequency tone and returning the
fundamental frequency and SINAD level in dB. Wire data to the signal in input to
determine the polymorphic instance to use or manually select the instance.
FFT Power Computes the averaged auto power spectrum of time signal. Wire data to the time
Spectrum and signal input to determine the polymorphic instance to use or manually select the
PSD instance.
Computes the averaged FFT spectrum of time signal. This VI returns the FFT results
FFT Spectrum
as magnitude and phase. Wire data to the time signal input to determine the
(Mag-Phase)
polymorphic instance to use or manually select the instance.
Computes the averaged FFT spectrum of time signal. This VI returns the FFT results
FFT Spectrum
as real and imaginary parts. Wire data to the time signal input to determine the
(Real-Im)
polymorphic instance to use or manually select the instance.
Frequency
Response Computes the frequency response and the coherence based on the input signals.
Function Results are returned as magnitude, phase, and coherence.
(Mag-Phase)
Frequency
Response Computes the frequency response and the coherence based on the input signals.
Function Results are returned as real part, imaginary part, and coherence.
(Real-Im)
Cross
Computes the averaged cross power spectrum of the input signals. Results are
Spectrum
returned as magnitude and phase.
(Mag-Phase)
Cross
Computes the averaged cross power spectrum of the input signals. Results are
Spectrum
returned as real and imaginary parts.
(Real-Im)
1000 ni.com
Functions
Dual Channel Measures the frequency response of the input signals and the coherence based on
Spectral the current and previous input signals. This Express VI returns results such as
Measurement Magnitude, Phase, Coherence, Real, and Imaginary.
Finds the single tone with the highest amplitude or searches a specified frequency
Tone
range to find the single tone with the highest amplitude. You also can find the
Measurements
frequency and phase for a single tone.
Timing and
Performs timing and transition measurements, such as frequency, period, or duty
Transition
cycle, on a signal, usually a pulse.
Measurements
Amplitude
and Level Performs voltage measurements on a signal.
Measurements
Wire data to the signal in input to determine the polymorphic instance to use or
manually select the instance.
Note The Basic Averaged DC-RMS VI assumes that consecutive data blocks
are continuous. If they are not, the VI returns a warning.
Wire data to the signal in input to determine the polymorphic instance to use or
manually select the instance.
Inputs/Outputs
• reset —
reset resets the history of your time signal. You typically use reset to reset the exponentially
averaged measurement.
• signal in —
• averaging type —
averaging type is the type of averaging used during the measurement. Because this VI computes
one DC and one RMS value per input waveform, the input record length selects the averaging
time. If averaging type is exponential, this VI calculates the DC and RMS values using an
exponentially weighted averaging measurement starting from the previous DC and RMS values.
1002 ni.com
Functions
• window —
window is the window to be applied to the time record before DC/RMS computation. LabVIEW
ignores this input if averaging type is exponential.
Rectangular
0
(no window)
1 Hanning
2 Low side lobe
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• DC value —
• RMS value —
RMS value is the measured RMS value in volts if the signal is in volts.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurement info —
measurement info returns information about your measurement, mainly warnings for
inconsistencies in your input signal.
• uncertainty —
• Warning —
• comments —
Note The Basic Averaged DC-RMS VI assumes that consecutive data blocks
are continuous. If they are not, the VI returns a warning.
Note
Inputs/Outputs
• reset —
1004 ni.com
Functions
reset resets the history of your time signal. You typically use reset to reset the exponentially
averaged measurement.
• signals in —
• averaging type —
averaging type is the type of averaging used during the measurement. Because this VI computes
one DC and one RMS value per input waveform, the input record length selects the averaging
time. If averaging type is exponential, this VI calculates the DC and RMS values using an
exponentially weighted averaging measurement starting from the previous DC and RMS values.
• window —
window is the window to be applied to the time record before DC/RMS computation. LabVIEW
ignores this input if averaging type is exponential.
Rectangular
0
(no window)
1 Hanning
2 Low side lobe
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• DC values —
• RMS values —
• error out —
error out contains error information. This output provides standard error out functionality.
• measurements info —
measurements info is an array that returns information about your measurement, mainly
warnings for inconsistencies in your input signal.
• uncertainty —
• Warning —
• comments —
Note The Basic Averaged DC-RMS VI assumes that consecutive data blocks
are continuous. If they are not, the VI returns a warning.
Averaged DC-RMS
Calculates the DC and RMS values of an input waveform or array of waveforms. This VI
is similar to the Basic Averaged DC-RMS VI, but this VI gives more precise control over
the individual DC and RMS calculations.
Wire data to the signal in input to determine the polymorphic instance to use or
manually select the instance.
1006 ni.com
Functions
Note The Averaged DC-RMS VI assumes that consecutive data blocks are
continuous. If they are not, the VI returns a warning in measurement info,
unless Ignore input start time is enabled.
Examples
Wire data to the signal in input to determine the polymorphic instance to use or
manually select the instance.
Inputs/Outputs
• reset —
reset resets the history of your time signal. You typically use reset to reset the exponentially
averaged measurement.
• signal in —
• averaging type —
averaging type is the type of averaging used during the measurement. If averaging type is
exponential, this VI calculates the DC and RMS values using an exponentially weighted averaging
measurement starting from the previous DC and RMS values.
• averaging time —
averaging time defines dt of DC value waveform and RMS value waveform in seconds. The
default is –1.00, which corresponds to average time = input block duration.
For linear averaging, each output data point results from performing the averaging process for
the time period specified by averaging time. For exponential averaging, each output data point
results from exponential integration performed for the time period specified by averaging time
using exp. time constant.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging control —
averaging control contains the advanced parameters used to completely control the DC or RMS
measurement.
• window for DC —
window for DC is the window to be applied to the time record before DC computation.
LabVIEW ignores this input if averaging type is exponential.
1008 ni.com
Functions
Rectangular
0
(no window)
1 Hanning
2 Low side lobe
• output function —
0 DC only
1 RMS only
2 DC and RMS
window for RMS is the window to be applied to the time record before RMS computation.
LabVIEW ignores this input if averaging type is exponential.
Rectangular
0
(no window)
1 Hanning
2 Low side lobe
exp. time constant specifies the time constant (RC) of your DC or RMS measurement.
exp. time constant equals –1.00, which corresponds to a value of input block duration/2.
Set Ignore input start time to TRUE when you do not want the VI to check for continuity
using t0 values.
• data ready —
data ready indicates the DC value waveform and RMS value waveform contain data. A value of
FALSE means the waveforms do not contain data.
• DC value waveform —
DC value waveform indicates DC values of signal in computed over averaging time seconds and
time stamped continuously from the last reset.
RMS value waveform indicates RMS values of signal in computed over averaging time seconds
and time stamped continuously from the last reset.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurement info —
measurement info returns information about your measurement, mainly warnings for
inconsistencies in your input signal.
• uncertainty —
• Warning —
• comments —
Note The Averaged DC-RMS VI assumes that consecutive data blocks are
continuous. If they are not, the VI returns a warning in measurement info,
1010 ni.com
Functions
Examples
Note
Inputs/Outputs
• reset —
reset resets the history of your time signal. You typically use reset to reset the exponentially
averaged measurement.
• signals in —
• averaging type —
averaging type is the type of averaging used during the measurement. If averaging type is
exponential, this VI calculates the DC and RMS values using an exponentially weighted averaging
measurement starting from the previous DC and RMS values.
• averaging time —
averaging time defines dt of DC value waveform and RMS value waveform in seconds. The
default is –1.00, which corresponds to average time = input block duration.
For linear averaging, each output data point results from performing the averaging process for
the time period specified by averaging time. For exponential averaging, each output data point
results from exponential integration performed for the time period specified by averaging time
using exp. time constant.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging control —
averaging control contains the advanced parameters used to completely control the DC or RMS
measurement.
• window for DC —
window for DC is the window to be applied to the time record before DC computation.
LabVIEW ignores this input if averaging type is exponential.
Rectangular
0
(no window)
1 Hanning
2 Low side lobe
1012 ni.com
Functions
• output function —
0 DC only
1 RMS only
2 DC and RMS
window for RMS is the window to be applied to the time record before RMS computation.
LabVIEW ignores this input if averaging type is exponential.
Rectangular
0
(no window)
1 Hanning
2 Low side lobe
exp. time constant specifies the time constant (RC) of your DC or RMS measurement.
exp. time constant equals –1.00, which corresponds to a value of input block duration/2.
Set Ignore input start time to TRUE when you do not want the VI to check for continuity
using t0 values.
• data ready —
data ready indicates the DC value waveform and RMS value waveform contain data. A value of
FALSE means the waveforms do not contain data.
• DC value waveforms —
• error out —
error out contains error information. This output provides standard error out functionality.
• measurements info —
measurements info is an array that returns information about your measurement, mainly
warnings for inconsistencies in your input signal.
• uncertainty —
• Warning —
• comments —
Note The Averaged DC-RMS VI assumes that consecutive data blocks are
continuous. If they are not, the VI returns a warning in measurement info,
unless Ignore input start time is enabled.
Examples
1014 ni.com
Functions
Note The terminology and measurement definitions for this VI comply with
IEEE Standard 181-2003, IEEE Standard on Transitions, Pulses,
and Related Waveforms.
Examples
Note The terminology and measurement definitions for this VI comply with
Inputs/Outputs
• cycle number (1) —
cycle number specifies the cycle, or period, of the periodic signal on which to perform the
measurement.
• signal in —
signal in is the waveform to measure. Each waveform is required to contain at least cycle
number complete cycles, where a cycle is defined as the interval between two consecutive rising
mid ref level crossings.
• reference levels —
reference levels specifies the high, middle, and low reference levels of a waveform.
LabVIEW uses the reference levels to define the measurement interval of one complete cycle.
The distance between the mid ref level and the high ref level must equal the distance between
the low ref level and the mid ref level. If the two distances are not equal, LabVIEW adjusts either
the high ref level or the low ref level to match the smaller of the two distances. For example, if
you specify a high ref level of 90%, a mid ref level of 50%, and a low ref level of 20%, LabVIEW
uses 80% instead of 90% for the high ref level.
high ref level specifies the high reference level of the waveform in percent (default) or
absolute units.
After the signal crosses the mid ref level in the rising direction, it must cross the high ref
level before the next falling mid ref level crossing can be counted.
1016 ni.com
Functions
mid ref level specifies the middle reference level in percent (default) or absolute units.
The interval between consecutive rising mid ref level crossings defines one cycle, or period,
of the waveform. At least one high/low reference level crossing must separate each mid ref
level crossing.
low ref level specifies the low reference level of the waveform in percent (default) or
absolute units.
After the signal crosses the mid ref level in the falling direction, it must cross the low ref
level before the next rising mid ref level crossing can be counted.
• ref units —
ref units specifies whether the high ref level, mid ref level, and low ref level inputs are
interpreted as a percentage (default) of the full range of the waveform or as absolute levels.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
percent level settings specifies the method LabVIEW uses to determine the high and low state
levels of a waveform.
If you select percent ref units, percent level settings determines the reference levels. Otherwise,
LabVIEW ignores this input.
• method —
method specifies how LabVIEW computes the high and low state levels of the waveform.
Histogram—Returns the levels of the histogram bins with the maximum number of hits in
0
the upper and lower regions of the waveform. The upper and lower regions of the
waveform include the upper and lower 40%, respectively, of the peak-to-peak range of the
waveform.
1 Peak—Searches the entire waveform for its maximum and minimum levels.
Auto select (default)—Determines whether the histogram bins that correspond to the high
and low state levels each have over 5% of the total hits. If so, LabVIEW returns those
2 results. Otherwise, LabVIEW uses the peak method. This ensures a reasonable answer for
either a square wave (ignoring the overshoot and undershoot) or a triangle wave (where a
histogram fails).
• histogram size —
histogram size specifies the number of bins in the histogram LabVIEW uses to determine
the high and low state levels of the waveform.
• histogram method —
histogram method specifies how LabVIEW computes the high and low state levels of the
waveform. Currently, mode is the only available histogram method.
0 mode
• reserved —
• cycle average —
cycle average is the mean level of one complete period of a periodic input waveform.
The cycle average of a perfect sine wave is zero, while the average level of the entire waveform
can be nonzero due to partial periods at the boundaries of the waveform.
• cycle RMS —
1018 ni.com
Functions
cycle RMS is the root mean square value of one complete period of a periodic input waveform.
where i indicates the waveform samples that fall in the single period specified by cycle number
and numPoints is given by the following equation. numPoints = int(period/dt + .5) where
dt is the time between two points and int( ) is a function that returns the integer portion of a
floating-point number.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurement info —
measurement info returns the measurement cycle interval endpoints and the absolute
reference levels used to define the measurement cycle.
• start time —
start time specifies the time of the rising mid ref level crossing that defines the start of the
measurement interval.
• end time —
end time specifies the time of the rising mid ref level crossing that defines the end of the
measurement interval.
• ref levels —
ref levels returns the three user-defined reference levels of the waveform in absolute units.
LabVIEW uses the reference levels to define the interval of one cycle measurement.
• ref units —
Examples
Note The terminology and measurement definitions for this VI comply with
IEEE Standard 181-2003, IEEE Standard on Transitions, Pulses,
and Related Waveforms.
1020 ni.com
Functions
Inputs/Outputs
• cycle number (1) —
cycle number specifies the cycle, or period, of the periodic signal on which to perform the
measurement.
• signal(s) in —
• reference levels —
reference levels specifies the high, middle, and low reference levels of a waveform.
LabVIEW uses the reference levels to define the measurement interval of one complete cycle.
The distance between the mid ref level and the high ref level must equal the distance between
the low ref level and the mid ref level. If the two distances are not equal, LabVIEW adjusts either
the high ref level or the low ref level to match the smaller of the two distances. For example, if
you specify a high ref level of 90%, a mid ref level of 50%, and a low ref level of 20%, LabVIEW
uses 80% instead of 90% for the high ref level.
high ref level specifies the high reference level of the waveform in percent (default) or
absolute units.
After the signal crosses the mid ref level in the rising direction, it must cross the high ref
level before the next falling mid ref level crossing can be counted.
mid ref level specifies the middle reference level in percent (default) or absolute units.
The interval between consecutive rising mid ref level crossings defines one cycle, or period,
of the waveform. At least one high/low reference level crossing must separate each mid ref
level crossing.
low ref level specifies the low reference level of the waveform in percent (default) or
absolute units.
After the signal crosses the mid ref level in the falling direction, it must cross the low ref
level before the next rising mid ref level crossing can be counted.
• ref units —
ref units specifies whether the high ref level, mid ref level, and low ref level inputs are
interpreted as a percentage (default) of the full range of the waveform or as absolute levels.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
percent level settings specifies the method LabVIEW uses to determine the high and low state
levels of a waveform.
If you select percent ref units, percent level settings determines the reference levels. Otherwise,
LabVIEW ignores this input.
• method —
method specifies how LabVIEW computes the high and low state levels of the waveform.
Histogram—Returns the levels of the histogram bins with the maximum number of hits in
the upper and lower regions of the waveform. The upper and lower regions of the
0
waveform include the upper and lower 40%, respectively, of the peak-to-peak range of the
waveform.
1 Peak—Searches the entire waveform for its maximum and minimum levels.
2 Auto select (default)—Determines whether the histogram bins that correspond to the high
1022 ni.com
Functions
and low state levels each have over 5% of the total hits. If so, LabVIEW returns those
results. Otherwise, LabVIEW uses the peak method. This ensures a reasonable answer for
either a square wave (ignoring the overshoot and undershoot) or a triangle wave (where a
histogram fails).
• histogram size —
histogram size specifies the number of bins in the histogram LabVIEW uses to determine
the high and low state levels of the waveform.
• histogram method —
histogram method specifies how LabVIEW computes the high and low state levels of the
waveform. Currently, mode is the only available histogram method.
0 mode
• reserved —
• cycle average —
cycle average is an array containing the cycle average of each waveform in signal(s) in. cycle
average is the mean level of one complete period of a periodic input waveform.
The cycle average of a perfect sine wave is zero, while the average level of the entire waveform
can be nonzero due to partial periods at the boundaries of the waveform.
• cycle RMS —
cycle RMS is an array containing the cycle RMS value for each waveform in signal(s) in. cycle
RMS is the root mean square value of one complete period of a periodic input waveform.
where i indicates the waveform samples that fall in the single period specified by cycle number
and numPoints is given by the following equation. numPoints = int(period/dt + .5) where
dt is the time between two points and int( ) is a function that returns the integer portion of a
floating-point number.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurement info —
measurement info is an array of clusters containing measurement information for each input
waveform.
• start time —
start time specifies the time of the rising mid ref level crossing that defines the start of the
measurement interval.
• end time —
end time specifies the time of the rising mid ref level crossing that defines the end of the
measurement interval.
• ref levels —
ref levels returns the three user-defined reference levels of the waveform in absolute units.
LabVIEW uses the reference levels to define the interval of one cycle measurement.
1024 ni.com
Functions
• ref units —
Examples
Waveform Monitoring
Use the Waveform Monitoring VIs to analyze the waveforms for trigger points, to search
for peaks, and to perform limit mask testing.
Note The VIs on this palette return an error if an input waveform has a dt
less than or equal to zero.
Note The Waveform Monitoring VIs presently do not accept waveforms that
contain complex data.
Palette
Description
Object
Performs limit testing on waveform or cluster input data. The VI compares signal in
with upper limit and lower limit and ignores any limit input that is not wired. You
Limit Testing can wire output values to a graph to view the limits, signal, and failures. Wire data to
the signal in input to determine the polymorphic instance to use or manually select
the instance.
Waveform Finds the locations, amplitudes, and second derivatives of peaks and valleys in
Peak Signal In. Wire data to the Signal In input to determine the polymorphic instance to
Detection use or manually select the instance.
Finds the first level-crossing location in a waveform. You can retrieve the trigger
Basic Level
location as an index or as a time. The trigger conditions are specified in terms of
Trigger
threshold level, slope, and hysteresis. Wire data to the signal in input to determine
Detection
the polymorphic instance to use or manually select the instance.
Mask and
Performs limit testing on Signals.
Limit Testing
Trigger and
Uses triggering to extract a segment out of a signal. The trigger conditions can be
Gate
1026 ni.com
Functions
Palette
Description
Object
based on a start or stop trigger threshold or can be static. When a trigger condition is
static, the trigger occurs immediately and this Express VI returns a predefined
number of samples.
Limit Testing
Performs limit testing on waveform or cluster input data. The VI compares signal in
with upper limit and lower limit and ignores any limit input that is not wired. You can
wire output values to a graph to view the limits, signal, and failures. Wire data to the
signal in input to determine the polymorphic instance to use or manually select the
instance.
Examples
signal in input to determine the polymorphic instance to use or manually select the
instance.
Inputs/Outputs
• output t0 —
output t0 determines the source of start time, t0, of the waveforms for output values.
t0 = limit x0 (default)—Starts with upper limit start time if you define the upper and lower
0
limits.
1 t0 = signal in t0—Starts with signal in start time.
• signal in —
signal in specifies the waveform to test to make sure it lies in the envelope bounded by the
upper and lower limits.
• upper limit —
upper limit specifies the upper boundary of the envelope. The default is Inf.
• x0 —
• dx —
• Y—
• lower limit —
1028 ni.com
Functions
lower limit specifies the lower boundary of the envelope. The default is –Inf.
• x0 —
• dx —
• Y—
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
limit test config specifies the limit-test pass region and whether the limit values are included.
• pass region —
pass region specifies whether you want the test to pass where the signal points fall inside
the limits or outside the limits.
• include UL —
include UL specifies whether you want the test to pass where the signal points fall on upper
limit. The default is TRUE.
• include LL —
include LL specifies whether you want the test to pass where the signal points fall on lower
• failures —
• x values —
• y values —
• test passed? —
test passed? indicates the result of limit mask testing. If TRUE, the signal is less than or equal to
upper limit and greater than or equal to lower limit and the limit testing passed. If FALSE, the
limit testing did not pass.
• test results —
test results returns the results of the limit testing at each data point. The VI returns TRUE if the
data point is less than or equal to upper limit and greater than or equal to lower limit.
• output values —
output values contains the upper limit and lower limit, the signal, and the failures. You can wire
this output to a graph to view the values.
The first element in the array is the input signal. The x0 and dx values in this waveform are
changed so that it can be easily plotted with the upper and lower limits. The second element in
the array is the failure waveform. The failure waveform contains NaN at points where the limit
test passes and contains the input signal where the limit test fails. The third and fourth elements
of the array are the upper and lower boundaries, respectively.
• error out —
error out contains error information. This output provides standard error out functionality.
• clearance —
1030 ni.com
Functions
clearance returns distance measures between signal in and upper limit and lower limit.
• clearance UL —
clearance UL is the minimum distance between signal in and upper limit (UL). If the signal
points fail at any point along upper limit, clearance UL is set to zero. When clearance UL
returns Inf, upper limit was not defined, so the signal was not tested against it. You can
interpret Inf as passing upper limit with maximum clearance.
• clearance LL —
clearance LL is the minimum distance between signal in and lower limit (LL). If the signal
points fail at any point along lower limit, clearance LL is set to zero. When clearance LL
returns Inf, lower limit was not defined, so the signal was not tested against it. You can
interpret Inf as passing lower limit with maximum clearance.
• min clearance —
min clearance is the minimum, overall distance between signal in and the limits. min
clearance is the minimum of clearance UL and clearance LL. If the signal fails the limit test
at any point, min clearance is set to zero. When min clearance returns Inf, neither upper
limit nor lower limit were defined, so the signal was not tested against them. You can
interpret Inf as passing both upper limit and lower limit with maximum clearance.
Examples
wire output values to a graph to view the limits, signal, and failures. Wire data to the
signal in input to determine the polymorphic instance to use or manually select the
instance.
Inputs/Outputs
• signal in —
signal in contains the signal to test to make sure it lies in the envelope bounded by the upper
and lower limits.
• f0 —
• df —
• spectrum —
• upper limit —
upper limit specifies the upper boundary of the envelope. The default is Inf.
• x0 —
• dx —
1032 ni.com
Functions
• Y—
• lower limit —
lower limit specifies the lower boundary of the envelope. The default is –Inf.
• x0 —
• dx —
• Y—
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
limit test config specifies the limit-test pass region and whether the limit values are included.
• pass region —
pass region specifies whether you want the test to pass where the signal points fall inside
the limits or outside the limits.
• include UL —
include UL specifies whether you want the test to pass where the signal points fall on upper
limit. The default is TRUE.
• include LL —
include LL specifies whether you want the test to pass where the signal points fall on lower
limit. The default is TRUE.
• failures —
• x values —
• y values —
• test passed? —
test passed? indicates the result of limit mask testing. If TRUE, the signal is less than or equal to
upper limit and greater than or equal to lower limit and the limit testing passed. If FALSE, the
limit testing did not pass.
• test results —
test results returns the results of the limit testing at each data point. The VI returns TRUE if the
data point is less than or equal to upper limit and greater than or equal to lower limit.
• output values —
output values contains the upper limit and lower limit, the signal, and the failures. You can wire
this output to a graph to view the values.
The first element in the array is the input signal. The x0 and dx values in this waveform are
changed so that it can be easily plotted with the upper and lower limits. The second element in
the array is the failure waveform. The failure waveform contains NaN at points where the limit
test passes and contains the input signal where the limit test fails. The third and fourth elements
1034 ni.com
Functions
• x0 —
• dx —
• Y—
• error out —
error out contains error information. This output provides standard error out functionality.
• clearance —
clearance returns distance measures between signal in and upper limit and lower limit.
• clearance UL —
clearance UL is the minimum distance between signal in and upper limit (UL). If the signal
points fail at any point along upper limit, clearance UL is set to zero. When clearance UL
returns Inf, upper limit was not defined, so the signal was not tested against it. You can
interpret Inf as passing upper limit with maximum clearance.
• clearance LL —
clearance LL is the minimum distance between signal in and lower limit (LL). If the signal
points fail at any point along lower limit, clearance LL is set to zero. When clearance LL
returns Inf, lower limit was not defined, so the signal was not tested against it. You can
interpret Inf as passing lower limit with maximum clearance.
• min clearance —
min clearance is the minimum, overall distance between signal in and the limits. min
clearance is the minimum of clearance UL and clearance LL. If the signal fails the limit test
at any point, min clearance is set to zero. When min clearance returns Inf, neither upper
limit nor lower limit were defined, so the signal was not tested against them. You can
interpret Inf as passing both upper limit and lower limit with maximum clearance.
Examples
Limit Specification
Creates continuous or segmented masks in the time domain or in the frequency
domain. You can use different instances of this VI to create multiple limits. Wire data to
the Specification Cluster input to determine the polymorphic instance to use or
manually select the instance.
You specify the y-axis values in terms of numeric values and use this VI with the Limit
Testing VI to do limit testing. Wire the Limit Specification VI and the Limit Testing VI in
either a For Loop or a While Loop. Set Reset to FALSE, unless you want to change the
limit. The following illustration shows the Limit Specification VI and the Limit Testing
VI wired together in a While Loop.
1036 ni.com
Functions
Inputs/Outputs
• Reset —
Reset indicates if the VI computes Limit. If TRUE, the VI computes Limit using the values in the
Specification Cluster. If FALSE (default), the VI does not compute Limit. The VI always computes
Limit the first time LabVIEW runs this VI.
• Specification Cluster —
Specification Cluster is a cluster that contains the x-axis and y-axis values at which the limit is
specified.
• X—
• Y—
To specify y-axis values using formulas, use the Limit Specification By Formula VI.
• dx —
dx is the x-axis interval between points in the input data to compare against the limits. The VI
uses this value to interpolate the y-axis data for the limit.
• x0 —
x0 is the starting x-axis value of the input data to compare against the limits. The limit is
undefined for values of x that are smaller than the first element in the input array X.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Limit —
Limit contains a continuous mask, as defined by Specification Cluster, dx, and x0.
• x0 —
• dx —
• Y—
• error out —
error out contains error information. This output provides standard error out functionality.
1038 ni.com
Functions
You specify the y-axis values in terms of numeric values and use this VI with the Limit
Testing VI to do limit testing. Wire the Limit Specification VI and the Limit Testing VI in
either a For Loop or a While Loop. Set Reset to FALSE, unless you want to change the
limit. The following illustration shows the Limit Specification VI and the Limit Testing
VI wired together in a While Loop.
Inputs/Outputs
• Reset —
Reset indicates if the VI computes Limit. If TRUE, the VI computes Limit using the values in the
Specification Cluster. If FALSE (default), the VI does not compute Limit. The VI always computes
Limit the first time LabVIEW runs this VI.
• Specification Cluster —
Specification Cluster is an array of clusters that contains the x-axis and y-axis values at which
the limit is specified. The ith element in the array defines the ith segment in the segmented
mask.
• X—
• Y—
To specify y-axis values using formulas, use the Limit Specification By Formula VI.
• dx —
dx is the x-axis interval between points in the input data to compare against the limits. The VI
uses this value to interpolate the y-axis data for the limit.
• x0 —
x0 is the starting x-axis value of the input data to compare against the limits. The limit is
undefined for values of x that are smaller than the first element in the input array X.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Limit —
Limit contains a segmented mask, as defined by Specification Cluster, dx, and x0.
• x0 —
• dx —
• Y—
• error out —
1040 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
You specify the y-axis values in terms of numeric values and use this VI with the Limit
Testing VI to do limit testing. Wire the Limit Specification VI and the Limit Testing VI in
either a For Loop or a While Loop. Set Reset to FALSE, unless you want to change the
limit. The following illustration shows the Limit Specification VI and the Limit Testing
VI wired together in a While Loop.
You specify the y-axis values in terms of formulas and use this VI with the Limit Testing
VI to do limit testing. Wire the Limit Specification by Formula VI and the Limit Testing VI
in either a For Loop or a While Loop. Set Reset to FALSE, unless you want to change the
limit. The following illustration shows the Limit Specification by Formula VI and the
Limit Testing VI wired together in a While Loop.
Inputs/Outputs
• Reset —
Reset indicates if the VI computes Limit. If TRUE, the VI computes Limit using the values in the
Specification Cluster. If FALSE (default), the VI does not compute Limit. The VI always computes
Limit the first time LabVIEW runs this VI.
• Specification Cluster —
Specification Cluster is a cluster that contains the x-axis and y-axis values at which the limit is
specified.
• X—
• Y—
1042 ni.com
Functions
• dx —
dx is the x-axis interval between points in the input data to compare against the limits. The VI
uses this value to interpolate the y-axis data for the limit.
• x0 —
x0 is the starting x-axis value of the input data to compare against the limits. The limit is
undefined for values of x that are smaller than the first element in the input array X.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Limit —
Limit contains a continuous mask, as defined by Specification Cluster, dx, and x0.
• x0 —
• dx —
• Y—
• error out —
error out contains error information. This output provides standard error out functionality.
You specify the y-axis values in terms of formulas and use this VI with the Limit Testing
VI to do limit testing. Wire the Limit Specification by Formula VI and the Limit Testing VI
in either a For Loop or a While Loop. Set Reset to FALSE, unless you want to change the
limit. The following illustration shows the Limit Specification by Formula VI and the
Limit Testing VI wired together in a While Loop.
Inputs/Outputs
• Reset —
Reset indicates if the VI computes Limit. If TRUE, the VI computes Limit using the values in the
Specification Cluster. If FALSE (default), the VI does not compute Limit. The VI always computes
Limit the first time LabVIEW runs this VI.
• Specification Cluster —
Specification Cluster is an array of clusters that contains the x-axis and y-axis values at which
the limit is specified. The ith element in the array defines the ith segment in the segmented
mask.
1044 ni.com
Functions
• X—
• Y—
• dx —
dx is the x-axis interval between points in the input data to compare against the limits. The VI
uses this value to interpolate the y-axis data for the limit.
• x0 —
x0 is the starting x-axis value of the input data to compare against the limits. The limit is
undefined for values of x that are smaller than the first element in the input array X.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Limit —
Limit contains a segmented mask, as defined by Specification Cluster, dx, and x0.
• x0 —
• dx —
• Y—
• error out —
error out contains error information. This output provides standard error out functionality.
You specify the y-axis values in terms of formulas and use this VI with the Limit Testing
VI to do limit testing. Wire the Limit Specification by Formula VI and the Limit Testing VI
in either a For Loop or a While Loop. Set Reset to FALSE, unless you want to change the
limit. The following illustration shows the Limit Specification by Formula VI and the
Limit Testing VI wired together in a While Loop.
Refer to the support document at ni.com for more information about peak detection
using LabVIEW.
1046 ni.com
Functions
In. Wire data to the Signal In input to determine the polymorphic instance to use or
manually select the instance.
Inputs/Outputs
• peaks/valleys —
0 Peaks
1 Valleys
• Signal In —
• threshold —
threshold instructs the VI to ignore peaks and valleys that are too small. The VI ignores peaks if
the fitted amplitude is less than threshold. The VI ignores valleys if the fitted trough is greater
than threshold.
• width —
width specifies the number of consecutive data points to use in the quadratic least squares fit.
The value should be no more than about 1/2 of the half-width of the peak/valley and can be
much smaller (but > 2) for noise-free data. Large widths can reduce the apparent amplitude of
peaks and shift the apparent location. For noisy data, this modification is not important because
the noise obscures the actual peak.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• initialize (T) —
initialize, when TRUE (default), causes the VI to process the first block of data. The VI requires
some internal setup that must be done at the start for proper operation.
end of data (T), when TRUE (default), causes the VI to process the last block of data. The VI
cleans up internal data after the last block has been processed.
• # found —
# found is the number of peaks/valleys found in the current block of data. # found is the size of
the arrays Locations, Amplitudes, and 2nd Derivatives.
• Locations —
Locations contains the index locations of all peaks or valleys detected in the current block of
data.
Because the peak detection algorithm uses a quadratic fit to find the peaks, it actually
interpolates between the data points. Therefore, the indexes are not integers. In other words,
the peaks found are not necessarily actual points in the input data but may be at fractions of an
index and at amplitudes not found in the input array.
To view the locations in terms of time, use the following equation. Time Locations[i] = t0 +
dt*Locations[i]
• Amplitudes —
Amplitudes contains the amplitudes of peaks or valleys found in the current block of data.
Note The Locations and Amplitudes might deviate from actual peaks or valleys for
noisy signals with large dynamic ranges.
• 2nd Derivatives —
2nd Derivatives gives measurements of the second derivative of the amplitude at each of the
peaks or valleys found in the current block of data.
1048 ni.com
Functions
2nd Derivatives gives an approximate measure of the sharpness of each peak or valley. If you are
detecting peaks, these values are all negative. If you are detecting valleys, the values are all
positive.
Note It is assumed that dt, the time difference between samples, is equal to 1.
• error out —
error out contains error information. This output provides standard error out functionality.
Refer to the support document at ni.com for more information about peak detection
using LabVIEW.
Inputs/Outputs
• peaks/valleys —
0 Peaks
1 Valleys
• Signals In —
• threshold —
threshold instructs the VI to ignore peaks and valleys that are too small. The VI ignores peaks if
the fitted amplitude is less than threshold. The VI ignores valleys if the fitted trough is greater
than threshold.
• width —
width specifies the number of consecutive data points to use in the quadratic least squares fit.
The value should be no more than about 1/2 of the half-width of the peak/valley and can be
much smaller (but > 2) for noise-free data. Large widths can reduce the apparent amplitude of
peaks and shift the apparent location. For noisy data, this modification is not important because
the noise obscures the actual peak.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• initialize (T) —
initialize, when TRUE (default), causes the VI to process the first block of data. The VI requires
some internal setup that must be done at the start for proper operation.
end of data (T), when TRUE (default), causes the VI to process the last block of data. The VI
cleans up internal data after the last block has been processed.
• # found —
# found is the number of peaks/valleys found in the current block of data. # found is the size of
the arrays Locations, Amplitudes, and 2nd Derivatives.
• Locations —
Locations contains the index locations of all peaks or valleys detected in the current block of
data for each waveform.
• Locations —
1050 ni.com
Functions
Locations contains the index locations of all peaks or valleys detected in the current block
of data.
Because the peak detection algorithm uses a quadratic fit to find the peaks, it actually
interpolates between the data points. Therefore, the indexes are not integers. In other
words, the peaks found are not necessarily actual points in the input data but may be at
fractions of an index and at amplitudes not found in the input array.
To view the locations in terms of time, use the following equation. Time Locations[i] = t0 +
dt*Locations[i]
• Amplitudes —
Amplitudes contains the amplitudes of peaks or valleys found in the current block of data for
each waveform.
• Amplitudes —
Amplitudes contains the amplitudes of peaks or valleys found in the current block of data.
Note The Locations and Amplitudes might deviate from actual peaks or valleys
for noisy signals with large dynamic ranges.
• 2nd Derivatives —
2nd Derivatives gives measurements of the second derivative of the amplitude at each of the
peaks or valleys found in the current block of data for each waveform.
• 2nd Derivatives —
2nd Derivatives gives measurements of the second derivative of the amplitude at each of
the peaks or valleys found in the current block of data.
2nd Derivatives gives an approximate measure of the sharpness of each peak or valley. If
you are detecting peaks, these values are all negative. If you are detecting valleys, the
values are all positive.
Note It is assumed that dt, the time difference between samples, is equal to 1.
• error out —
error out contains error information. This output provides standard error out functionality.
Refer to the support document at ni.com for more information about peak detection
using LabVIEW.
This VI can perform single-channel measurements in both one-shot mode (single call)
and continuous mode (multiple calls with history). It also can perform multichannel
measurements in both one-shot mode and continuous mode. If you want to make
multiple-channel measurements in continuous mode, you either must use the
multichannel version of this VI or use one instance of this VI per channel. This VI
detects only the first trigger for each channel.
1052 ni.com
Functions
The single-channel version of this VI maintains internal state information for a single
channel only. Calling this VI to process another channel without clearing the history,
using reset or restart averaging, results in an unexpected behavior of this VI because
the internal state information is passed from one channel to another.
LabVIEW uses the hysteresis to prevent noise from causing a false trigger. For a rising
edge slope, the signal must pass below level – hysteresis before a trigger level
crossing is detected. For a falling edge slope, the signal must pass above level +
hysteresis before a trigger level crossing is detected. The following graph shows how
LabVIEW uses the hysteresis.
In the previous graph, the white line is the input signal. If the level is 0.5, and the
hysteresis is 0.0, LabVIEW returns the green line that represents the false trigger
caused by the noise. If the hysteresis is 0.15, LabVIEW returns the red line at
approximately 0.125s that represents the valid trigger.
Examples
Inputs/Outputs
• reset —
reset specifies whether the history, or internal state, of the VI has to be reset. The default is
FALSE. The internal state contains the final state of the input signal. The VI uses this as the initial
state the next time LabVIEW calls the VI.
• signal in —
• level —
level specifies the threshold value signal in must cross before a trigger is detected. The default is
0.
• hysteresis —
hysteresis specifies the amount above or below level through which signal in must pass before
a trigger level crossing is detected. The default is 0.
1054 ni.com
Functions
Trigger hysteresis is used to prevent noise from causing a false trigger. For a rising edge trigger
slope, the signal must pass below level – hysteresis before a trigger level crossing is detected.
For a falling edge trigger slope, the signal must pass above level + hysteresis before a trigger
level crossing is detected.
• location mode —
location mode specifies whether you want to retrieve the trigger location as an index into the Y-
array of the waveform or as a point in time in seconds.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• trigger slope —
trigger slope specifies whether a trigger is detected as signal in crosses level on a rising edge or
a falling edge
• trigger location —
trigger location contains the index or time, depending on the location mode setting, of the
detected trigger. If the location mode is in Time mode and you do not want the trigger location
value to appear in seconds on the front panel, wire the trigger location to a time stamp.
• trigger detected? —
trigger detected? indicates whether the VI detects a valid trigger. If trigger detected? is TRUE,
the VI detects a valid trigger.
• error out —
error out contains error information. This output provides standard error out functionality.
This VI can perform single-channel measurements in both one-shot mode (single call)
and continuous mode (multiple calls with history). It also can perform multichannel
measurements in both one-shot mode and continuous mode. If you want to make
multiple-channel measurements in continuous mode, you either must use the
multichannel version of this VI or use one instance of this VI per channel. This VI
detects only the first trigger for each channel.
The single-channel version of this VI maintains internal state information for a single
channel only. Calling this VI to process another channel without clearing the history,
using reset or restart averaging, results in an unexpected behavior of this VI because
the internal state information is passed from one channel to another.
LabVIEW uses the hysteresis to prevent noise from causing a false trigger. For a rising
edge slope, the signal must pass below level – hysteresis before a trigger level
crossing is detected. For a falling edge slope, the signal must pass above level +
hysteresis before a trigger level crossing is detected. The following graph shows how
LabVIEW uses the hysteresis.
In the previous graph, the white line is the input signal. If the level is 0.5, and the
hysteresis is 0.0, LabVIEW returns the green line that represents the false trigger
1056 ni.com
Functions
caused by the noise. If the hysteresis is 0.15, LabVIEW returns the red line at
approximately 0.125s that represents the valid trigger.
Examples
Inputs/Outputs
• reset —
reset specifies whether the history, or internal state, of the VI has to be reset. The default is
FALSE. The internal state contains the final state of the input signal. The VI uses this as the initial
state the next time LabVIEW calls the VI.
• signal in —
• level —
level specifies the threshold value that each signal contained in signal in must cross before a
trigger is detected. The default is 0.
• hysteresis —
hysteresis specifies the amount above or below level through which each signal contained in
signal in must pass before a trigger level crossing is detected. The default is 0.
Trigger hysteresis is used to prevent noise from causing a false trigger. For a rising edge slope,
the signal must pass below level – hysteresis before a trigger level crossing is detected. For a
falling edge slope, the signal must pass above level + hysteresis before a trigger level crossing is
detected.
• location mode —
location mode specifies whether you want to retrieve the trigger location as an index into the Y-
array of the waveform or as a point in time in seconds.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• trigger slope —
trigger slope specifies whether a trigger is detected on a rising edge or a falling edge as each
signal contained in signal in crosses level.
• trigger locations —
1058 ni.com
Functions
trigger locations contain the index or time value, depending on the location mode setting, of
the detected trigger for each waveform.
• trigger detected? —
trigger detected? indicates whether the VI detects a valid trigger for each signal.
• error out —
error out contains error information. This output provides standard error out functionality.
This VI can perform single-channel measurements in both one-shot mode (single call)
and continuous mode (multiple calls with history). It also can perform multichannel
measurements in both one-shot mode and continuous mode. If you want to make
multiple-channel measurements in continuous mode, you either must use the
multichannel version of this VI or use one instance of this VI per channel. This VI
detects only the first trigger for each channel.
The single-channel version of this VI maintains internal state information for a single
channel only. Calling this VI to process another channel without clearing the history,
using reset or restart averaging, results in an unexpected behavior of this VI because
the internal state information is passed from one channel to another.
LabVIEW uses the hysteresis to prevent noise from causing a false trigger. For a rising
edge slope, the signal must pass below level – hysteresis before a trigger level
crossing is detected. For a falling edge slope, the signal must pass above level +
hysteresis before a trigger level crossing is detected. The following graph shows how
LabVIEW uses the hysteresis.
In the previous graph, the white line is the input signal. If the level is 0.5, and the
hysteresis is 0.0, LabVIEW returns the green line that represents the false trigger
caused by the noise. If the hysteresis is 0.15, LabVIEW returns the red line at
approximately 0.125s that represents the valid trigger.
Examples
Option Description
Contains the following options:
Upper
Limit • Upper constant—
1060 ni.com
Functions
Option Description
Compares Signals to the value in Upper limit constant. This option is available only
when you place a checkmark in the Upper Limit checkbox.
Specifies the value of the Upper constant. The default is 0. This option is
available only when you place a checkmark in the Upper Limit checkbox and
select the Upper constant option.
• Upper mask—
Compares Signals to the upper limit of a signal from a file or a signal you define. This
option is available only when you place a checkmark in the Upper Limit checkbox.
◦ Define—
Displays the Define Signal dialog box, which you use to set the values for the
signal you want to use for the limit test. This button is available only when you
select Upper Limit and Upper mask or Lower Limit and Lower mask.
• Upper inclusive—
Specifies if you want Pass to return TRUE when points in Signals fall on Upper Limit.
Place a checkmark in the Upper inclusive checkbox to include points falling on
Upper Limit in the points that pass the limit test. This option is available only when
you place a checkmark in the Upper Limit checkbox.
• Lower constant—
Compares Signals to the value in Lower limit constant. This option is available only
when you place a checkmark in the Lower Limit checkbox.
Lower
◦ Lower limit constant—
Limit
Specifies the value of the Lower constant. The default is 0. This option is
available only when you place a checkmark in the Lower Limit checkbox and
select the Lower constant option.
• Lower mask—
Option Description
Compares Signals to the lower limit of a signal from a file or a signal you define. This
option is available only when you place a checkmark in the Lower Limit checkbox.
◦ Define—
Displays the Define Signal dialog box, which you use to set the values for the
signal you want to use for the limit test. This button is available only when you
select Upper Limit and Upper mask or Lower Limit and Lower mask.
• Lower inclusive—
Specifies if you want Pass to return TRUE when points in Signals fall on Lower Limit.
Place a checkmark in the Lower inclusive checkbox to include points falling on
Lower Limit in the points that pass the limit test. This option is available only when
you place a checkmark in the Lower Limit checkbox.
Displays a preview of the measurement. The Result Preview plot indicates the value of
the selected measurement with a dotted line.
Result If you wire data to the Express VI and run the VI, Result Preview displays real data. If you
Preview close and reopen the Express VI, Result Preview displays sample data until you run the VI
again. If the cutoff frequency values are invalid, Result Preview does not display valid
data.
Inputs/Outputs
• error in —
• Signals —
• Lower Limit —
Specifies the lower limit for mask and limit testing. The value you wire to this input overrides the
value you set in the configuration dialog box.
• Upper Constant —
1062 ni.com
Functions
Compares Signals to the value in Upper Constant. The value you wire to this input overrides the
value you set in the configuration dialog box.
• Lower Constant —
Compares Signals to the value in Lower Constant. The value you wire to this input overrides the
value you set in the configuration dialog box.
• Upper Limit —
Specifies the upper limit for mask and limit testing. The value you wire to this input overrides
the value you set in the configuration dialog box.
• Point Evaluation —
Returns the results of the limit testing at each data point. If Point Evaluation is TRUE, the data
point is less than or equal to the upper limit and greater than or equal to the lower limit.
• Tested Signals —
Returns the upper and lower limits, the input signal, and the failures.
• error out —
Contains error information. This output provides standard error out functionality.
• Passed —
Indicates the result of limit testing. If Passed is TRUE, the signal is less than or equal to the upper
limit and greater than or equal to the lower limit.
The Express VI compares Signals with the upper and lower limits you set and returns
the result of the comparison at each data point. The Express VI also returns an array of
waveforms that contains the upper limit and lower limit, the signal, and the failures.
Components
Specifies if you want Pass to return TRUE when points in Signals fall on Upper Limit.
Place a checkmark in the Upper inclusive checkbox to include points falling on Upper
Limit in the points that pass the limit test. This option is available only when you place
a checkmark in the Upper Limit checkbox.
Specifies if you want Pass to return TRUE when points in Signals fall on Lower Limit.
Place a checkmark in the Lower inclusive checkbox to include points falling on Lower
Limit in the points that pass the limit test. This option is available only when you place
a checkmark in the Lower Limit checkbox.
Uses a lower limit for mask and limit testing. Contains the following options:
Uses a upper limit for mask and limit testing. Contains the following options:
Specifies the value of the Upper constant. The default is 0. This option is available only
when you place a checkmark in the Upper Limit checkbox and select the Upper
constant option.
Specifies the value of the Lower constant. The default is 0. This option is available only
when you place a checkmark in the Lower Limit checkbox and select the Lower
constant option.
Compares Signals to the value in Upper limit constant. This option is available only
when you place a checkmark in the Upper Limit checkbox.
Compares Signals to the value in Lower limit constant. This option is available only
when you place a checkmark in the Lower Limit checkbox.
Displays the Define Signal dialog box, which you use to set the values for the signal you
want to use for the limit test. This button is available only when you select Upper Limit
and Upper mask or Lower Limit and Lower mask.
Compares Signals to the lower limit of a signal from a file or a signal you define. This
option is available only when you place a checkmark in the Lower Limit checkbox.
Compares Signals to the upper limit of a signal from a file or a signal you define. This
option is available only when you place a checkmark in the Upper Limit checkbox.
Displays a preview of the measurement. The Result Preview plot indicates the value of
1064 ni.com
Functions
Option Description
Contains the following options:
• Threshold—
◦ Start sense—
Specifies on what edge of the signal to start taking samples. The options are
Rising edge, Rising or Falling edge, or Falling edge. This option is available only
when you select Threshold.
Start
Trigger
◦ Start level—
Amplitude that the signal must cross in the Start sense direction before the
Express VI starts taking samples. The default is 0. This option is available only
when you select Threshold.
◦ Pre samples—
Specifies the number of samples that occur before the start trigger to return.
The default is 0. This option is available only when you select Threshold.
Option Description
• Immediate—
Begins the triggering immediately. The start of the signal is the start trigger.
• Number of samples—
◦ Samples—
Specifies the number of samples to collect before stopping the trigger. The
default is 1000.
• Threshold—
Stop
Uses a threshold to indicate when to start triggering.
Trigger
◦ Stop sense—
Specifies on what edge of the signal to stop taking samples. The options are
Rising edge, Rising or Falling edge, or Falling edge. This option is available only
when you select Threshold.
◦ Stop level—
Amplitude that the signal must cross in the Stop sense direction before the
Express VI stops taking samples. The default is 0. This option is available only
when you select Threshold.
• Trigger channel—
General Specifies the channel to use if the dynamic data type input contains multiple
signals. The default is 0.
1066 ni.com
Functions
Option Description
Resets the trigger conditions after finding each trigger. When you select this option,
the Trigger and Gate Express VI does not buffer data with each iteration of a loop.
Select this checkbox when you have a new data set for each iteration and you want
to find data related only to the first trigger point. Deselect this checkbox when you
want to pass only one set of data into a loop and then call the Trigger and Gate
Express VI in a loop to get all the triggers in the data.
Note When you do not select this option, the Trigger and Gate Express VI
buffers data. In this case, if the Trigger and Gate Express VI is called in a
loop, it can start a backlog of data if there is new data for each loop
(because one set of data can contain several trigger points). Because
there is no reset, it buffers all the data from each loop so that it can find
all the triggers, but all the triggers might not be found.
Remains triggered after finding a trigger. This option is available only when you
select the Threshold option in the Start Trigger section.
• Hysteresis—
Specifies the amount above and below Start level or Stop level through which
Signals must pass before a trigger level crossing is detected. The default is 0.
Use trigger hysteresis to prevent noise from causing a false trigger. For a rising edge
Start sense or Stop sense, the signal must pass below Start level or Stop level
minus Hysteresis before detecting a trigger level crossing. For a falling edge Start
sense or Stop sense, the signal must pass above Start level or Stop level plus
Hysteresis before detecting a trigger level crossing.
Output Specifies that the Express VI returns the portion of the signal that matches the
segment trigger criteria.
size
• Number of output samples—
Specifies the number of samples to include in each output segment. This option is
Option Description
available only if the Automatic number of samples checkbox does not contain a
checkmark.
If you wire data to the Express VI and run it, Input Signal displays real data. If you close
and reopen the Express VI, Input Signal displays sample data until you run the Express VI
Input
again.
Signal
• Number of points in the data—
Displays a preview of the measurement. The Results Preview plot indicates the value of
the selected measurement with a dotted line.
Results
If you wire data to the Express VI and run the VI, Results Preview displays real data. If you
Preview
close and reopen the Express VI, Results Preview displays sample data until you run the
VI again. If the cutoff frequency values are invalid, Results Preview does not display valid
data.
Inputs/Outputs
• error in (no error) —
• Signals —
• Reset —
Controls the initialization of the internal state of the VI. The default is FALSE.
• Data Index —
1068 ni.com
Functions
Contains the index of the detected trigger. If this Express VI is in a loop, wire Data Index to the
iteration terminal of the loop.
• Manual Trigger —
Starts the trigger immediately and overrides the Start Trigger settings you configure. The default
is FALSE.
• Data Available —
• error out —
Contains error information. This output provides standard error out functionality.
• Previous Signals —
Contains the last triggered output data. If no data meets the requirements of the trigger, this
output contains the most recent segment that meet the requirements of the trigger.
• Triggered Signals —
Returns the resulting segment between Start Trigger and Stop Trigger. If no data meets the
requirements of the trigger, this output returns an empty signal.
Components
Specifies that the Express VI returns the portion of the signal that matches the trigger
criteria.
Resets the trigger conditions after finding each trigger. When you select this option, the
Trigger and Gate Express VI does not buffer data with each iteration of a loop. Select
this checkbox when you have a new data set for each iteration and you want to find
data related only to the first trigger point. Deselect this checkbox when you want to
pass only one set of data into a loop and then call the Trigger and Gate Express VI in a
loop to get all the triggers in the data.
Displays a preview of the measurement. The Results Preview plot indicates the value
of the selected measurement with a dotted line.
Amplitude that the signal must cross in the Stop sense direction before the Express VI
stops taking samples. The default is 0. This option is available only when you select
Threshold.
Specifies on what edge of the signal to stop taking samples. The options are Rising
edge, Rising or Falling edge, or Falling edge. This option is available only when you
select Threshold.
Specifies the amount above and below Start level or Stop level through which Signals
must pass before a trigger level crossing is detected. The default is 0.
Specifies on what edge of the signal to start taking samples. The options are Rising
edge, Rising or Falling edge, or Falling edge. This option is available only when you
select Threshold.
Amplitude that the signal must cross in the Start sense direction before the Express VI
starts taking samples. The default is 0. This option is available only when you select
Threshold.
Begins the triggering immediately. The start of the signal is the start trigger.
Remains triggered after finding a trigger. This option is available only when you select
the Threshold option in the Start Trigger section.
Specifies the number of samples to include in each output segment. This option is
available only if the Automatic number of samples checkbox does not contain a
checkmark.
1070 ni.com
Functions
Specifies the channel to use if the dynamic data type input contains multiple signals.
The default is 0.
Specifies the number of samples to collect before stopping the trigger. The default is
1000.
Specifies the number of samples that occur before the start trigger to return. The
default is 0. This option is available only when you select Threshold.
Transition Measurements
Accepts an input signal of a single waveform or an array of waveforms and measures
the transition duration (rise or fall time), slew rate, undershoot, and overshoot of a
selected positive or negative transition in each waveform. Wire data to the signal in
input to determine the polymorphic instance to use or manually select the instance.
Note The terminology and measurement definitions for this VI comply with
IEEE Standard 181-2003, IEEE Standard on Transitions, Pulses,
and Related Waveforms.
pre-transition
Note LabVIEW uses the Histogram method to calculate the state levels and
amplitude, regardless of the method specified by percent level settings.
post-transition
1072 ni.com
Functions
(next transition start time – current transition end time) / 2. If the transition to measure
is the last in the waveform, the interval is defined as the minimum of 3*(end time –
start time) and (end of the waveform – end time).
Note LabVIEW uses the Histogram method to calculate the state levels and
amplitude, regardless of the method specified by percent level settings.
Example Illustrations
The following illustration shows the undershoot and overshoot in a negative single
transition.
The following illustration shows the undershoot and overshoot in a positive single
transition.
Examples
1074 ni.com
Functions
Note The terminology and measurement definitions for this VI comply with
IEEE Standard 181-2003, IEEE Standard on Transitions, Pulses,
and Related Waveforms.
Inputs/Outputs
• edge number (1) —
An edge number of n with rising polarity selected indicates that the VI measures the nth rising
transition it detects in the input waveform.
• signal in —
signal in is the waveform to measure. The waveform is required to contain at least edge number
transitions in the direction specified by polarity.
A rising transition is the interval between adjacent rising low ref level and high ref level
crossings. A falling transition is the interval between adjacent falling high ref level and low ref
level crossings.
• polarity (rising) —
polarity specifies the direction of the transition to measure as rising (default) or falling.
• reference levels —
reference levels specifies the high and low reference levels required to determine the transition
interval. mid ref level is not used in transition measurements.
Reference levels provide a means to identify the position in time of the waveform feature
measured.
high ref level specifies the high reference level of the waveform in percent (default) or
absolute units.
A rising high ref level crossing defines the end of a rising transition and a falling high ref
level crossing defines the beginning of a falling transition.
mid ref level specifies the middle reference level in percent (default) or absolute units. mid
ref level is not used in transition measurements.
low ref level specifies the low reference level of the waveform in percent (default) or
absolute units.
A rising low ref level crossing defines the beginning of a rising transition and a falling low
ref level crossing defines the end of a falling transition.
• ref units —
ref units specifies whether the high ref level, mid ref level, and low ref level inputs are
interpreted as a percentage (default) of the full range of the waveform or as absolute levels.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
percent level settings specifies the method LabVIEW uses to determine the high and low state
levels of a waveform.
1076 ni.com
Functions
If you select percent ref units, percent level settings determines the reference levels. Otherwise,
LabVIEW ignores this input.
• method —
method specifies how LabVIEW computes the high and low state levels of the waveform.
Histogram—Returns the levels of the histogram bins with the maximum number of hits in
the upper and lower regions of the waveform. The upper and lower regions of the
0
waveform include the upper and lower 40%, respectively, of the peak-to-peak range of the
waveform.
1 Peak—Searches the entire waveform for its maximum and minimum levels.
Auto select (default)—Determines whether the histogram bins that correspond to the high
and low state levels each have over 5% of the total hits. If so, LabVIEW returns those
2 results. Otherwise, LabVIEW uses the peak method. This ensures a reasonable answer for
either a square wave (ignoring the overshoot and undershoot) or a triangle wave (where a
histogram fails).
• histogram size —
histogram size specifies the number of bins in the histogram LabVIEW uses to determine
the high and low state levels of the waveform.
• histogram method —
histogram method specifies how LabVIEW computes the high and low state levels of the
waveform. Currently, mode is the only available histogram method.
0 mode
• reserved —
• slope —
slope is a measure of the rate of change of the signal in a transition region between high ref
level and low ref level.
• transition duration —
transition duration is the time span from when the waveform crosses the low ref level until it
crosses the high ref level in seconds for a rising transition polarity.
The measurement starts at the left edge of the waveform and finds all low ref level crossings
preceding the first high ref level crossing. The final low ref level crossing is used in the
calculation. A rising polarity transition duration is known as rise time, and a falling polarity
transition duration is known as fall time, as shown in the following example:
• pre-transition —
pre-transition contains the undershoot and overshoot for the waveform in signal in.
Refer to the Details section for more information about the pre-transition output.
• undershoot (%) —
undershoot measures the height of the local minimum preceding a rising or falling
transition, which depends on the polarity you specify. Undershoot measures the height as a
percentage of the histogram-based amplitude of the signal.
• overshoot (%) —
overshoot measures the height of the local maximum preceding a rising or falling
1078 ni.com
Functions
transition, which depends on the polarity you specify. Overshoot measures the height as a
percentage of the histogram-based amplitude of the signal.
• post-transition —
post-transition contains the undershoot and overshoot for the waveform in signal in.
Refer to the Details section for more information about the post-transition output.
• undershoot (%) —
undershoot measures the height of the local minimum following a rising or falling, as set by
polarity, transition as a percentage of the histogram-based amplitude of the signal.
• overshoot (%) —
overshoot measures the height of the local maximum following a rising or falling, as set by
polarity, transition as a percentage of the histogram-based amplitude of the signal.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurement info —
measurement info returns the transition interval end points and the absolute reference levels
used to define the transition.
• start time —
start time specifies the time of the rising (falling) low (high) ref level crossing that defines
the start of the transition to be measured.
• end time —
end time specifies the time of the rising (falling) high (low) ref level crossing that defines the
end of the transition to be measured.
• ref levels —
ref levels returns the three user-defined reference levels of the waveform in absolute units.
LabVIEW uses the reference levels to define the interval of one cycle measurement.
• ref units —
pre-transition
1080 ni.com
Functions
Note LabVIEW uses the Histogram method to calculate the state levels and
amplitude, regardless of the method specified by percent level settings.
post-transition
following equation:
Note LabVIEW uses the Histogram method to calculate the state levels and
amplitude, regardless of the method specified by percent level settings.
Example Illustrations
The following illustration shows the undershoot and overshoot in a negative single
transition.
The following illustration shows the undershoot and overshoot in a positive single
transition.
1082 ni.com
Functions
Examples
Note The terminology and measurement definitions for this VI comply with
IEEE Standard 181-2003, IEEE Standard on Transitions, Pulses,
and Related Waveforms.
Inputs/Outputs
• edge number (1) —
An edge number of n with rising polarity selected indicates that the VI measures the nth rising
transition it detects in the input waveform.
• signal(s) in —
signal(s) in is the array of waveforms to measure. The waveform is required to contain at least
edge number transitions in the direction specified by polarity.
A rising transition is the interval between adjacent rising low ref level and high ref level
crossings. A falling transition is the interval between adjacent falling high ref level and low ref
level crossings.
• polarity (rising) —
polarity specifies the direction of the transition to measure as rising (default) or falling.
• reference levels —
reference levels specifies the high and low reference levels required to determine the transition
interval. mid ref level is not used in transition measurements.
Reference levels provide a means to identify the position in time of the waveform feature
measured.
high ref level specifies the high reference level of the waveform in percent (default) or
absolute units.
A rising high ref level crossing defines the end of a rising transition and a falling high ref
level crossing defines the beginning of a falling transition.
1084 ni.com
Functions
mid ref level specifies the middle reference level in percent (default) or absolute units. mid
ref level is not used in transition measurements.
low ref level specifies the low reference level of the waveform in percent (default) or
absolute units.
A rising low ref level crossing defines the beginning of a rising transition and a falling low
ref level crossing defines the end of a falling transition.
• ref units —
ref units specifies whether the high ref level, mid ref level, and low ref level inputs are
interpreted as a percentage (default) of the full range of the waveform or as absolute levels.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
percent level settings specifies the method LabVIEW uses to determine the high and low state
levels of a waveform.
If you select percent ref units, percent level settings determines the reference levels. Otherwise,
LabVIEW ignores this input.
• method —
method specifies how LabVIEW computes the high and low state levels of the waveform.
Histogram—Returns the levels of the histogram bins with the maximum number of hits in
the upper and lower regions of the waveform. The upper and lower regions of the
0
waveform include the upper and lower 40%, respectively, of the peak-to-peak range of the
waveform.
1 Peak—Searches the entire waveform for its maximum and minimum levels.
Auto select (default)—Determines whether the histogram bins that correspond to the high
and low state levels each have over 5% of the total hits. If so, LabVIEW returns those
2 results. Otherwise, LabVIEW uses the peak method. This ensures a reasonable answer for
either a square wave (ignoring the overshoot and undershoot) or a triangle wave (where a
histogram fails).
• histogram size —
histogram size specifies the number of bins in the histogram LabVIEW uses to determine
the high and low state levels of the waveform.
• histogram method —
histogram method specifies how LabVIEW computes the high and low state levels of the
waveform. Currently, mode is the only available histogram method.
0 mode
• reserved —
• slope —
slope is an array containing the slew rate for each waveform in signal(s) in. slope is a measure of
the rate of change of the signal in a transition region between high ref level and low ref level.
• transition duration —
transition duration is an array of the time spans from when each waveform crosses the low ref
level until it crosses the high ref level in seconds for a rising transition polarity.
The measurement starts at the left edge of the waveform and finds all low ref level crossings
preceding the first high ref level crossing. The final low ref level crossing is used in the
calculation. A rising polarity transition duration is known as rise time, and a falling polarity
1086 ni.com
Functions
• pre-transition —
pre-transition contains the undershoot and overshoot for each waveform in signal(s) in.
Refer to the Details section for more information about the pre-transition output.
• undershoot (%) —
undershoot measures the height of the local minimum preceding a rising or falling
transition, which depends on the polarity you specify. Undershoot measures the height as a
percentage of the histogram-based amplitude of the signal.
• overshoot (%) —
overshoot measures the height of the local maximum preceding a rising or falling
transition, which depends on the polarity you specify. Overshoot measures the height as a
percentage of the histogram-based amplitude of the signal.
• post-transition —
post-transition contains the undershoot and overshoot for each waveform in signal(s) in.
Refer to the Details section for more information about the post-transition output.
• undershoot (%) —
undershoot measures the height of the local minimum following a rising or falling, as set by
• overshoot (%) —
overshoot measures the height of the local maximum following a rising or falling, as set by
polarity, transition as a percentage of the histogram-based amplitude of the signal.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurement info —
measurement info is an array of clusters containing measurement information for each input
waveform.
• start time —
start time specifies the time of the rising (falling) low (high) ref level crossing that defines
the start of the transition to be measured.
• end time —
end time specifies the time of the rising (falling) high (low) ref level crossing that defines the
end of the transition to be measured.
• ref levels —
ref levels returns the three user-defined reference levels of the waveform in absolute units.
LabVIEW uses the reference levels to define the interval of one cycle measurement.
1088 ni.com
Functions
• ref units —
pre-transition
Note LabVIEW uses the Histogram method to calculate the state levels and
amplitude, regardless of the method specified by percent level settings.
post-transition
1090 ni.com
Functions
following equation:
Note LabVIEW uses the Histogram method to calculate the state levels and
amplitude, regardless of the method specified by percent level settings.
Example Illustrations
The following illustration shows the undershoot and overshoot in a negative single
transition.
The following illustration shows the undershoot and overshoot in a positive single
transition.
Examples
Pulse Measurements
Accepts a periodic waveform or an array of periodic waveforms and returns the period,
pulse duration (pulse width), duty cycle (duty factor), and pulse center of a selected
pulse and period. Wire data to the signal in input to determine the polymorphic
instance to use or manually select the instance.
Note The terminology and measurement definitions for this VI comply with
IEEE Standard 181-2003, IEEE Standard on Transitions, Pulses,
and Related Waveforms.
Examples
1092 ni.com
Functions
Measurements.vi
Note The terminology and measurement definitions for this VI comply with
IEEE Standard 181-2003, IEEE Standard on Transitions, Pulses,
and Related Waveforms.
Inputs/Outputs
• export mode —
export mode specifies whether this VI returns the period or duty cycle outputs.
0 all (default)–Returns period, pulse duration, duty cycle, and measurement info.
no period and duty cycle–Returns pulse duration and measurement info but does not return
1
period or duty cycle.
pulse number specifies which pulse of polarity, high or low, LabVIEW measures.
For pulse number n with polarity low, the VI measures the pulse duration and center of the nth
low pulse. The VI measures the period and duty cycle of the period that begins with the (2n –
• signal in —
signal in is the waveform to measure. The waveform must contain at least pulse number
complete cycles, where a cycle is the interval between two consecutive mid ref level crossings in
the same direction.
• polarity (high) —
polarity defines a pulse as high (default) or low. A high pulse consists of the interval between a
rising mid ref level crossing and the next falling mid ref level crossing.
• reference levels —
reference levels specifies the high, middle, and low reference levels of a waveform.
LabVIEW uses the reference levels to define the measurement interval of one complete cycle.
The distance between the mid ref level and the high ref level must equal the distance between
the low ref level and the mid ref level. If the two distances are not equal, LabVIEW adjusts either
the high ref level or the low ref level to match the smaller of the two distances. For example, if
you specify a high ref level of 90%, a mid ref level of 50%, and a low ref level of 20%, LabVIEW
uses 80% instead of 90% for the high ref level.
high ref level specifies the high reference level of the waveform in percent (default) or
absolute units.
After the signal crosses the mid ref level in the rising direction, it must cross the high ref
level before the next falling mid ref level crossing can be counted.
mid ref level specifies the middle reference level in percent (default) or absolute units.
The interval between consecutive rising mid ref level crossings defines one cycle, or period,
of the waveform. At least one high/low reference level crossing must separate each mid ref
level crossing.
1094 ni.com
Functions
low ref level specifies the low reference level of the waveform in percent (default) or
absolute units.
After the signal crosses the mid ref level in the falling direction, it must cross the low ref
level before the next rising mid ref level crossing can be counted.
• ref units —
ref units specifies whether the high ref level, mid ref level, and low ref level inputs are
interpreted as a percentage (default) of the full range of the waveform or as absolute levels.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
percent level settings specifies the method LabVIEW uses to determine the high and low state
levels of a waveform.
If you select percent ref units, percent level settings determines the reference levels. Otherwise,
LabVIEW ignores this input.
• method —
method specifies how LabVIEW computes the high and low state levels of the waveform.
Histogram—Returns the levels of the histogram bins with the maximum number of hits in
the upper and lower regions of the waveform. The upper and lower regions of the
0
waveform include the upper and lower 40%, respectively, of the peak-to-peak range of the
waveform.
1 Peak—Searches the entire waveform for its maximum and minimum levels.
Auto select (default)—Determines whether the histogram bins that correspond to the high
and low state levels each have over 5% of the total hits. If so, LabVIEW returns those
2 results. Otherwise, LabVIEW uses the peak method. This ensures a reasonable answer for
either a square wave (ignoring the overshoot and undershoot) or a triangle wave (where a
histogram fails).
• histogram size —
histogram size specifies the number of bins in the histogram LabVIEW uses to determine
the high and low state levels of the waveform.
• histogram method —
histogram method specifies how LabVIEW computes the high and low state levels of the
waveform. Currently, mode is the only available histogram method.
0 mode
• reserved —
• period —
period returns the time between adjacent mid ref level crossings in the same direction in
seconds.
The reciprocal of this value is the signal frequency. The measurement interval includes the pulse
you specify in pulse number.
• pulse duration —
pulse duration is the time difference in seconds between the first two mid ref level crossings of
the pulse number. pulse duration is also known as pulse width.
• duty cycle —
duty cycle is also known as duty factor. LabVIEW uses the following equation to calculate duty
cycle: In this equation, pulse duration can refer to the high or
low portion of the period, depending on whether polarity is high pulse or low pulse.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurement info —
1096 ni.com
Functions
measurement info returns the pulse-center time of the selected pulse and the absolute
reference levels LabVIEW uses to define the measurement cycle.
• pulse center —
pulse center specifies the time instant of the midpoint of the pulse number.
pulse center for a polarity of high pulse is given by the following equation:
where tc is the pulse center time, tf is the time instant of the falling mid ref level crossing,
and tr is the time instant of the preceding rising mid ref level crossing.
• ref levels —
ref levels returns the three user-defined reference levels of the waveform in absolute units.
LabVIEW uses the reference levels to define the interval of one cycle measurement.
• ref units —
Examples
Note The terminology and measurement definitions for this VI comply with
IEEE Standard 181-2003, IEEE Standard on Transitions, Pulses,
and Related Waveforms.
Inputs/Outputs
• export mode —
export mode specifies whether this VI returns the period or duty cycle outputs.
0 all (default)–Returns period, pulse duration, duty cycle, and measurement info.
no period and duty cycle–Returns pulse duration and measurement info but does not return
1
period or duty cycle.
pulse number specifies which pulse of polarity, high or low, LabVIEW measures.
1098 ni.com
Functions
For pulse number n with polarity low, the VI measures the pulse duration and center of the nth
low pulse. The VI measures the period and duty cycle of the period that begins with the (2n –
1)th mid ref level crossing.
• signal(s) in —
signal(s) in is the array of waveforms to measure. The waveform must contain at least pulse
number complete cycles, where a cycle is the interval between two consecutive mid ref level
crossings in the same direction.
• polarity (high) —
polarity defines a pulse as high (default) or low. A high pulse consists of the interval between a
rising mid ref level crossing and the next falling mid ref level crossing.
• reference levels —
reference levels specifies the high, middle, and low reference levels of a waveform.
LabVIEW uses the reference levels to define the measurement interval of one complete cycle.
The distance between the mid ref level and the high ref level must equal the distance between
the low ref level and the mid ref level. If the two distances are not equal, LabVIEW adjusts either
the high ref level or the low ref level to match the smaller of the two distances. For example, if
you specify a high ref level of 90%, a mid ref level of 50%, and a low ref level of 20%, LabVIEW
uses 80% instead of 90% for the high ref level.
high ref level specifies the high reference level of the waveform in percent (default) or
absolute units.
After the signal crosses the mid ref level in the rising direction, it must cross the high ref
level before the next falling mid ref level crossing can be counted.
mid ref level specifies the middle reference level in percent (default) or absolute units.
The interval between consecutive rising mid ref level crossings defines one cycle, or period,
of the waveform. At least one high/low reference level crossing must separate each mid ref
level crossing.
low ref level specifies the low reference level of the waveform in percent (default) or
absolute units.
After the signal crosses the mid ref level in the falling direction, it must cross the low ref
level before the next rising mid ref level crossing can be counted.
• ref units —
ref units specifies whether the high ref level, mid ref level, and low ref level inputs are
interpreted as a percentage (default) of the full range of the waveform or as absolute levels.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
percent level settings specifies the method LabVIEW uses to determine the high and low state
levels of a waveform.
If you select percent ref units, percent level settings determines the reference levels. Otherwise,
LabVIEW ignores this input.
• method —
method specifies how LabVIEW computes the high and low state levels of the waveform.
Histogram—Returns the levels of the histogram bins with the maximum number of hits in
the upper and lower regions of the waveform. The upper and lower regions of the
0
waveform include the upper and lower 40%, respectively, of the peak-to-peak range of the
waveform.
1 Peak—Searches the entire waveform for its maximum and minimum levels.
Auto select (default)—Determines whether the histogram bins that correspond to the high
and low state levels each have over 5% of the total hits. If so, LabVIEW returns those
2 results. Otherwise, LabVIEW uses the peak method. This ensures a reasonable answer for
either a square wave (ignoring the overshoot and undershoot) or a triangle wave (where a
histogram fails).
1100 ni.com
Functions
• histogram size —
histogram size specifies the number of bins in the histogram LabVIEW uses to determine
the high and low state levels of the waveform.
• histogram method —
histogram method specifies how LabVIEW computes the high and low state levels of the
waveform. Currently, mode is the only available histogram method.
0 mode
• reserved —
• period —
period is an array that contains the period for each waveform in signal(s) in. period returns the
time between adjacent mid ref level crossings in the same direction in seconds.
The reciprocal of this value is the signal frequency. The measurement interval includes the pulse
you specify in pulse number.
• pulse duration —
pulse duration is an array that contains the pulse duration for each waveform in signal(s) in.
pulse duration is the time difference in seconds between the first two mid ref level crossings of
the pulse number. pulse duration is also known as pulse width.
• duty cycle —
duty cycle is an array that contains the duty cycle for each waveform in signal(s) in.
duty cycle is also known as duty factor. LabVIEW uses the following equation to calculate duty
cycle: In this equation, pulse duration can refer to the high or
low portion of the period, depending on whether polarity is high pulse or low pulse.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurement info —
measurement info is an array of clusters that returns the pulse center time of the selected pulse
and the absolute reference levels LabVIEW uses to define the measurement cycle for each input
waveform.
• pulse center —
pulse center specifies the time instant of the midpoint of the pulse number.
pulse center for a polarity of high pulse is given by the following equation:
where tc is the pulse center time, tf is the time instant of the falling mid ref level crossing,
and tr is the time instant of the preceding rising mid ref level crossing.
• ref levels —
ref levels returns the three user-defined reference levels of the waveform in absolute units.
LabVIEW uses the reference levels to define the interval of one cycle measurement.
• ref units —
Examples
1102 ni.com
Functions
State Levels
Reference Levels
Reference levels allow you to extract information from the waveform by identifying
reference level crossings. Two adjacent waveform samples separated in magnitude by
a reference level constitute a reference level crossing. Linear interpolation gives an
approximation to the exact time instant of a reference level crossing, as shown in the
following illustration.
You can specify reference levels as a percentage of the state levels, with the low state
and high state corresponding to 0 and 100%, respectively. The most common low, mid,
and high reference levels are 10, 50, and 90%. The following illustration shows a typical
selection of state and reference levels for a pulse waveform.
The histogram method was used to determine the state levels. The histogram method
has the advantage of excluding the undershoot and overshoot peaks.
The terminology and measurement definitions for this VI comply with IEEE Standard
181-2003, IEEE Standard on Transitions, Pulses, and Related Waveforms.
Examples
1104 ni.com
Functions
• labview\examples\Signal Processing\Waveform
Measurements\N channel Pulse and Transition
Measurements.vi
Inputs/Outputs
• signal in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• state settings —
state settings specifies the method used to determine the high and low state levels of a
waveform.
For pulse and transition waveform measurements, state levels provide a means to identify the
position in time of the waveform feature to be measured.
• method —
method specifies how LabVIEW computes the high and low state levels of the waveform.
Histogram—Returns the levels of the histogram bins with the maximum number of hits in
the upper and lower regions of the waveform. The upper and lower regions of the
0
waveform include the upper and lower 40%, respectively, of the peak-to-peak range of the
waveform.
1 Peak—Searches the entire waveform for its maximum and minimum levels.
Auto select (default)—Determines whether the histogram bins that correspond to the high
and low state levels each have over 5% of the total hits. If so, LabVIEW returns those
2 results. Otherwise, LabVIEW uses the peak method. This ensures a reasonable answer for
either a square wave (ignoring the overshoot and undershoot) or a triangle wave (where a
histogram fails).
• histogram size —
histogram size specifies the number of bins in the histogram LabVIEW uses to determine
the high and low state levels of the waveform.
• histogram method —
histogram method specifies how LabVIEW computes the high and low state levels of the
waveform. Currently, mode is the only available histogram method.
0 mode
• reserved —
• amplitude —
amplitude is the difference between high state level and low state level.
high state level returns the level at which a pulse or transition waveform is defined to be in its
highest state.
low state level returns the level at which a pulse or transition waveform is defined to be in its
lowest state
1106 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
The terminology and measurement definitions for this VI comply with IEEE Standard
181-2003, IEEE Standard on Transitions, Pulses, and Related Waveforms.
Examples
• labview\examples\Signal Processing\Waveform
Measurements\N channel Pulse and Transition
Measurements.vi
Inputs/Outputs
• signal(s) in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• state settings —
state settings specifies the method used to determine the high and low state levels of a
waveform.
For pulse and transition waveform measurements, state levels provide a means to identify the
position in time of the waveform feature to be measured.
• method —
method specifies how LabVIEW computes the high and low state levels of the waveform.
Histogram—Returns the levels of the histogram bins with the maximum number of hits in
the upper and lower regions of the waveform. The upper and lower regions of the
0
waveform include the upper and lower 40%, respectively, of the peak-to-peak range of the
waveform.
1 Peak—Searches the entire waveform for its maximum and minimum levels.
Auto select (default)—Determines whether the histogram bins that correspond to the high
and low state levels each have over 5% of the total hits. If so, LabVIEW returns those
2 results. Otherwise, LabVIEW uses the peak method. This ensures a reasonable answer for
either a square wave (ignoring the overshoot and undershoot) or a triangle wave (where a
histogram fails).
• histogram size —
histogram size specifies the number of bins in the histogram LabVIEW uses to determine
the high and low state levels of the waveform.
• histogram method —
histogram method specifies how LabVIEW computes the high and low state levels of the
waveform. Currently, mode is the only available histogram method.
0 mode
• reserved —
• amplitude —
1108 ni.com
Functions
high state level is an array containing the high state level of each waveform in signal(s) in.
low state level is an array containing the low state level of each waveform in signal(s) in.
• error out —
error out contains error information. This output provides standard error out functionality.
The terminology and measurement definitions for this VI comply with IEEE Standard
181-2003, IEEE Standard on Transitions, Pulses, and Related Waveforms.
Examples
• labview\examples\Signal Processing\Waveform
Measurements\N channel Pulse and Transition
Measurements.vi
where A, f, and φ are the amplitude, frequency, and phase of the tone signal,
respectively, and Fs is the sample rate in samples per second of the input waveform
signal.
where A, f, and φ are the amplitude, frequency, and phase of the tone signal,
respectively, and Fs is the sample rate in samples per second of the input waveform
signal.
For a real signal, the frequency range is (min frequency, max frequency) = (0, Fs/2). For
a complex signal, the frequency range is (min frequency, max frequency) = (–Fs/2,
Fs/2).
Examples
1110 ni.com
Functions
Inputs/Outputs
• time signal in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
0 none—Fastest computation
1 input signal—Input signal only
2 detected signal—Single tone
3 residual signal—Signal minus tone
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• advanced search —
advanced search controls the frequency domain search area, center frequency, and width. You
use advanced search for narrowing the single tone search range.
approx freq. is the center frequency used of the frequency domain search for the single
tone. The default is –1.0, which means the VI searches the tone in the full frequency range of
(0, Fs/2).
search is the frequency width, as a percentage of the sampling rate, for the frequency
domain search for the single tone frequency.
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
• df —
• dB Spectrum (Hann) —
• detected frequency —
1112 ni.com
Functions
• detected amplitude —
Use the Wrap Angle VI to change the units of detected phase. Wire detected phase to the angle
in input on the Wrap Angle VI, and select degree in, degree out or degree in,
radians out for the angle units input.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurement info —
measurement info returns information about your measurement, mainly warnings for
inconsistencies in your input signal.
• uncertainty —
• Warning —
• comments —
where A, f, and φ are the amplitude, frequency, and phase of the tone signal,
respectively, and Fs is the sample rate in samples per second of the input waveform
signal.
where A, f, and φ are the amplitude, frequency, and phase of the tone signal,
respectively, and Fs is the sample rate in samples per second of the input waveform
signal.
For a real signal, the frequency range is (min frequency, max frequency) = (0, Fs/2). For
a complex signal, the frequency range is (min frequency, max frequency) = (–Fs/2,
Fs/2).
Examples
1114 ni.com
Functions
phase. The input signal can be real or complex and single-channel or multichannel.
Wire data to the time signal in input to determine the polymorphic instance to use or
manually select the instance.
Inputs/Outputs
• time signal in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
0 none—Fastest computation
1 input signal—Input signal only
2 detected signal—Single tone
3 residual signal—Signal minus tone
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• advanced search —
advanced search controls the frequency domain search area, center frequency, and width. You
use advanced search for narrowing the single tone search range.
approx freq. is the center frequency used of the frequency domain search for the single
tone. The default is NaN, which means the VI searches the tone in the full frequency range of
(–Fs/2, Fs/2).
search is the frequency width, as a percentage of the sampling rate, for the frequency
domain search for the single tone frequency.
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
• df —
• dB Spectrum (Hann) —
• detected frequency —
• detected amplitude —
1116 ni.com
Functions
Use the Wrap Angle VI to change the units of detected phase. Wire detected phase to the angle
in input on the Wrap Angle VI, and select degree in, degree out or degree in,
radians out for the angle units input.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurement info —
measurement info returns information about your measurement, mainly warnings for
inconsistencies in your input signal.
• uncertainty —
• Warning —
• comments —
where A, f, and φ are the amplitude, frequency, and phase of the tone signal,
respectively, and Fs is the sample rate in samples per second of the input waveform
signal.
where A, f, and φ are the amplitude, frequency, and phase of the tone signal,
respectively, and Fs is the sample rate in samples per second of the input waveform
signal.
For a real signal, the frequency range is (min frequency, max frequency) = (0, Fs/2). For
a complex signal, the frequency range is (min frequency, max frequency) = (–Fs/2,
Fs/2).
Examples
Note
1118 ni.com
Functions
Inputs/Outputs
• time signals in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
0 none—Fastest computation
1 input signal—Input signal only
2 detected signal—Single tone
3 residual signal—Signal minus tone
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• advanced search —
advanced search controls the frequency domain search area, center frequency, and width. You
use advanced search for narrowing the single tone search range.
approx freq. is the center frequency used of the frequency domain search for the single
tone. The default is –1.0, which means the VI searches the tone in the full frequency range of
(0, Fs/2).
search is the frequency width, as a percentage of the sampling rate, for the frequency
domain search for the single tone frequency.
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
• df —
• dB Spectrum (Hann) —
• detected frequencies —
detected frequencies is an array of frequencies of the detected single tone in Hz for each
1120 ni.com
Functions
waveform.
• detected amplitudes —
detected amplitudes is an array of peak amplitudes of the detected single tone for each
waveform.
detected phases is an array of phases of the detected single tone in degrees for each waveform.
Use the Wrap Angle VI to change the units of detected phases. Wire detected phases to the
angle in input on the Wrap Angle VI, and select degree in, degree out or degree in,
radians out for the angle units input.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurements info —
measurements info is an array that returns information about your measurement, mainly
warnings for inconsistencies in your input signal.
• uncertainty —
• Warning —
• comments —
where A, f, and φ are the amplitude, frequency, and phase of the tone signal,
respectively, and Fs is the sample rate in samples per second of the input waveform
signal.
where A, f, and φ are the amplitude, frequency, and phase of the tone signal,
respectively, and Fs is the sample rate in samples per second of the input waveform
signal.
For a real signal, the frequency range is (min frequency, max frequency) = (0, Fs/2). For
a complex signal, the frequency range is (min frequency, max frequency) = (–Fs/2,
Fs/2).
Examples
1122 ni.com
Functions
specified frequency range, and returns the single tone frequency, amplitude, and
phase. The input signal can be real or complex and single-channel or multichannel.
Wire data to the time signal in input to determine the polymorphic instance to use or
manually select the instance.
Inputs/Outputs
• time signals in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
0 none—Fastest computation
1 input signal—Input signal only
2 detected signal—Single tone
3 residual signal—Signal minus tone
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• advanced search —
advanced search controls the frequency domain search area, center frequency, and width. You
use advanced search for narrowing the single tone search range.
approx freq. is the center frequency used of the frequency domain search for the single
tone. The default is NaN, which means the VI searches the tone in the full frequency range of
(–Fs/2, Fs/2).
search is the frequency width, as a percentage of the sampling rate, for the frequency
domain search for the single tone frequency.
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
• df —
• dB Spectrum (Hann) —
• detected frequencies —
detected frequencies is an array of frequencies of the detected single tone in Hz for each
waveform.
• detected amplitudes —
1124 ni.com
Functions
detected amplitudes is an array of peak amplitudes of the detected single tone for each
waveform.
detected phases is an array of phases of the detected single tone in degrees for each waveform.
Use the Wrap Angle VI to change the units of detected phases. Wire detected phases to the
angle in input on the Wrap Angle VI, and select degree in, degree out or degree in,
radians out for the angle units input.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurements info —
measurements info is an array that returns information about your measurement, mainly
warnings for inconsistencies in your input signal.
• uncertainty —
• Warning —
• comments —
where A, f, and φ are the amplitude, frequency, and phase of the tone signal,
respectively, and Fs is the sample rate in samples per second of the input waveform
signal.
where A, f, and φ are the amplitude, frequency, and phase of the tone signal,
respectively, and Fs is the sample rate in samples per second of the input waveform
signal.
For a real signal, the frequency range is (min frequency, max frequency) = (0, Fs/2). For
a complex signal, the frequency range is (min frequency, max frequency) = (–Fs/2,
Fs/2).
Examples
1126 ni.com
Functions
The input signal can be real or complex and single-channel, in the form of a waveform,
or multichannel, in the form of an array of waveforms. If you wire an array of real
waveforms to time signal in, LabVIEW selects the Extract Multiple Tone Information N
Chan instance by default. If you wire an array of complex waveforms to time signal in,
LabVIEW selects the Extract Multiple Tone Information N Chan (CDB) instance by
default.
A real multiple tone signal can be expressed as shown in the following equation:
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
A complex multiple tone signal can be expressed as shown in the following equation:
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
For a real signal, the frequency range is (min frequency, max frequency) = (0, Fs/2). For
a complex signal, the frequency range is (min frequency, max frequency) = (–Fs/2,
Fs/2).
Examples
Inputs/Outputs
• time signal in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
0 none—Fastest computation
1 input signal—Input signal only
2 detected signal—Multiple tone
3 residual signal—Signal minus tone
• threshold —
threshold specifies the minimum amplitude that each tone must exceed for this VI to extract it
from time signal in.
1128 ni.com
Functions
max num tones specifies the maximum number of tones that this VI extracts. If you set max num
tones to –1, this VI extracts all tones whose amplitude exceeds threshold.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• output sorting —
output sorting specifies the sorting order of the tones that this VI extracts.
0 increasing frequency
1 decreasing amplitude
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
• df —
• dB Spectrum (Hann) —
multiple tone information returns the frequency, amplitude, and phase of each tone that this VI
extracts. Each element of the array is one single tone.
• detected frequency —
• detected amplitude —
Use the Wrap Angle VI to change the units of detected phase. Wire detected phase to the
angle in input on the Wrap Angle VI, and select degree in, degree out or degree
in, radians out for the angle units input.
• error out —
error out contains error information. This output provides standard error out functionality.
The input signal can be real or complex and single-channel, in the form of a waveform,
or multichannel, in the form of an array of waveforms. If you wire an array of real
waveforms to time signal in, LabVIEW selects the Extract Multiple Tone Information N
Chan instance by default. If you wire an array of complex waveforms to time signal in,
LabVIEW selects the Extract Multiple Tone Information N Chan (CDB) instance by
default.
A real multiple tone signal can be expressed as shown in the following equation:
1130 ni.com
Functions
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
A complex multiple tone signal can be expressed as shown in the following equation:
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
For a real signal, the frequency range is (min frequency, max frequency) = (0, Fs/2). For
a complex signal, the frequency range is (min frequency, max frequency) = (–Fs/2,
Fs/2).
Examples
Inputs/Outputs
• time signal in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
0 none—Fastest computation
1 input signal—Input signal only
2 detected signal—Multiple tone
3 residual signal—Signal minus tone
• threshold —
threshold specifies the minimum amplitude that each tone must exceed for this VI to extract it
from time signal in.
max num tones specifies the maximum number of tones that this VI extracts. If you set max num
tones to –1, this VI extracts all tones whose amplitude exceeds threshold.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• output sorting —
output sorting specifies the sorting order of the tones that this VI extracts.
0 increasing frequency
1 decreasing amplitude
1132 ni.com
Functions
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
• df —
• dB Spectrum (Hann) —
multiple tone information returns the frequency, amplitude, and phase of each tone that this VI
extracts. Each element of the array is one single tone.
• detected frequency —
• detected amplitude —
Use the Wrap Angle VI to change the units of detected phase. Wire detected phase to the
angle in input on the Wrap Angle VI, and select degree in, degree out or degree
in, radians out for the angle units input.
• error out —
error out contains error information. This output provides standard error out functionality.
The input signal can be real or complex and single-channel, in the form of a waveform,
or multichannel, in the form of an array of waveforms. If you wire an array of real
waveforms to time signal in, LabVIEW selects the Extract Multiple Tone Information N
Chan instance by default. If you wire an array of complex waveforms to time signal in,
LabVIEW selects the Extract Multiple Tone Information N Chan (CDB) instance by
default.
A real multiple tone signal can be expressed as shown in the following equation:
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
A complex multiple tone signal can be expressed as shown in the following equation:
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
1134 ni.com
Functions
For a real signal, the frequency range is (min frequency, max frequency) = (0, Fs/2). For
a complex signal, the frequency range is (min frequency, max frequency) = (–Fs/2,
Fs/2).
Examples
Inputs/Outputs
• time signals in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
0 none—Fastest computation
1 input signal—Input signal only
2 detected signal—Multiple tone
• threshold —
threshold specifies the minimum amplitude that each tone must exceed for this VI to extract it
from time signals in.
max num tones specifies the maximum number of tones that this VI extracts. If you set max num
tones to –1, this VI extracts all tones whose amplitude exceeds threshold.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• output sorting —
output sorting specifies the sorting order of the tones that this VI extracts.
0 increasing frequency
1 decreasing amplitude
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
1136 ni.com
Functions
• df —
• dB Spectrum (Hann) —
multiple tone information returns the frequency, amplitude, and phase of each tone that this VI
extracts. Each element of the array is the multiple tone information for one signal in time signals
in.
multiple tone information returns the frequency, amplitude, and phase of each sine tone
that this VI extracts. Each element of the array is the multiple tone information for one
signal in time signals in.
• detected frequency —
• detected amplitude —
Use the Wrap Angle VI to change the units of detected phase. Wire detected phase to
the angle in input on the Wrap Angle VI, and select degree in, degree out or
degree in, radians out for the angle units input.
• error out —
error out contains error information. This output provides standard error out functionality.
The input signal can be real or complex and single-channel, in the form of a waveform,
or multichannel, in the form of an array of waveforms. If you wire an array of real
waveforms to time signal in, LabVIEW selects the Extract Multiple Tone Information N
Chan instance by default. If you wire an array of complex waveforms to time signal in,
LabVIEW selects the Extract Multiple Tone Information N Chan (CDB) instance by
default.
A real multiple tone signal can be expressed as shown in the following equation:
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
A complex multiple tone signal can be expressed as shown in the following equation:
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
For a real signal, the frequency range is (min frequency, max frequency) = (0, Fs/2). For
1138 ni.com
Functions
a complex signal, the frequency range is (min frequency, max frequency) = (–Fs/2,
Fs/2).
Examples
Inputs/Outputs
• time signals in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
0 none—Fastest computation
1 input signal—Input signal only
• threshold —
threshold specifies the minimum amplitude that each tone must exceed for this VI to extract it
from time signals in. Each element of the array is the threshold for one signal in time signals in.
max num tones specifies the maximum number of tones that this VI extracts from each signal. If
you set max num tones to –1, this VI extracts all tones whose amplitude exceeds threshold.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• output sorting —
output sorting specifies the sorting order of the tones that this VI extracts.
0 increasing frequency
1 decreasing amplitude
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
1140 ni.com
Functions
• df —
• dB Spectrum (Hann) —
multiple tone information returns the frequency, amplitude, and phase of each tone that this VI
extracts. Each element of the array is the multiple tone information for one signal in time signals
in.
multiple tone information returns the frequency, amplitude, and phase of each sine tone
that this VI extracts. Each element of the array is the multiple tone information for one
signal in time signals in.
• detected frequency —
• detected amplitude —
Use the Wrap Angle VI to change the units of detected phase. Wire detected phase to
the angle in input on the Wrap Angle VI, and select degree in, degree out or
degree in, radians out for the angle units input.
• error out —
error out contains error information. This output provides standard error out functionality.
The input signal can be real or complex and single-channel, in the form of a waveform,
or multichannel, in the form of an array of waveforms. If you wire an array of real
waveforms to time signal in, LabVIEW selects the Extract Multiple Tone Information N
Chan instance by default. If you wire an array of complex waveforms to time signal in,
LabVIEW selects the Extract Multiple Tone Information N Chan (CDB) instance by
default.
A real multiple tone signal can be expressed as shown in the following equation:
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
A complex multiple tone signal can be expressed as shown in the following equation:
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
For a real signal, the frequency range is (min frequency, max frequency) = (0, Fs/2). For
1142 ni.com
Functions
a complex signal, the frequency range is (min frequency, max frequency) = (–Fs/2,
Fs/2).
Examples
Inputs/Outputs
• time signals in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
0 none—Fastest computation
1 input signal—Input signal only
• threshold —
threshold specifies the minimum amplitude that each tone must exceed for this VI to extract it
from time signals in.
max num tones specifies the maximum number of tones that this VI extracts. If you set max num
tones to –1, this VI extracts all tones whose amplitude exceeds threshold.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• output sorting —
output sorting specifies the sorting order of the tones that this VI extracts.
0 increasing frequency
1 decreasing amplitude
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
1144 ni.com
Functions
• df —
• dB Spectrum (Hann) —
multiple tone information returns the frequency, amplitude, and phase of each tone that this VI
extracts. Each element of the array is the multiple tone information for one signal in time signals
in.
multiple tone information returns the frequency, amplitude, and phase of each sine tone
that this VI extracts. Each element of the array is the multiple tone information for one
signal in time signals in.
• detected frequency —
• detected amplitude —
Use the Wrap Angle VI to change the units of detected phase. Wire detected phase to
the angle in input on the Wrap Angle VI, and select degree in, degree out or
degree in, radians out for the angle units input.
• error out —
error out contains error information. This output provides standard error out functionality.
The input signal can be real or complex and single-channel, in the form of a waveform,
or multichannel, in the form of an array of waveforms. If you wire an array of real
waveforms to time signal in, LabVIEW selects the Extract Multiple Tone Information N
Chan instance by default. If you wire an array of complex waveforms to time signal in,
LabVIEW selects the Extract Multiple Tone Information N Chan (CDB) instance by
default.
A real multiple tone signal can be expressed as shown in the following equation:
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
A complex multiple tone signal can be expressed as shown in the following equation:
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
For a real signal, the frequency range is (min frequency, max frequency) = (0, Fs/2). For
1146 ni.com
Functions
a complex signal, the frequency range is (min frequency, max frequency) = (–Fs/2,
Fs/2).
Examples
Inputs/Outputs
• time signals in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
0 none—Fastest computation
1 input signal—Input signal only
• threshold —
threshold specifies the minimum amplitude that each tone must exceed for this VI to extract it
from time signals in. Each element of the array is the threshold for one signal in time signals in.
max num tones specifies the maximum number of tones that this VI extracts from each signal. If
you set max num tones to –1, this VI extracts all tones whose amplitude exceeds threshold.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• output sorting —
output sorting specifies the sorting order of the tones that this VI extracts.
0 increasing frequency
1 decreasing amplitude
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
1148 ni.com
Functions
• df —
• dB Spectrum (Hann) —
multiple tone information returns the frequency, amplitude, and phase of each tone that this VI
extracts. Each element of the array is the multiple tone information for one signal in time signals
in.
multiple tone information returns the frequency, amplitude, and phase of each sine tone
that this VI extracts. Each element of the array is the multiple tone information for one
signal in time signals in.
• detected frequency —
• detected amplitude —
Use the Wrap Angle VI to change the units of detected phase. Wire detected phase to
the angle in input on the Wrap Angle VI, and select degree in, degree out or
degree in, radians out for the angle units input.
• error out —
error out contains error information. This output provides standard error out functionality.
The input signal can be real or complex and single-channel, in the form of a waveform,
or multichannel, in the form of an array of waveforms. If you wire an array of real
waveforms to time signal in, LabVIEW selects the Extract Multiple Tone Information N
Chan instance by default. If you wire an array of complex waveforms to time signal in,
LabVIEW selects the Extract Multiple Tone Information N Chan (CDB) instance by
default.
A real multiple tone signal can be expressed as shown in the following equation:
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
A complex multiple tone signal can be expressed as shown in the following equation:
where Ai, fi, and φi are the amplitude, frequency, and phase, respectively, of the ith
tone of a multiple tone signal with N tones and Fs is the sample rate in samples per
second of the input waveform signal.
For a real signal, the frequency range is (min frequency, max frequency) = (0, Fs/2). For
1150 ni.com
Functions
a complex signal, the frequency range is (min frequency, max frequency) = (–Fs/2,
Fs/2).
Examples
Examples
Inputs/Outputs
• stop search at Nyquist —
stop search at Nyquist should be set to TRUE (default) to include only frequencies less than the
Nyquist frequency, or half the sampling rate, in the harmonic search.
When set to FALSE, this VI continues searching the frequency domain beyond Nyquist by
assuming that these higher frequency components have aliased according to the following
equation. aliased f = Fs – (f modulo Fs) where Fs = 1/dt = sampling rate.
• signal in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
0 none—Fastest computation
1 input signal—Input signal only
2 fundamental signal—Single sine tone
3 residual signal—Signal minus tone
4 harmonics only—Detected harmonics
5 noise and spurs—Signal minus tone and harmonics
1152 ni.com
Functions
• highest harmonic —
highest harmonic controls the highest harmonic, including the fundamental tone, used for the
harmonic analysis. For example, for 3rd harmonic analysis, this control should be set to 3 to
measure the fundamental, second, and third harmonic.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• advanced search —
advanced search controls the frequency domain search area, which is the center frequency and
width, used for finding the fundamental frequency tone of the signal.
approx freq. is the center frequency used in the frequency domain search for the
fundamental tone frequency. If set to the default value of –1.0, the tone with the highest
amplitude is used as the fundamental tone.
search is the frequency width, as a percentage of the sampling rate, for the frequency
domain search for the fundamental tone frequency.
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
• df —
• dB Spectrum (Hann) —
detected fundamental frequency contains the detected fundamental frequency resulting from
searching the frequency domain. Use advanced search to set the frequency search range. All
harmonics are measured at integer multiples of this fundamental frequency.
• THD —
THD contains the measured total harmonic distortion up to and including the highest harmonic.
THD is defined as the ratio of the RMS sum of the harmonics to the amplitude of the
fundamental tone. To compute THD as a percentage, you must multiply it by 100.
• components level —
components level contains the array of amplitudes of the measured harmonics in volts if the
signal in is in volts. The array index is the harmonic number including 0 (DC), 1 (fundamental), 2
(second harmonic),... n (nth harmonic), up to and including the highest harmonic.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurement info —
measurement info returns information about your measurement, mainly warnings for
inconsistencies in your input signal.
1154 ni.com
Functions
• uncertainty —
• Warning —
• comments —
Examples
Note
Inputs/Outputs
• stop search at Nyquist —
stop search at Nyquist should be set to TRUE (default) to include only frequencies less than the
Nyquist frequency, or half the sampling rate, in the harmonic search.
When set to FALSE, this VI continues searching the frequency domain beyond Nyquist by
assuming that these higher frequency components have aliased according to the following
equation. aliased f = Fs – (f modulo Fs) where Fs = 1/dt = sampling rate.
• signals in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
0 none—Fastest computation
1 input signal—Input signal only
2 fundamental signal—Single sine tone
3 residual signal—Signal minus tone
4 harmonics only—Detected harmonics
5 noise and spurs—Signal minus tone and harmonics
• highest harmonic —
highest harmonic controls the highest harmonic, including the fundamental tone, used for the
harmonic analysis. For example, for 3rd harmonic analysis, this control should be set to 3 to
1156 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• advanced search —
advanced search controls the frequency domain search area, which is the center frequency and
width, used for finding the fundamental frequency tone of the signal.
approx freq. is the center frequency used in the frequency domain search for the
fundamental tone frequency. If set to the default value of –1.0, the tone with the highest
amplitude is used as the fundamental tone.
search is the frequency width, as a percentage of the sampling rate, for the frequency
domain search for the fundamental tone frequency.
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
• df —
• dB Spectrum (Hann) —
• THD —
THD returns an array containing the measured total harmonic distortion for each waveform.
• components levels —
components levels is a cluster containing an array of amplitudes of the measured harmonics for
each waveform.
• components level —
components level contains the array of amplitudes of the measured harmonics in volts if
the signal in is in volts. The array index is the harmonic number including 0 (DC), 1
(fundamental), 2 (second harmonic),... n (nth harmonic), up to and including the highest
harmonic.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurements info —
1158 ni.com
Functions
measurements info is an array that returns information about your measurement, mainly
warnings for inconsistencies in your input signal.
• uncertainty —
• Warning —
• comments —
Examples
SINAD Analyzer
Takes a signal in and performs a full Signal in Noise and Distortion (SINAD) analysis,
including measuring the fundamental frequency tone and returning the fundamental
frequency and SINAD level in dB. Wire data to the signal in input to determine the
polymorphic instance to use or manually select the instance.
Examples
Inputs/Outputs
• signal in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
1160 ni.com
Functions
0 none—Fastest computation
1 input signal—Input signal only
2 detected signal—Single tone
3 residual signal—Signal minus tone
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• advanced search —
advanced search controls the frequency domain search area, which is the center frequency and
width, used for finding the fundamental frequency tone of the signal.
approx freq. is the center frequency used in the frequency domain search for the
fundamental tone frequency. If set to the default value of –1.0, the tone with the highest
amplitude is used as the fundamental tone.
search is the frequency width, as a percentage of the sampling rate, for the frequency
domain search for the fundamental tone frequency.
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
• df —
• dB Spectrum (Hann) —
detected fundamental frequency contains the detected fundamental frequency resulting from
searching the frequency domain. Use advanced search to set the frequency search range.
• SINAD (dB) —
SINAD contains the measured Signal in Noise and Distortion (SINAD) expressed in dB. SINAD is
defined as the ratio of the RMS energy of signal in to the RMS energy of signal in less the energy
in the fundamental. To compute the THD Plus Noise in dB, simply negate the SINAD in dB.
THD Plus Noise contains the measured total harmonic distortion plus noise. THD Plus Noise is
defined as the ratio of the RMS energy of signal in less the energy in the fundamental to the RMS
energy of signal in. To compute THD Plus Noise as a percentage, you must multiply it by 100.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurement info —
measurement info returns information about your measurement, mainly warnings for
inconsistencies in your input signal.
• uncertainty —
1162 ni.com
Functions
• Warning —
• comments —
Examples
Note
Inputs/Outputs
• signals in —
• export mode —
export mode selects the source of the signal and spectrum to export to exported signals.
0 none—Fastest computation
1 input signal—Input signal only
2 detected signal—Single tone
3 residual signal—Signal minus tone
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• advanced search —
advanced search controls the frequency domain search area, which is the center frequency and
width, used for finding the fundamental frequency tone of the signal.
approx freq. is the center frequency used in the frequency domain search for the
fundamental tone frequency. If set to the default value of –1.0, the tone with the highest
1164 ni.com
Functions
search is the frequency width, as a percentage of the sampling rate, for the frequency
domain search for the fundamental tone frequency.
• exported signals —
exported time signal is the waveform containing the exported time signal as selected by
export mode.
exported spectrum (dB) is the spectrum of the exported time signal as selected by export
mode.
• f0 —
• df —
• dB Spectrum (Hann) —
• SINAD (dB) —
SINAD is an array containing the measured Signal in Noise and Distortion (SINAD) for each
waveform expressed in dB. SINAD is defined as the ratio of the RMS energy of the input signal to
the RMS energy of the input signal less the energy in the fundamental. To compute the THD Plus
Noise in dB, simply negate the SINAD in dB.
THD Plus Noise is an array containing the measured total harmonic distortion plus noise for
each waveform.
• error out —
error out contains error information. This output provides standard error out functionality.
• measurements info —
measurements info is an array that returns information about your measurement, mainly
warnings for inconsistencies in your input signal.
• uncertainty —
• Warning —
• comments —
Examples
1166 ni.com
Functions
The FFT Power Spectrum VI completes the following steps to compute power
spectrum or power spectral density:
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
Inputs/Outputs
• export mode —
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
1168 ni.com
Functions
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signal —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
• dB On (F) —
dB On specifies whether the results are expressed in decibels. The default is FALSE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how this VI computes the averaging. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
Power Spectrum / PSD returns the averaged power spectrum or power spectral density and the
1170 ni.com
Functions
• f0 —
• df —
• magnitude —
magnitude is the magnitude of the averaged power spectrum or power spectral density.
If the input signal is in volts (V), magnitude has units of volts-rms squared (Vrms²) for power
spectrum and volts-rms squared per hertz (Vrms²/Hz) for power spectral density. If the input
signal is not in volts, magnitude has units of the input signal unit-rms squared for power
spectrum, and input signal unit-rms squared per hertz for power spectral density. If dB On is
TRUE and the input signal is in volts, magnitude has units of dBV for power spectrum and
dBV/Hz for power spectral density.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
The FFT Power Spectrum VI completes the following steps to compute power
spectrum or power spectral density:
3. Averages the current power spectrum/power spectral density with the power
spectra/power spectral densities computed in previous calls to the VI since the last
time the averaging process was restarted.
4. Returns the averaged power spectrum or power spectral densities in Power
Spectrum/PSD.
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
1172 ni.com
Functions
Inputs/Outputs
• export mode —
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signals —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
• dB On (F) —
dB On specifies whether the results are expressed in decibels. The default is FALSE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how this VI computes the averaging. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
1174 ni.com
Functions
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
Power Spectrum / PSD returns the averaged power spectrum or power spectral density and the
frequency scale, according to export mode.
• f0 —
• df —
• magnitude —
magnitude is the magnitude of the averaged power spectrum or power spectral density.
If the input signal is in volts (V), magnitude has units of volts-rms squared (Vrms²) for power
spectrum and volts-rms squared per hertz (Vrms²/Hz) for power spectral density. If the input
signal is not in volts, magnitude has units of the input signal unit-rms squared for power
spectrum, and input signal unit-rms squared per hertz for power spectral density. If dB On is
TRUE and the input signal is in volts, magnitude has units of dBV for power spectrum and
dBV/Hz for power spectral density.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
The FFT Power Spectrum VI completes the following steps to compute power
spectrum or power spectral density:
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
1176 ni.com
Functions
the multichannel case and use the single-channel version in a For Loop to
continuously process multiple channels by indexing an array of waveforms.
Inputs/Outputs
• export mode —
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signal —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
• dB On (F) —
dB On specifies whether the results are expressed in decibels. The default is FALSE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how this VI computes the averaging. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
1178 ni.com
Functions
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
Power Spectrum / PSD returns the averaged power spectrum or power spectral density and the
frequency scale, according to export mode.
• f0 —
• df —
• magnitude —
magnitude is the magnitude of the averaged power spectrum or power spectral density.
If the input signal is in volts (V), magnitude has units of volts-rms squared (Vrms²) for power
spectrum and volts-rms squared per hertz (Vrms²/Hz) for power spectral density. If the input
signal is not in volts, magnitude has units of the input signal unit-rms squared for power
spectrum, and input signal unit-rms squared per hertz for power spectral density. If dB On is
TRUE and the input signal is in volts, magnitude has units of dBV for power spectrum and
dBV/Hz for power spectral density.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
The FFT Power Spectrum VI completes the following steps to compute power
spectrum or power spectral density:
1180 ni.com
Functions
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
Inputs/Outputs
• export mode —
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signals —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
1182 ni.com
Functions
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
• dB On (F) —
dB On specifies whether the results are expressed in decibels. The default is FALSE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how this VI computes the averaging. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
Power Spectrum / PSD returns the averaged power spectrum or power spectral density and the
frequency scale, according to export mode.
• f0 —
• df —
• magnitude —
magnitude is the magnitude of the averaged power spectrum or power spectral density.
If the input signal is in volts (V), magnitude has units of volts-rms squared (Vrms²) for power
spectrum and volts-rms squared per hertz (Vrms²/Hz) for power spectral density. If the input
signal is not in volts, magnitude has units of the input signal unit-rms squared for power
spectrum, and input signal unit-rms squared per hertz for power spectral density. If dB On is
TRUE and the input signal is in volts, magnitude has units of dBV for power spectrum and
dBV/Hz for power spectral density.
• averaging done —
1184 ni.com
Functions
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
The FFT Power Spectrum VI completes the following steps to compute power
spectrum or power spectral density:
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
the multichannel case and use the single-channel version in a For Loop to
continuously process multiple channels by indexing an array of waveforms.
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
1186 ni.com
Functions
labview\examples\Signal Processing\Waveform
Measurements\Waveform Measurements.lvproj
Related Information
Inputs/Outputs
• restart averaging (F) —
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signal —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
• view —
view defines how the different results from this VI are returned.
• dB On (F) —
dB On specifies whether the results are expressed in decibels. The default is FALSE.
1188 ni.com
Functions
convert to degree specifies whether the phase results are converted from radians to
degrees. The default is FALSE, which means that results are expressed in radians.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how this VI computes the averaging. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• magnitude —
magnitude returns the magnitude of the averaged FFT spectrum and the frequency scale.
• f0 —
• df —
• magnitude —
1190 ni.com
Functions
If the input signal is in volts (V), magnitude has units of volts-rms (Vrms). If the input signal is
not in volts, magnitude has units of the input signal unit-rms. If dB On is TRUE and the
input signal is in volts, magnitude has units of dBV.
• phase —
phase returns the phase of the averaged FFT spectrum and the frequency scale.
• f0 —
• df —
• phase —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
labview\examples\Signal Processing\Waveform
Measurements\Waveform Measurements.lvproj
Related Information
Note
1192 ni.com
Functions
time signals.
Inputs/Outputs
• restart averaging (F) —
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signals —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
• view —
view defines how the different results from this VI are returned.
• dB On (F) —
dB On specifies whether the results are expressed in decibels. The default is FALSE.
convert to degree specifies whether the phase results are converted from radians to
degrees. The default is FALSE, which means that results are expressed in radians.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how this VI computes the averaging. The
1194 ni.com
Functions
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
• magnitudes —
magnitudes is an array of magnitudes of the averaged FFT spectra, one per input waveform.
• f0 —
• df —
• magnitude —
If the input signal is in volts (V), magnitude has units of volts-rms (Vrms). If the input signal is
not in volts, magnitude has units of the input signal unit-rms. If dB On is TRUE and the
input signal is in volts, magnitude has units of dBV.
• phases —
phases is an array of phases of the averaged FFT spectra, one per input waveform.
• f0 —
• df —
• phase —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
1196 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
labview\examples\Signal Processing\Waveform
Measurements\Waveform Measurements.lvproj
Related Information
Inputs/Outputs
• restart averaging (F) —
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signal —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
1198 ni.com
Functions
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
• view —
view defines how the different results from this VI are returned.
• dB On (F) —
dB On specifies whether the results are expressed in decibels. The default is FALSE.
convert to degree specifies whether the phase results are converted from radians to
degrees. The default is FALSE, which means that results are expressed in radians.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how this VI computes the averaging. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
1200 ni.com
Functions
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• magnitude —
magnitude returns the magnitude of the averaged FFT spectrum and the frequency scale.
• f0 —
• df —
• magnitude —
If the input signal is in volts (V), magnitude has units of volts-rms (Vrms). If the input signal is
not in volts, magnitude has units of the input signal unit-rms. If dB On is TRUE and the
input signal is in volts, magnitude has units of dBV.
• phase —
phase returns the phase of the averaged FFT spectrum and the frequency scale.
• f0 —
• df —
• phase —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
1202 ni.com
Functions
labview\examples\Signal Processing\Waveform
Measurements\Waveform Measurements.lvproj
Related Information
Inputs/Outputs
• restart averaging (F) —
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signals —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
• view —
view defines how the different results from this VI are returned.
• dB On (F) —
dB On specifies whether the results are expressed in decibels. The default is FALSE.
1204 ni.com
Functions
convert to degree specifies whether the phase results are converted from radians to
degrees. The default is FALSE, which means that results are expressed in radians.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how this VI computes the averaging. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• magnitudes —
magnitudes is an array of magnitudes of the averaged FFT spectra, one per input waveform.
• f0 —
• df —
• magnitude —
If the input signal is in volts (V), magnitude has units of volts-rms (Vrms). If the input signal is
not in volts, magnitude has units of the input signal unit-rms. If dB On is TRUE and the
input signal is in volts, magnitude has units of dBV.
• phases —
1206 ni.com
Functions
phases is an array of phases of the averaged FFT spectra, one per input waveform.
• f0 —
• df —
• phase —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
labview\examples\Signal Processing\Waveform
Measurements\Waveform Measurements.lvproj
Related Information
The FFT Spectrum (Real-IM) VI completes the following steps to compute real part and
imaginary part:
1208 ni.com
Functions
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
• labview\examples\Signal Processing\Waveform
Measurements\Waveform Measurements.lvproj
Related Information
real and imaginary parts. Wire data to the time signal input to determine the
polymorphic instance to use or manually select the instance.
Inputs/Outputs
• restart averaging (F) —
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signal —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
1210 ni.com
Functions
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how this VI computes the averaging. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• real part —
real part returns the real part of the averaged FFT spectrum and the frequency scale.
• f0 —
• df —
• real part —
If the input signal is in volts (V), real part has units of volts-rms (Vrms). If the input signal is
not in volts, real part has units of the input signal unit-rms.
• imaginary part —
1212 ni.com
Functions
imaginary part returns the imaginary part of the averaged FFT spectrum and the frequency
scale.
• f0 —
• df —
• imaginary part —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
The FFT Spectrum (Real-IM) VI completes the following steps to compute real part and
imaginary part:
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
• labview\examples\Signal Processing\Waveform
Measurements\Waveform Measurements.lvproj
Related Information
Note
1214 ni.com
Functions
Inputs/Outputs
• restart averaging (F) —
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signals —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how this VI computes the averaging. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
1216 ni.com
Functions
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• real parts —
real parts returns an array of the real part of the averaged FFT spectra, one per input waveform.
• f0 —
• df —
• real part —
If the input signal is in volts (V), real part has units of volts-rms (Vrms). If the input signal is
not in volts, real part has units of the input signal unit-rms.
• imaginary parts —
imaginary parts returns the imaginary part of the averaged FFT spectra and the frequency scale.
• f0 —
• df —
• imaginary part —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
The FFT Spectrum (Real-IM) VI completes the following steps to compute real part and
imaginary part:
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
1218 ni.com
Functions
• labview\examples\Signal Processing\Waveform
Measurements\Waveform Measurements.lvproj
Related Information
Inputs/Outputs
• restart averaging (F) —
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
• time signal —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how this VI computes the averaging. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
1220 ni.com
Functions
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• real part —
real part returns the real part of the averaged FFT spectrum and the frequency scale.
• f0 —
• df —
• real part —
If the input signal is in volts (V), real part has units of volts-rms (Vrms). If the input signal is
not in volts, real part has units of the input signal unit-rms.
• imaginary part —
imaginary part returns the imaginary part of the averaged FFT spectrum and the frequency
scale.
• f0 —
• df —
• imaginary part —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
1222 ni.com
Functions
The FFT Spectrum (Real-IM) VI completes the following steps to compute real part and
imaginary part:
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
• labview\examples\Signal Processing\Waveform
Measurements\Waveform Measurements.lvproj
Related Information
Inputs/Outputs
• restart averaging (F) —
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signals —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
1224 ni.com
Functions
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how this VI computes the averaging. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• real parts —
real parts returns an array of the real part of the averaged FFT spectra, one per input waveform.
• f0 —
• df —
• real part —
1226 ni.com
Functions
If the input signal is in volts (V), real part has units of volts-rms (Vrms). If the input signal is
not in volts, real part has units of the input signal unit-rms.
• imaginary parts —
imaginary parts returns the imaginary part of the averaged FFT spectra and the frequency scale.
• f0 —
• df —
• imaginary part —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
The FFT Spectrum (Real-IM) VI completes the following steps to compute real part and
imaginary part:
both one-shot mode, meaning a single call, and continuous mode, meaning multiple
calls with history. The single-channel version can perform multichannel
measurements only in one-shot mode. If you want to make multichannel
measurements in continuous mode, use the multichannel version of this VI.
The single-channel version of this VI maintains internal state information for a single
channel only. Calling the single-channel version to process another channel without
using the restart averaging control to clear the history results in an unexpected
behavior of this VI. The unexpected behavior results from the VI passing the internal
state information from one channel to another.
• labview\examples\Signal Processing\Waveform
Measurements\Waveform Measurements.lvproj
Related Information
1228 ni.com
Functions
Typically, time signal X is the stimulus, and time signal Y is the response of the system.
Each time waveform corresponds to a single FFT block. You have to pass each time
waveform individually to this VI.
Examples
Inputs/Outputs
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signal X —
• time signal Y —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
1230 ni.com
Functions
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
• view —
view defines how the different results from this VI are returned.
• dB On (F) —
dB On specifies whether the results are expressed in decibels. The default is FALSE.
convert to degree specifies whether the phase results are converted from radians to
degrees. The default is FALSE, which means that results are expressed in radians.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters defines how the averaging is computed. The specifications of the
parameters include the type of averaging, the type of weighting, and the number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• FRF Mode —
FRF mode specifies how to compute the frequency response function (FRF).
If you know that noise, which does not propagate through the system under test, infiltrates the
input or output signals, you can select the method used for computing the frequency response
function (H1, H2, H3) to minimize the measurement error.
• averaging done —
1232 ni.com
Functions
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• magnitude —
magnitude returns the magnitude of the averaged frequency response and the frequency scale.
• f0 —
• df —
• magnitude —
• phase —
phase returns the phase of the averaged frequency response and the frequency scale.
• f0 —
• df —
• phase —
• coherence —
• f0 —
• df —
• coherence —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
Typically, time signal X is the stimulus, and time signal Y is the response of the system.
Each time waveform corresponds to a single FFT block. You have to pass each time
waveform individually to this VI.
Examples
1234 ni.com
Functions
Inputs/Outputs
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signal X —
• time signals Y —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
• view —
view defines how the different results from this VI are returned.
• dB On (F) —
dB On specifies whether the results are expressed in decibels. The default is FALSE.
convert to degree specifies whether the phase results are converted from radians to
degrees. The default is FALSE, which means that results are expressed in radians.
1236 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters defines how the averaging is computed. The specifications of the
parameters include the type of averaging, the type of weighting, and the number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• FRF Mode —
FRF mode specifies how to compute the frequency response function (FRF).
If you know that noise, which does not propagate through the system under test, infiltrates the
input or output signals, you can select the method used for computing the frequency response
function (H1, H2, H3) to minimize the measurement error.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• magnitudes —
magnitudes returns an array of the magnitudes of the averaged frequency responses and the
frequency scales.
• f0 —
• df —
• magnitude —
• phases —
phases returns an array of the phases of the averaged frequency responses and the frequency
scales.
• f0 —
• df —
1238 ni.com
Functions
• phase —
• coherences —
coherences returns an array of the coherence functions of the averaged frequency responses
and the frequency scales.
• f0 —
• df —
• coherence —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
Typically, time signal X is the stimulus, and time signal Y is the response of the system.
Each time waveform corresponds to a single FFT block. You have to pass each time
waveform individually to this VI.
Examples
Inputs/Outputs
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signals X —
1240 ni.com
Functions
• time signal Y —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
• view —
view defines how the different results from this VI are returned.
• dB On (F) —
dB On specifies whether the results are expressed in decibels. The default is FALSE.
convert to degree specifies whether the phase results are converted from radians to
degrees. The default is FALSE, which means that results are expressed in radians.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters defines how the averaging is computed. The specifications of the
parameters include the type of averaging, the type of weighting, and the number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
1242 ni.com
Functions
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• FRF Mode —
FRF mode specifies how to compute the frequency response function (FRF).
If you know that noise, which does not propagate through the system under test, infiltrates the
input or output signals, you can select the method used for computing the frequency response
function (H1, H2, H3) to minimize the measurement error.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• magnitudes —
magnitudes returns an array of the magnitudes of the averaged frequency responses and the
frequency scales.
• f0 —
• df —
• magnitude —
• phases —
phases returns an array of the phases of the averaged frequency responses and the frequency
scales.
• f0 —
• df —
• phase —
• coherences —
coherences returns an array of the coherence functions of the averaged frequency responses
and the frequency scales.
• f0 —
• df —
• coherence —
• averages completed —
1244 ni.com
Functions
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
Typically, time signal X is the stimulus, and time signal Y is the response of the system.
Each time waveform corresponds to a single FFT block. You have to pass each time
waveform individually to this VI.
Examples
Inputs/Outputs
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signals X —
• time signals Y —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
1246 ni.com
Functions
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
• view —
view defines how the different results from this VI are returned.
• dB On (F) —
dB On specifies whether the results are expressed in decibels. The default is FALSE.
convert to degree specifies whether the phase results are converted from radians to
degrees. The default is FALSE, which means that results are expressed in radians.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters defines how the averaging is computed. The specifications of the
parameters include the type of averaging, the type of weighting, and the number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• FRF Mode —
FRF mode specifies how to compute the frequency response function (FRF).
If you know that noise, which does not propagate through the system under test, infiltrates the
input or output signals, you can select the method used for computing the frequency response
function (H1, H2, H3) to minimize the measurement error.
• X-Y pairing —
1248 ni.com
Functions
ordered pairs (default)—Calculates the frequency response of the first channel in time signals
X against the first channel in time signals Y, then the second channel in time signals X against
the second channel in time signals Y, and so on.
• If there is one channel in time signals X and one channel in time signals Y, the result is one
output.
• If there are multiple channels in time signals X and one channel in time signals Y, the
analysis result is the first channel in time signals X against the single channel in time
signals Y. LabVIEW ignores the rest of the channels in time signals X, and the VI returns a
warning.
0 • If there is one channel in time signals X and multiple channels in time signals Y, the
analysis result is the single channel in time signals X against the first channel in time
signals Y. LabVIEW ignores the rest of the channels in time signals Y, and the VI returns a
warning.
• If there are multiple channels in both time signals X and time signals Y, the analysis result
is the first channel in time signals X against the first channel in time signals Y, the second
channel in time signals X against the second channel in time signals Y, and so on. If there
is a mismatched number of channels, the VI ignores unmatched channels and returns a
warning.
• If either input signal is empty, the result is empty, and the VI returns an error.
all cross pairs—Calculates the frequency response of the first channel in time signals X against
each channel in time signals Y, then the second channel in time signals X against each channel
in time signals Y, and so on.
• If there is one channel in time signals X and one channel in time signals Y, the result is one
output.
• If there are multiple channels in time signals X and one channel in time signals Y, the
analysis result is the first channel in time signals X against the single channel in time
signals Y, then the second channel in time signals X against the single channel in time
1 signals Y, and so on. The output contains the same number of signals as time signals X.
• If there is one channel in time signals X and multiple channels in time signals Y, the
analysis result is the single channel in time signals X against the first channel in time
signals Y, then the single channel in time signals X against the second channel in time
signals Y, and so on. The output contains the same number of signals as time signals Y.
• If there are N channels in time signals X and M channels in time signals Y, the analysis
result is the matrix set of time signals X versus time signals Y. LabVIEW returns the signals
in the order 1 – 1, ..., 1 – M, 2 – 1, ..., 2 – M, ..., N – M.
• If either input signal is empty, the result is empty, and the VI returns an error.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• magnitudes —
magnitudes returns an array of the magnitudes of the averaged frequency responses and the
frequency scales.
• f0 —
• df —
• magnitude —
• phases —
phases returns an array of the phases of the averaged frequency responses and the frequency
scales.
• f0 —
• df —
• phase —
• coherences —
coherences returns an array of the coherence functions of the averaged frequency responses
1250 ni.com
Functions
• f0 —
• df —
• coherence —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
Typically, time signal X is the stimulus, and time signal Y is the response of the system.
Each time waveform corresponds to a single FFT block. You have to pass each time
waveform individually to this VI.
Examples
Typically, time signal X is the stimulus, and time signal Y is the response of the system.
Each time waveform corresponds to a single FFT block. You have to pass each time
waveform individually to this VI.
Examples
Inputs/Outputs
• window parameter —
1252 ni.com
Functions
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signal X —
• time signal Y —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how the averaging is computed. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
1254 ni.com
Functions
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• FRF Mode —
FRF mode specifies how to compute the frequency response function (FRF).
If you know that noise, which does not propagate through the system under test, infiltrates the
input or output signals, you can select the method used for computing the frequency response
function (H1, H2, H3) to minimize the measurement error.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• real part —
real part returns the real part of the averaged frequency response and the frequency scale.
• f0 —
• df —
• real part —
• imaginary part —
imaginary part returns the imaginary part of the averaged frequency response and the
frequency scale.
• f0 —
• df —
• imaginary part —
• coherence —
• f0 —
• df —
• coherence —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
1256 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Typically, time signal X is the stimulus, and time signal Y is the response of the system.
Each time waveform corresponds to a single FFT block. You have to pass each time
waveform individually to this VI.
Examples
Inputs/Outputs
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signal X —
• time signals Y —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
1258 ni.com
Functions
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how the averaging is computed. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• FRF Mode —
FRF mode specifies how to compute the frequency response function (FRF).
If you know that noise, which does not propagate through the system under test, infiltrates the
input or output signals, you can select the method used for computing the frequency response
function (H1, H2, H3) to minimize the measurement error.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• real parts —
real parts returns an array of the real parts of the averaged frequency responses and the
frequency scales.
• f0 —
• df —
• real part —
• imaginary parts —
imaginary parts returns an array of the imaginary parts of the averaged frequency responses
1260 ni.com
Functions
• f0 —
• df —
• imag part —
• coherences —
coherences returns an array of the coherence functions of the averaged frequency responses
and the frequency scales.
• f0 —
• df —
• coherence —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
Typically, time signal X is the stimulus, and time signal Y is the response of the system.
Each time waveform corresponds to a single FFT block. You have to pass each time
waveform individually to this VI.
Examples
Inputs/Outputs
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
restart averaging specifies whether the VI restarts the selected averaging process. If restart
1262 ni.com
Functions
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signals X —
• time signal Y —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how the averaging is computed. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• FRF Mode —
FRF mode specifies how to compute the frequency response function (FRF).
If you know that noise, which does not propagate through the system under test, infiltrates the
input or output signals, you can select the method used for computing the frequency response
function (H1, H2, H3) to minimize the measurement error.
1264 ni.com
Functions
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• real parts —
real parts returns an array of the real parts of the averaged frequency responses and the
frequency scales.
• f0 —
• df —
• real part —
• imaginary parts —
imaginary parts returns an array of the imaginary parts of the averaged frequency responses
and the frequency scales.
• f0 —
• df —
• imag part —
• coherences —
coherences returns an array of the coherence functions of the averaged frequency responses
and the frequency scales.
• f0 —
• df —
• coherence —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
Typically, time signal X is the stimulus, and time signal Y is the response of the system.
Each time waveform corresponds to a single FFT block. You have to pass each time
waveform individually to this VI.
Examples
1266 ni.com
Functions
Inputs/Outputs
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signals X —
• time signals Y —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters is a cluster that defines how the averaging is computed. The
specifications of the parameters include the type of averaging, the type of weighting, and the
number of averages.
1268 ni.com
Functions
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• FRF Mode —
FRF mode specifies how to compute the frequency response function (FRF).
If you know that noise, which does not propagate through the system under test, infiltrates the
input or output signals, you can select the method used for computing the frequency response
function (H1, H2, H3) to minimize the measurement error.
• X-Y pairing —
ordered pairs (default)—Calculates the frequency response of the first channel in time signals
X against the first channel in time signals Y, then the second channel in time signals X against
the second channel in time signals Y, and so on.
• If there is one channel in time signals X and one channel in time signals Y, the result is one
output.
• If there are multiple channels in time signals X and one channel in time signals Y, the
analysis result is the first channel in time signals X against the single channel in time
signals Y. LabVIEW ignores the rest of the channels in time signals X, and the VI returns a
warning.
0 • If there is one channel in time signals X and multiple channels in time signals Y, the
analysis result is the single channel in time signals X against the first channel in time
signals Y. LabVIEW ignores the rest of the channels in time signals Y, and the VI returns a
warning.
• If there are multiple channels in both time signals X and time signals Y, the analysis result
is the first channel in time signals X against the first channel in time signals Y, the second
channel in time signals X against the second channel in time signals Y, and so on. If there
is a mismatched number of channels, the VI ignores unmatched channels and returns a
warning.
• If either input signal is empty, the result is empty, and the VI returns an error.
all cross pairs—Calculates the frequency response of the first channel in time signals X against
each channel in time signals Y, then the second channel in time signals X against each channel
in time signals Y, and so on.
• If there is one channel in time signals X and one channel in time signals Y, the result is one
output.
• If there are multiple channels in time signals X and one channel in time signals Y, the
analysis result is the first channel in time signals X against the single channel in time
signals Y, then the second channel in time signals X against the single channel in time
1 signals Y, and so on. The output contains the same number of signals as time signals X.
• If there is one channel in time signals X and multiple channels in time signals Y, the
analysis result is the single channel in time signals X against the first channel in time
signals Y, then the single channel in time signals X against the second channel in time
signals Y, and so on. The output contains the same number of signals as time signals Y.
• If there are N channels in time signals X and M channels in time signals Y, the analysis
result is the matrix set of time signals X versus time signals Y. LabVIEW returns the signals
in the order 1 – 1, ..., 1 – M, 2 – 1, ..., 2 – M, ..., N – M.
• If either input signal is empty, the result is empty, and the VI returns an error.
• averaging done —
1270 ni.com
Functions
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• real parts —
real parts returns an array of the real parts of the averaged frequency responses and the
frequency scales.
• f0 —
• df —
• real part —
• imaginary parts —
imaginary parts returns an array of the imaginary parts of the averaged frequency responses
and the frequency scales.
• f0 —
• df —
• imag part —
• coherences —
coherences returns an array of the coherence functions of the averaged frequency responses
• f0 —
• df —
• coherence —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
Typically, time signal X is the stimulus, and time signal Y is the response of the system.
Each time waveform corresponds to a single FFT block. You have to pass each time
waveform individually to this VI.
Examples
1272 ni.com
Functions
Inputs/Outputs
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signal X —
• time signal Y —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
• view —
view defines how the different results from this VI are returned.
• dB On (F) —
dB On specifies whether the results are expressed in decibels. The default is FALSE.
convert to degree specifies whether the phase results are converted from radians to
degrees. The default is FALSE, which means that results are expressed in radians.
1274 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters defines how the averaging is computed. The specifications of the
parameters include the type of averaging, the type of weighting, and the number of averages.
• averaging mode —
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• magnitude —
magnitude returns the magnitude of the averaged cross power spectrum and the frequency
scale.
• f0 —
• df —
• magnitude —
• phase —
phase returns the phase of the averaged cross power spectrum and the frequency scale.
• f0 —
• df —
• phase —
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
Typically, time signal X is the stimulus, and time signal Y is the response of the system.
1276 ni.com
Functions
Each time waveform corresponds to a single FFT block. You have to pass each time
waveform individually to this VI.
Inputs/Outputs
• window parameter —
window parameter specifies the beta parameter for a Kaiser window, the standard deviation for
a Gaussian window, and the ratio, s, of the main lobe to the side lobe for a Dolph-Chebyshev
window. If window is any other window, this VI ignores this input.
The default value of window parameter is NaN, which sets beta to 0 for a Kaiser window, the
standard deviation to 0.2 for a Gaussian window, and s to 60 for a Dolph-Chebyshev window.
restart averaging specifies whether the VI restarts the selected averaging process. If restart
averaging is TRUE, the VI restarts the selected averaging process. If restart averaging is FALSE,
the VI does not restart the selected averaging process. The default is FALSE.
When you call this VI for the first time, the averaging process restarts automatically. A typical
case when you should restart averaging is when a major input change occurs in the middle of
the averaging process.
• time signal X —
• time signal Y —
• window —
window (Hanning) is the time-domain window to apply to the time signal. The default window
is Hanning.
0 Rectangle
1 Hanning (default)
2 Hamming
3 Blackman-Harris
4 Exact Blackman
5 Blackman
6 Flat Top
7 4 Term B-Harris
8 7 Term B-Harris
9 Low Sidelobe
11 Blackman Nutall
30 Triangle
31 Bartlett-Hanning
32 Bohman
33 Parzen
34 Welch
60 Kaiser
61 Dolph-Chebyshev
62 Gaussian
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• averaging parameters —
averaging parameters defines how the averaging is computed. The specifications of the
parameters include the type of averaging, the type of weighting, and the number of averages.
• averaging mode —
1278 ni.com
Functions
No averaging
0
(default)
1 Vector averaging
2 RMS averaging
3 Peak hold
• weighting mode —
weighting mode specifies the weighting mode for RMS and vector averaging.
0 Linear
Exponential
1
(default)
• number of averages —
number of averages specifies the number of averages used for RMS and vector averaging. If
weighting mode is exponential, the averaging process is continuous. If weighting mode is
linear, the averaging process stops after this VI computes the selected number of averages.
• averaging done —
averaging done returns TRUE when averages completed is greater than or equal to the number
of averages specified in averaging parameters. Otherwise, averaging done returns FALSE.
averaging done is always TRUE if the selected averaging mode is No averaging.
• real part —
real part returns the real part of the averaged cross power spectrum and the frequency scale.
• f0 —
• df —
• real part —
real part is the real part of the averaged cross power spectrum.
• imaginary part —
imaginary part returns the imaginary part of the averaged cross power spectrum and the
frequency scale.
• f0 —
• df —
• imaginary part —
imaginary part is the imaginary part of the averaged cross power spectrum.
• averages completed —
averages completed returns the number of averages completed by the VI at that time.
• error out —
error out contains error information. This output provides standard error out functionality.
Typically, time signal X is the stimulus, and time signal Y is the response of the system.
Each time waveform corresponds to a single FFT block. You have to pass each time
waveform individually to this VI.
Spectral Measurements
Performs FFT-based spectral measurements, such as the averaged magnitude
spectrum, power spectrum, and phase spectrum on a signal.
1280 ni.com
Functions
Option Description
Contains the following options:
• Magnitude (peak)—
Measures the spectrum and displays the results in terms of peak amplitude.
You typically use this measurement with more advanced measurements that
require magnitude and phase information. The magnitude of the spectrum is
measured in peak values. For example, a sine tone of amplitude A yields a
magnitude spectral value of A at the sine tone frequency. You can unwrap the
phase spectrum or convert it from radians to degrees by setting Phase to
Unwrap phase or Convert to degree, respectively. If you place a checkmark in
the Averaging checkbox, the phase of the spectrum is zero for averaging.
• Magnitude (RMS)—
Selected
Measures the spectrum and displays the results in terms of root-mean-square
Measurement
(RMS).
You typically use this measurement with more advanced measurements that
require magnitude and phase information. The magnitude of the spectrum is
measured in RMS values. For example, a sine tone of amplitude A yields a
magnitude spectral value of 0.707*A at the sine tone frequency. You can
unwrap the phase spectrum or convert it from radians to degrees by setting
Phase to Unwrap phase or Convert to degree, respectively. If you place a
checkmark in the Averaging checkbox, the phase of the spectrum is zero for
averaging.
• Power spectrum—
Measures the spectrum and displays the results in terms of power. All phase
information is lost in the computation.
Option Description
Measures the spectrum and displays the results in terms of power spectral
density (PSD).
• Linear—
1282 ni.com
Functions
Option Description
Refer to the Scaled Time Domain Window VI for information about coefficients and
window parameters for each window type.
• Peak hold—
• Vector—
Mode
Computes the average of complex FFT spectrum quantities directly. Vector
averaging eliminates noise from synchronous signals.
• RMS—
• Linear—
Weighting • Exponential—
Number of
Specifies the number of packets to average. The default is 10.
Averages
Option Description
Returns the spectrum only after the Express VI gathers the number of packets
you specify in Number of Averages.
• Unwrap phase—
Displays the first channel of Signals. This graph displays the incoming signal with
windowing applied.
Windowed
Input Signal If you wire data to the Express VI and run it, Windowed Input Signal displays real
data. If you close and reopen the Express VI, Windowed Input Signal displays
sample data until you run the VI again.
1284 ni.com
Functions
Inputs/Outputs
• Restart Averaging — Specifies whether to restart the selected averaging process. The
default is FALSE. When you call this Express VI for the first time, the averaging process starts
automatically.
This input appears only if you place a checkmark in the Averaging checkbox.
To compute the FFT power spectrum, LabVIEW converts the two-sided power spectrum to the
single-sided power spectrum.
• PSD — Returns the FFT power spectral density and displays the results in RMS-squared per
Hz units.
• FFT - (Peak) — Returns the FFT magnitude spectrum and displays the results in peak units.
• averaging done — Returns TRUE when the number of averages completed equals or
exceeds Number of Averages.
• Phase —
Returns the FFT phase spectrum and displays the results in degrees or radians.
• f0 —
• df —
• phase —
FFT-based spectral computations assume that the finite block of signal data represents
one period of a periodic signal. The computed spectrum of this effective periodically
extended signal shows energy spreading into frequencies that were not present in the
original signal. To reduce this spectral leakage, use smoothing windows to taper the
sharp transitions in the effective signal. You do not typically use windows if you can
acquire an integer number of cycles of each frequency component measured or if you
Examples
Components
Returns TRUE when the number of averages completed equals or exceeds Number of
Averages.
Specifies whether to restart the selected averaging process. The default is FALSE. When
you call this Express VI for the first time, the averaging process starts automatically.
Measures the spectrum and displays the results in terms of power spectral density
(PSD).
Measures the spectrum and displays the results in terms of power. All phase
information is lost in the computation.
Measures the spectrum and displays the results in terms of root-mean-square (RMS).
Measures the spectrum and displays the results in terms of peak amplitude.
1286 ni.com
Functions
Displays the first channel of Signals. This graph displays the incoming signal with
windowing applied.
Contains error information. This output provides standard error out functionality.
Specifies linear averaging, which averages over the number of packets you specify in
Number of Averages in a non-weighted manner.
Specifies exponential averaging, which averages over the number of packets you
specify in Number of Averages in a weighted manner. Exponential averaging gives the
most recent packets more weighting in the average than older packets.
Returns the spectrum only after the Express VI gathers the number of packets you
specify in Number of Averages.
Computes the average of complex FFT spectrum quantities directly. Vector averaging
eliminates noise from synchronous signals.
Performs averaging at each frequency line separately, retaining peak levels from one
FFT record to the next.
Option Description
Specifies how to handle multiple signals in each input.
• Ordered pairs—
Calculates the frequency response of the first channel in Input Signal A against
the first channel in Input Signal B, then the second channel in Input Signal A
against the second channel in Input Signal B, and so on.
◦ If there is one channel on Input Signal A and one channel on Input Signal B,
the result is one output.
Input ◦ If there are multiple channels on Input Signal A and one channel on Input
Comparison Signal B, the analysis result is the first channel in Input Signal A against the
single channel in Input Signal B. The rest of the channels in Input Signal A
are ignored and the VI returns a warning.
◦ If there is one channel on Input Signal A and multiple channels on Input
Signal B, the analysis result is the single channel in Input Signal A against
the first channel in Input Signal B. The rest of the channels in Input Signal B
are ignored and the VI returns a warning.
◦ If there are multiple channels on both Input Signal A and Input Signal B, the
analysis result is the first channel in Input Signal A against the first channel
1288 ni.com
Functions
Option Description
in Input Signal B, the second channel in Input Signal A against the second
channel in Input Signal B, and so on. If there is a mismatched number of
channels, the VI ignores unmatched channels and returns a warning.
◦ If either Input Signal is empty, the result is empty and the VI returns an error.
• All cross pairs—
Calculates the frequency response of the first channel in Input Signal A against
each channel in Input Signal B, then the second channel in Input Signal A
against each channel in Input Signal B, and so on.
◦ If there is one channel on Input Signal A and one channel on Input Signal B,
the result is one output.
◦ If there are multiple channels on Input Signal A and one channel on Input
Signal B, the analysis result is the first channel in Input Signal A against the
single channel in Input Signal B, then the second channel in Input Signal A
against the single channel in Input Signal B, and so on. The output contains
the same number of signals as Input Signal A.
◦ If there is one channel on Input Signal A and multiple channels on Input
Signal B, the analysis result is the single channel in Input Signal A against
the first channel in Input Signal B, then the single channel in Input Signal A
against the second channel in Input Signal B, and so on. The output
contains the same number of signals as Input Signal B.
◦ If there are M channels on Input Signal A and N channels on Input Signal B,
the analysis result is the matrix set of Input Signal A versus Input Signal B.
The signals are returned in the order 1-1, ... 1-N, 2-1, ... M-N.
◦ If either Input Signal is empty, the result is empty and the VI returns an error.
• Magnitude—
• Phase—
Option Description
Select to include phase results in the output. Select Unwrap phase to return the
phase results in radians. Select Convert to degree to return the phase results in
degrees.
◦ Unwrap phase—
◦ Convert to degree—
• Real—
• Imaginary—
• Coherence—
Refer to the Scaled Time Domain Window VI for information about coefficients and
window parameters for each window type.
1290 ni.com
Functions
Option Description
• Vector—
• Linear—
Specifies linear averaging, which averages over the number of packets you
specify in Number of Averages in a non-weighted manner.
Weighting
• Exponential—
Specifies exponential averaging, which averages over the number of packets you
specify in Number of Averages in a weighted manner. Exponential averaging
gives the most recent packets more weighting in the average than older packets.
Number of
Specifies the number of packets to average. The default is 10.
Averages
• Every iteration—
Returns the spectrum only after the Express VI gathers the number of packets
you specify in Number of Averages.
Option Description
Displays the first channel of Input Signal A. This graph displays the first incoming
signal with windowing applied.
Windowed
Input Signal
If you wire data to the Express VI and run it, Windowed Input Signal A displays real
A
data. If you close and reopen the Express VI, Windowed Input Signal A displays
sample data until you run the VI again.
Displays the first channel of Input Signal B. This graph displays the second incoming
signal with windowing applied.
Windowed
Input Signal
If you wire data to the Express VI and run it, Windowed Input Signal B displays real
B
data. If you close and reopen the Express VI, Windowed Input Signal B displays
sample data until you run the VI again.
If you wire data to the Express VI and run it, Results displays real data. If you close
and reopen the Express VI, Results displays sample data until you run the VI again.
• Magnitude—
This page appears only if you place a checkmark in the Magnitude checkbox.
• Phase—
Select to include phase results in the output. Select Unwrap phase to return the
Results
phase results in radians. Select Convert to degree to return the phase results in
degrees.
This page appears only if you place a checkmark in the Phase checkbox.
• Real—
This page appears only if you place a checkmark in the Real checkbox.
• Imaginary—
1292 ni.com
Functions
Option Description
This page appears only if you place a checkmark in the Imaginary checkbox.
• Coherence—
This page appears only if you place a checkmark in the Coherence checkbox.
Inputs/Outputs
• Input Signal A —
Contains the first input signal or signals. This is assumed to be the excitation. The input signals
must have the same number of data points, t0, and dt. If they do not, an error is returned.
Specifies whether to restart the selected averaging process. The default is FALSE. When you call
this Express VI for the first time, the averaging process starts automatically.
This input appears only if you place a checkmark in the Averaging checkbox.
• Input Signal B —
Contains the second input signal or signals. This is assumed to be the response. The input
signals must have the same number of data points, t0, and dt. If they do not, an error is returned.
• Magnitude —
This output appears only if you place a checkmark in the Magnitude checkbox.
• Imaginary —
This output appears only if you place a checkmark in the Imaginary checkbox.
• Real —
This output appears only if you place a checkmark in the Real checkbox.
• Averaging Done —
Returns TRUE when the number of averages completed equals or exceeds Number of Averages.
This output appears only if you place a checkmark in the Averaging checkbox.
• Coherence —
This output appears only if you place a checkmark in the Coherence checkbox.
• error out —
Contains error information. This output provides standard error out functionality.
• Phase —
This output appears only if you place a checkmark in the Phase checkbox.
Examples
Components
Calculates the frequency response of the first channel in Input Signal A against each
1294 ni.com
Functions
channel in Input Signal B, then the second channel in Input Signal A against each
channel in Input Signal B, and so on.
Calculates the frequency response of the first channel in Input Signal A against the
first channel in Input Signal B, then the second channel in Input Signal A against the
second channel in Input Signal B, and so on.
Select to return the magnitude results in decibels. Remove the checkmark from this
checkbox to return the magnitude results in the original units.
Displays the first channel of Input Signal A. This graph displays the first incoming
signal with windowing applied.
Specifies exponential averaging, which averages over the number of packets you
specify in Number of Averages in a weighted manner. Exponential averaging gives the
most recent packets more weighting in the average than older packets.
Returns the spectrum only after the Express VI gathers the number of packets you
specify in Number of Averages.
Displays the first channel of Input Signal B. This graph displays the second incoming
signal with windowing applied.
If you wire data to the Express VI and run it, Results displays real data. If you close and
reopen the Express VI, Results displays sample data until you run the VI again.
Select to include phase results in the output. Select Unwrap phase to return the phase
results in radians. Select Convert to degree to return the phase results in degrees.
Specifies linear averaging, which averages over the number of packets you specify in
Number of Averages in a non-weighted manner.
Distortion Measurements
Performs distortion measurements on a signal, such as tone analysis, total harmonic
distortion (THD), and signal in noise and distortion (SINAD).
Option Description
Distortion Contains the following options:
1296 ni.com
Functions
Option Description
• SINAD (dB)—
Calculates the measured signal in noise and distortion (SINAD). SINAD is defined
as the dB of the ratio of the RMS energy of Signals to the RMS energy of Signals
less the energy in the fundamental. To compute the THD Plus Noise in dB, negate
the SINAD.
Computes the measured total harmonic distortion up to and including the highest
harmonic. THD is defined as the ratio of the RMS sum of the harmonics to the
amplitude of the fundamental tone. To compute THD as a percentage, multiply it
by 100.
Specifies the harmonic to measure. This option is available only when you select
Specific harmonic level.
Specifies to include only frequencies less than the Nyquist frequency, or half the
sampling rate, in the harmonic search. This option is available only when you
select Total harmonic distortion or Specific harmonic level.
When you remove the checkmark from the Stop search at Nyquist checkbox, this
VI continues searching the frequency domain beyond the Nyquist frequency by
assuming that the higher frequency components have aliased according to the
following equation: aliased f = Fs – (f modulo Fs) where Fs = 1/dt = sampling rate
• Highest harmonic—
Controls the highest harmonic, including the fundamental tone, to use for the
harmonic analysis. For example, for third harmonic analysis, set Highest
harmonic to 3 to measure the fundamental, second, and third harmonic. This
option is available only when you select Total harmonic distortion or Specific
harmonic level.
Option Description
Contains the following options:
Controls the frequency domain search area, which is the center frequency and
width, to use for finding the fundamental tone frequency of the signal.
◦ Approximate frequency—
Center frequency to use in the frequency domain search for the fundamental
Search tone frequency. The default is 0. If you set Approximate frequency to –1, this
Frequency Express VI uses the tone with the highest amplitude as the fundamental tone.
This option is available only when you place a checkmark in the Search for
fundamental frequency checkbox.
Displays the measurements you configured this Express VI to perform and the
calculated values of those measurements. You can click any measurement listed in the
Results
Measurement column, and the corresponding value or plot appears in the Result
Preview graph.
Displays a preview of the measurement. The Result Preview plot indicates the value of
Result the selected measurement with a dotted line.
Preview
If you wire data to the Express VI and run the VI, Result Preview displays real data. If
1298 ni.com
Functions
Option Description
you close and reopen the Express VI, Result Preview displays sample data until you run
the VI again. If the cutoff frequency values are invalid, Result Preview does not display
valid data.
Inputs/Outputs
• Signals —
• error out —
Contains error information. This output provides standard error out functionality.
• SINAD (dB) —
Returns the measured signal in noise and distortion (SINAD). SINAD is defined as the dB of the
ratio of the RMS energy of Signals to the RMS energy of Signals less the energy in the
fundamental. To compute the THD Plus Noise in dB, negate the SINAD.
• Specific Harmonic —
• THD —
Returns the measured total harmonic distortion up to and including the highest harmonic. To
compute THD as a percentage, you must multiply it by 100.
Components
Displays the measurements you configured this Express VI to perform and the
calculated values of those measurements. You can click any measurement listed in the
Measurement column, and the corresponding value or plot appears in the Result
Preview graph.
Specifies the harmonic to measure. This option is available only when you select
Specific harmonic level.
Controls the highest harmonic, including the fundamental tone, to use for the
harmonic analysis. For example, for third harmonic analysis, set Highest harmonic to
3 to measure the fundamental, second, and third harmonic. This option is available
only when you select Total harmonic distortion or Specific harmonic level.
Controls the frequency domain search area, which is the center frequency and width,
to use for finding the fundamental tone frequency of the signal.
Frequency width, as a percentage of the sampling rate, to use for the frequency
domain search for the fundamental tone frequency. The default is 5. This option is
available only when you place a checkmark in the Search for fundamental frequency
checkbox.
Center frequency to use in the frequency domain search for the fundamental tone
frequency. The default is 0. If you set Approximate frequency to –1, this Express VI
uses the tone with the highest amplitude as the fundamental tone. This option is
available only when you place a checkmark in the Search for fundamental frequency
checkbox.
Calculates the measured signal in noise and distortion (SINAD). SINAD is defined as the
dB of the ratio of the RMS energy of Signals to the RMS energy of Signals less the
energy in the fundamental. To compute the THD Plus Noise in dB, negate the SINAD.
Computes the measured total harmonic distortion up to and including the highest
harmonic. THD is defined as the ratio of the RMS sum of the harmonics to the
amplitude of the fundamental tone. To compute THD as a percentage, multiply it by
100.
Displays a preview of the measurement. The Result Preview plot indicates the value of
the selected measurement with a dotted line.
1300 ni.com
Functions
Specifies to include only frequencies less than the Nyquist frequency, or half the
sampling rate, in the harmonic search. This option is available only when you select
Total harmonic distortion or Specific harmonic level.
Tone Measurements
Finds the single tone with the highest amplitude or searches a specified frequency
range to find the single tone with the highest amplitude. You also can find the
frequency and phase for a single tone.
Option Description
Contains the following options:
• Amplitude—
Calculates the amplitude of the detected single tone in volts peak (Vp).
• Phase—
Option Description
The default is 10. This option is available only when you place a checkmark in
the Search for Specific Frequency checkbox.
Displays the measurements you configured this Express VI to perform and the
calculated values of those measurements. You can click any measurement listed in
Results
the Measurement column, and the corresponding value or plot appears in the
Result Preview graph.
Input Signal If you wire data to the Express VI and run it, Input Signal displays real data. If you
close and reopen the Express VI, Input Signal displays sample data until you run
the Express VI again.
Displays a preview of the measurement. The Result Preview plot indicates the
value of the selected measurement with a dotted line.
Result
If you wire data to the Express VI and run the VI, Result Preview displays real data.
Preview
If you close and reopen the Express VI, Result Preview displays sample data until
you run the VI again. If the cutoff frequency values are invalid, Result Preview does
not display valid data.
Center frequency to use in the frequency domain search for the single tone. The
Approximate
default is 10. This option is available only when you place a checkmark in the
frequency (Hz)
Search for Specific Frequency checkbox.
1302 ni.com
Functions
Inputs/Outputs
• Signals —
• error out —
Contains error information. This output provides standard error out functionality.
• Phase —
• Frequency —
• Amplitude —
Returns the amplitude of the detected single tone in volts peak (Vp).
Examples
Components
Displays the measurements you configured this Express VI to perform and the
calculated values of those measurements. You can click any measurement listed in the
Measurement column, and the corresponding value or plot appears in the Result
Preview graph.
Center frequency to use in the frequency domain search for the single tone. The
default is 10. This option is available only when you place a checkmark in the Search
for Specific Frequency checkbox.
Calculates the amplitude of the detected single tone in volts peak (Vp).
Displays a preview of the measurement. The Result Preview plot indicates the value of
the selected measurement with a dotted line.
Frequency width, as a percentage of the sampling rate, for the frequency domain
search for the single tone frequency. The default is 5. This option is available only
when you place a checkmark in the Search for Specific Frequency checkbox.
Option Description
Contains the following options:
Timing and
• Frequency—
Transition
Measurements
Calculates the frequency of Signals in Hertz.
1304 ni.com
Functions
Option Description
• Period—
• Pulse duration—
Calculates the time difference in seconds between the first two middle
reference level crossings. Pulse duration also is known as pulse width.
• Duty cycle—
• Preshoot (%)—
Calculates the height of the local minimum that precedes a rising transition or
the local maximum that precedes a falling transition as a percentage of the
histogram-based amplitude of the signal.
• Overshoot (%)—
Calculates the height of the local maximum that follows a rising transition or
the local minimum that follows a falling transition as a percentage of the
histogram-based amplitude of the signal.
• Slew rate—
Calculates the ratio between (90% amplitude – 10% amplitude) and the rise
time.
Displays the measurement you configured this Express VI to perform and the
calculated value of that measurement. You can click any measurement listed in the
Results
Measurement column, and the corresponding value or plot appears in the Result
Preview graph.
Option Description
Input Signal If you wire data to the Express VI and run it, Input Signal displays real data. If you
close and reopen the Express VI, Input Signal displays sample data until you run
the Express VI again.
Displays the measurement you configured this Express VI to perform and the
calculated value of that measurement. You can click any measurement listed in the
Measurement column, and the corresponding value or plot appears in the Result
Preview graph.
Result
Preview
If you wire data to the Express VI and run the VI, Result Preview displays real data.
If you close and reopen the Express VI, Result Preview displays sample data until
you run the VI again. If the cutoff frequency values are invalid, Result Preview does
not display valid data.
Inputs/Outputs
• Signals —
• error out —
Contains error information. This output provides standard error out functionality.
• Duration —
Returns the time difference in seconds between the first two middle reference level crossings.
• Preshoot —
Returns the height of the local minimum that precedes a rising transition or the local maximum
that precedes a falling transition as a percentage of the histogram-based amplitude of the signal.
1306 ni.com
Functions
• Slew Rate —
Returns the ratio between (90% amplitude – 10% amplitude) and the rise time.
• Frequency —
• Overshoot —
Returns the height of the local maximum that follows a rising transition or the local minimum
that follows a falling transition as a percentage of the histogram-based amplitude of the signal.
• Period —
Returns the time in seconds between adjacent middle reference level crossings in the same
direction. The reciprocal of this value is the signal frequency.
• Duty Cycle —
Components
Displays the measurement you configured this Express VI to perform and the
calculated value of that measurement. You can click any measurement listed in the
Measurement column, and the corresponding value or plot appears in the Result
Preview graph.
Calculates the ratio between (90% amplitude – 10% amplitude) and the rise time.
Calculates the height of the local minimum that precedes a rising transition or the
local maximum that precedes a falling transition as a percentage of the histogram-
based amplitude of the signal.
Calculates the time in seconds between adjacent middle reference level crossings in
the same direction. The reciprocal of this value is the signal frequency.
Calculates the height of the local maximum that follows a rising transition or the local
minimum that follows a falling transition as a percentage of the histogram-based
amplitude of the signal.
Calculates the time difference in seconds between the first two middle reference level
crossings. Pulse duration also is known as pulse width.
Displays a preview of the measurement. The Result Preview plot indicates the value of
the selected measurement with a dotted line.
Option Description
Contains the following options:
• Mean (DC)—
• Apply window—
1308 ni.com
Functions
Option Description
Applies a low side lobe window to Signals. This option is available only when
you place a checkmark in the DC or RMS checkbox.
Use smoothing windows to taper the sharp transitions in the effective signal.
You do not typically use windows if you can acquire an integer number of
cycles of the signal or if you are analyzing noise spectra.
• Positive peak—
• Negative peak—
• Peak to peak—
Measures the most positive peak to the most negative peak in Signals.
• Cycle average—
Measures the mean level of one complete period of a periodic input signal.
• Cycle RMS—
Calculates the root mean square value of one complete period of a periodic
input signal.
Displays the measurements you configured this Express VI to perform and the
calculated values of those measurements. You can click any measurement listed in
Results
the Measurement column, and the corresponding value or plot appears in the
Result Preview graph.
Input Signal If you wire data to the Express VI and run it, Input Signal displays real data. If you
close and reopen the Express VI, Input Signal displays sample data until you run
the Express VI again.
Option Description
Displays a preview of the measurement. The Result Preview plot indicates the
value of the selected measurement with a dotted line.
Result
If you wire data to the Express VI and run the VI, Result Preview displays real data.
Preview
If you close and reopen the Express VI, Result Preview displays sample data until
you run the VI again. If the cutoff frequency values are invalid, Result Preview does
not display valid data.
Inputs/Outputs
• Restart Averaging —
Specifies whether to restart the selected averaging process. The default is FALSE. When you call
this Express VI for the first time, the averaging process starts automatically.
This input appears only if you place a checkmark in the Averaging checkbox.
• Signals —
• Mean (DC) —
• Negative Peak —
• Cycle Average —
Returns the mean level of one complete period of a periodic input signal.
The cycle average of a perfect sine wave is zero, but the average level of the entire signal can be
nonzero as a result of partial periods at the boundaries of the signal.
• Positive Peak —
1310 ni.com
Functions
• RMS —
• Cycle RMS —
Returns the root mean square value of one complete period of a periodic input signal.
• Cycle Average —
Returns the mean level of one complete period of a periodic input signal. The cycle average of a
perfect sine wave is zero, but the average level of the entire signal can be nonzero as a result of
partial periods at the boundaries of the signal.
• Cycle RMS —
Returns the root mean square value of one complete period of a periodic input signal.
• Mean (DC) —
• Negative Peak —
• Peak to Peak —
Returns a measurement from the most positive peak to the most negative peak in Signals.
• Positive Peak —
• RMS —
• error out —
Contains error information. This output provides standard error out functionality.
• Peak to Peak —
Returns a measurement from the most positive peak to the most negative peak in Signals.
Examples
Components
Applies a low side lobe window to Signals. This option is available only when you
place a checkmark in the DC or RMS checkbox.
Displays the measurements you configured this Express VI to perform and the
calculated values of those measurements. You can click any measurement listed in the
Measurement column, and the corresponding value or plot appears in the Result
Preview graph.
Calculates the root mean square value of one complete period of a periodic input
signal.
Measures the mean level of one complete period of a periodic input signal.
Measures the most positive peak to the most negative peak in Signals.
Displays a preview of the measurement. The Result Preview plot indicates the value of
the selected measurement with a dotted line.
1312 ni.com
Functions
Digital Waveform
Use the Digital Waveform VIs and functions to perform operations on digital
waveforms and digital data.
The VIs and functions on this palette can return waveform error codes.
Palette
Description
Object
Get Digital
Returns the digital waveform components you specify. You specify components by
Waveform
clicking on the center of the output terminal and selecting the component you want.
Components
Get Digital
Returns the digital data components you specify. You specify components by clicking
Data
on the center of the output terminal and selecting either transitions or data.
Components
Builds a digital waveform or modifies an existing waveform. If you do not wire the
Build Digital waveform input, the function creates a new waveform based on the components
Waveform you wire. If you wire the waveform input, the function modifies the waveform based
on the components you wire.
Builds digital data or modifies existing digital data. If you do not wire the digital data
Build Digital input, the function creates new digital data based on the components you wire. If
Data you wire the digital data input, the function modifies the digital data based on the
components you wire.
Set
Waveform Adds or replaces a waveform attribute. You can use any type of data for the value of
Attribute the attribute.
Function
Get Retrieves the names and values of all attributes or the value of a single attribute,
Palette
Description
Object
Waveform
Attribute depending on whether you wire the name parameter.
Function
Generates a pattern and returns the pattern as a digital waveform. Depending on the
Digital
instance you use, the VI can return a ramp, marching values, single value, random, or
Pattern
toggle pattern as a waveform. You must manually select the polymorphic instance
Generator
you want to use.
Returns the number of samples and signals contained in the digital input. Wire data
Digital Size to the digital waveform in input to determine the polymorphic instance to use or
manually select the instance.
Digital Returns a subset of the digital input so you can plot the extracted signals individually
Signal or in subgroups on a graph. Wire data to the digital waveform input to determine the
Subset polymorphic instance to use or manually select the instance.
Replaces a subset of the input digital waveform or digital data starting at the value
Replace
specified in start with new digital waveform data (DWDT) or digital data (DTbl). You
Subset
must manually select the polymorphic instance you want to use.
Uncompresses the digital signals in the digital input and returns the result in the
Uncompress
digital output. Wire data to the uncompressed digital waveform input to determine
Digital
the polymorphic instance to use or manually select the instance.
Compresses the digital signals in the digital input and returns the result in the digital
Compress
output. Wire data to the uncompressed digital waveform input to determine the
Digital
polymorphic instance to use or manually select the instance.
1314 ni.com
Functions
Palette
Description
Object
You must manually select the polymorphic instance you want to use.
Search for Searches for a digital pattern in the digital input. Wire data to the digital waveform
Digital in input to determine the polymorphic instance to use or manually select the
Pattern instance.
Appends the signals from digital waveform (low bits) to the LSB side of digital
Append waveform (high bits). If the sampling rates do not match, error out returns a
Digital warning. The start time of digital waveform (low bits) is ignored. Wire data to the
Signals digital waveform (high bits) input to determine the polymorphic instance to use or
manually select the instance.
Appends all samples from digital waveform B to the end of digital waveform A. If
Append
the sampling rates do not match, error out returns a warning. The start time of
Digital
digital waveform B is ignored. Wire data to the digital waveform A input to
Samples
determine the polymorphic instance to use or manually select the instance.
Inverts the digital data in the digital input so that a 0 becomes a 1 and vice versa or
Invert Digital an H becomes an L and vice versa. Wire data to the digital waveform input to
determine the polymorphic instance to use or manually select the instance.
Group
Groups digital data into a digital data array and groups digital waveforms into a
Digital
digital waveform array.
Signals
Digital Ring Use the digital ring constant to set the digital bit state of a digital waveform or digital
Constant data.
Empty
Returns an empty digital waveform. Use this constant to initialize shift registers or
Digital
build digital waveforms.
Waveform
Palette
Description
Object
Empty Returns empty digital data. Use this constant to initialize shift registers or build
Digital Data digital tables.
Digital
Use the Digital Conversion VIs and Functions to convert to and from digital data.
Conversion
Returns the digital waveform components you specify. You specify components by
clicking on the center of the output terminal and selecting the component you want.
Inputs/Outputs
• waveform —
waveform is the waveform from which you want to retrieve components.
• t0 —
t0 returns the trigger time of the waveform.
• dt —
dt returns the time interval in seconds between data points in the waveform.
• Y—
Y is the data values of a waveform.
• attributes —
attributes returns the names and values of all waveform attributes.
You also can use the Get Waveform Attribute VI to retrieve the names and values of all attributes
or the value of a single attribute.
Returns the digital data components you specify. You specify components by clicking
on the center of the output terminal and selecting either transitions or data.
1316 ni.com
Functions
Inputs/Outputs
• waveform —
digital data is the waveform from which you want to retrieve components.
• transitions —
• data —
digital data returns the data values where each row in the 2D array represents a single binary
value for one sample of data with the most significant bit of data in the first column and the least
significant bit of data in the last column.
Builds a digital waveform or modifies an existing waveform. If you do not wire the
waveform input, the function creates a new waveform based on the components you
wire. If you wire the waveform input, the function modifies the waveform based on the
components you wire.
Inputs/Outputs
• waveform —
waveform is the digital waveform you want to edit. If you do not wire an existing waveform, the
function creates a new waveform based on the components you wire.
• t0 —
t0 specifies the start time of the waveform.
• dt —
dt specifies the time interval in seconds between data points in the waveform.
• Y—
Y is a digital table that contains the data values of a waveform.
• attributes —
attributes sets the names and values of all waveform attributes.
You also can use the Set Waveform Attribute function to set the name and value of a single
attribute.
• output waveform —
output waveform is the resulting waveform. If you did not wire an existing waveform, this is a
new waveform. If you wired an existing waveform, this is the edited waveform.
Examples
Builds digital data or modifies existing digital data. If you do not wire the digital data
input, the function creates new digital data based on the components you wire. If you
wire the digital data input, the function modifies the digital data based on the
components you wire.
Inputs/Outputs
• waveform —
digital data is the digital data you want to edit. If you do not wire the digital data input, the
function creates new digital data based on the components you wire.
• transitions —
• data —
digital data component is a 2D array that contains the data values as 8-bit unsigned integers.
Each row in the 2D array represents a single binary value for one sample of data with the most
significant bit of data in the first column and the least significant bit of data in the last column.
Each value in the 2D array corresponds to a digital value, or digital data state, represented in the
digital data output.
1318 ni.com
Functions
The following table shows the digital data state represented by each of the valid 8-bit unsigned
integers.
Digital
Value Description
Data State
0 (Drive
0 Force logic low. Drive to the low voltage level (VOL).
Low)
1 (Drive
1 Force logic high. Drive to the high voltage level (VOH).
High)
Z (Force
2 Force logic high impedance. Turn the driver off.
Off)
L
Compare logic low (edge). Compare for a voltage level lower than the low
3 (Compare
voltage threshold.
Low)
H
Compare logic high (edge). Compare for a voltage level higher than the high
4 (Compare
voltage threshold (VOH).
High)
X
5 (Compare Compare logic unknown. Do not compare.
Unknown)
T
Compare logic high impedance (edge). Compare for a voltage level between
6 (Compare
the low voltage threshold (VOL) and the high voltage threshold (VOH).
Off)
V
Compare logic valid level (edge). Compare for a voltage level either lower than
7 (Compare
the low voltage threshold (VOL) or higher than the high voltage threshold (VOH).
Valid)
• output waveform —
digital data is the resulting digital data. If you did not wire existing digital data, this is the new
digital data. If you wired existing digital data, this is the edited digital data.
Examples
Adds or replaces a waveform attribute. You can use any type of data for the value of
the attribute.
Inputs/Outputs
• waveform —
waveform is the waveform for which you want to add or replace an attribute.
• name —
• value —
value is the value of the attribute. This input is polymorphic, so you can wire any data to it.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• waveform out —
• replaced —
• error out —
error out contains error information. This output provides standard error out functionality.
If the attribute in name already exists, the function overwrites the attribute with the
1320 ni.com
Functions
new value, and replaced is TRUE. If the attribute in name does not exist already, the
function creates a new attribute. Some attributes are set by NI-DAQ and Express VIs.
Data
Name Attribute Acceptable Values Description
Type
Hardware Any value is NI_DeviceNumber is the device
Device NI_DeviceNumber String acceptable for number of the hardware producing
Number NI_DeviceNumber. the waveform.
Any value is NI_ChannelName is the name of the
Name of
NI_ChannelName String acceptable for virtual channel producing the
Channel
NI_ChannelName. waveform.
NI_LineNames is the name of the
Name of Any value is digital line in the waveform. For more
Digital NI_LineNames String acceptable for than one digital line, the function
Line(s) NI_LineNames. returns the line names in reverse
order.
Volts, PSI, and so
forth are
Unit for NI_UnitDescription is the units of
NI_UnitDescription String acceptable values
Data measure for the waveform.
for
NI_UnitDescription.
The following table lists the waveform attributes set by Express VIs.
Data
Name Attribute Acceptable Values Description
Type
NI_ExpStartTimeStamp is
the time stamp of the first
sample in the first
waveform. In Express VIs,
Any value is acceptable
Start Time this is set once per start
NI_ExpStartTimeStamp for
Timestamp stamp of the VI and does not
NI_ExpStartTimeStamp.
change, even if waveform
data is generated in a
loop. In Express VIs,
NI_ExpStartTimeStamp is
Note Express VIs also use the attributes set by NI-DAQ. If the waveform does
not originate in NI-DAQ, Express VIs add NI_ChannelName.
1322 ni.com
Functions
Examples
• labview\examples\Waveform\Waveform - Create.vi
Retrieves the names and values of all attributes or the value of a single attribute,
depending on whether you wire the name parameter.
Attributes can be channel names. The connector pane displays the default data types
for this polymorphic function.
Inputs/Outputs
• waveform —
waveform is the waveform for which you want to retrieve an attribute(s) and value(s).
• name —
name is the name of the attribute whose value you want to retrieve.
Do not wire this parameter if you want to retrieve all the attributes associated with the specified
waveform. If you wire name, the names output changes to a Boolean output found, the array
output values changes to an output called value of the same type as default value, and the
function searches for only the specified attribute.
• default value (empty Variant) —
default value is a value and data type that you specify. If the function does not find the attribute
specified in name, it returns the default value.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• duplicate waveform —
• names —
names returns a 1D array containing the names of all attributes associated with the waveform.
If you wire the name parameter, this output changes to a Boolean value found. found returns
TRUE if the function finds the attribute that you specify in name.
• values —
values returns a 1D array containing the values associated with each attribute of the specified
waveform in variant format.
You must unflatten each attribute value to an appropriate data type. If you wire name, this
output changes to a single variant value. If the function does not find the attribute that you
specify in name, it returns the value passed to default value.
• error out —
error out contains error information. This output provides standard error out functionality.
This function has two modes of behavior depending on whether you wire the name
parameter. By default, the function returns the names of all attributes and their
corresponding values in 1D arrays. If you wire name, the names output changes to a
Boolean output found, the values output changes to a variant output value, and the
function searches for only the specified attribute. If the function does not find the
specified attribute(s), or if it cannot convert the attribute(s) to the default value, found
is FALSE, and value displays the contents of default value.
Data
Name Attribute Acceptable Values Description
Type
Hardware Any value is acceptable NI_DeviceNumber is the device
NI_DeviceNumber String
Device for NI_DeviceNumber. number of the hardware device
1324 ni.com
Functions
Data
Name Attribute Acceptable Values Description
Type
Number producing the waveform.
NI_ChannelName is the name of
Name of Any value is acceptable
NI_ChannelName String the virtual channel producing
Channel for NI_ChannelName.
the waveform.
Name of
Any value is acceptable NI_LineNames is the name of
Digital NI_LineNames String
for NI_LineNames. the digital line in the waveform.
Line(s)
Volts, PSI, and so forth
Unit for NI_UnitDescription is the units
NI_UnitDescription String are acceptable values for
Data of measure for the waveform.
NI_UnitDescription.
The following table lists the waveform attributes set by Express VIs.
Data
Name Attribute Acceptable Values Description
Type
NI_ExpStartTimeStamp is
the time stamp of the first
sample in the first
waveform. In Express VIs,
this is set once per start
of the VI and does not
change, even if waveform
Any value is acceptable data is generated in a
Start Time
NI_ExpStartTimeStamp for loop. In Express VIs,
Timestamp stamp
NI_ExpStartTimeStamp. NI_ExpStartTimeStamp is
set according to the PC
clock unless the
waveform originates in
NI-DAQ. When the
waveform originates in
NI-DAQ, NI-DAQ sets
NI_ExpStartTimeStamp.
NI_ExpTimeStamp is the
Time Any value is acceptable time stamp of the first
Timestamp NI_ExpTimeStamp
stamp for NI_ExpTimeStamp. sample in the waveform.
In Express VIs,
Data
Name Attribute Acceptable Values Description
Type
NI_ExpTimeStamp is set
according to the PC clock
unless the waveform
originates in NI-DAQ.
When the waveform
originates in NI-DAQ, NI-
DAQ sets
NI_ExpTimeStamp.
If the value of
NI_ExpXDimension is t, t0
Use a single character
and dt are unchanged. If
for the
the value of
NI_ExpXDimension
NI_ExpXDimension is f,
value. Currently, only t
X Express VIs interpret t0
NI_ExpXDimension String for time and f for
Dimension and dt as f0 and df. For all
frequency are
other values, Express VIs
supported. The value
generically interpret t0
for NI_ExpXDimension
and dt as X0 and dX, but
is case sensitive.
there is no effect
otherwise.
If and only if
TRUE or FALSE are NI_ExpXDimension is t,
Relative
NI_ExpIsRelativeTime Boolean acceptable values for Express VIs set t0 as a
Time?
NI_ExpIsRelativeTime. relative/absolute time
stamp value.
Note Express VIs also use the attributes set by NI-DAQ. If the waveform does
not originate in NI-DAQ, Express VIs add NI_ChannelName.
Generates a pattern and returns the pattern as a digital waveform. Depending on the
instance you use, the VI can return a ramp, marching values, single value, random, or
toggle pattern as a waveform. You must manually select the polymorphic instance you
want to use.
1326 ni.com
Functions
The Ramp instance generates a digital waveform that contains a binary count-up
pattern that starts at zero and counts up by one until it reaches 2n–1, where n =
number of signals.
Inputs/Outputs
• number of samples —
number of samples specifies the number of samples to include in the generated digital
waveform.
• number of signals —
number of signals specifies the number of signals to include in the generated digital waveform.
• sample rate —
sample rate specifies the sample rate of the generated digital waveform. The default is 1 kHz.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digital waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
The Ramp instance generates a digital waveform that contains a binary count-up
pattern that starts at zero and counts up by one until it reaches 2n–1, where n =
number of signals.
Inputs/Outputs
• marching value —
marching value is the binary value that marches across the signals of the generated digital
1328 ni.com
Functions
• hold value —
hold value is the binary value of the generated digital waveform. The default is 0.
• number of samples —
number of samples specifies the number of samples to include in the generated digital
waveform.
• number of signals —
number of signals specifies the number of signals to include in the generated digital waveform.
• sample rate —
sample rate specifies the sample rate of the generated digital waveform. The default is 1 kHz.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digital waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
The Ramp instance generates a digital waveform that contains a binary count-up
pattern that starts at zero and counts up by one until it reaches 2n–1, where n =
number of signals.
toggle pattern as a waveform. You must manually select the polymorphic instance you
want to use.
Inputs/Outputs
• value —
value is the digital bit state of the generated digital waveform. The default is 0.
• number of samples —
number of samples specifies the number of samples to include in the generated digital
waveform.
• number of signals —
number of signals specifies the number of signals to include in the generated digital waveform.
• sample rate —
sample rate specifies the sample rate of the generated digital waveform. The default is 1 kHz.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digital waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
The Ramp instance generates a digital waveform that contains a binary count-up
1330 ni.com
Functions
pattern that starts at zero and counts up by one until it reaches 2n–1, where n =
number of signals.
Inputs/Outputs
• number of samples —
number of samples specifies the number of samples to include in the generated digital
waveform.
• number of signals —
number of signals specifies the number of signals to include in the generated digital waveform.
• sample rate —
sample rate specifies the sample rate of the generated digital waveform. The default is 1 kHz.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digital waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
The Ramp instance generates a digital waveform that contains a binary count-up
pattern that starts at zero and counts up by one until it reaches 2n–1, where n =
number of signals.
Inputs/Outputs
• value 2 —
value 2 is the second digital bit state of the generated digital waveform. The default is 1.
• value 1 —
value 1 is the first digital bit state of the generated digital waveform. The default is 0.
• number of samples —
number of samples specifies the number of samples to include in the generated digital
waveform.
• number of signals —
number of signals specifies the number of signals to include in the generated digital waveform.
1332 ni.com
Functions
• sample rate —
sample rate specifies the sample rate of the generated digital waveform. The default is 1 kHz.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digital waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
The Ramp instance generates a digital waveform that contains a binary count-up
pattern that starts at zero and counts up by one until it reaches 2n–1, where n =
number of signals.
Digital Size
Returns the number of samples and signals contained in the digital input. Wire data to
the digital waveform in input to determine the polymorphic instance to use or
manually select the instance.
Inputs/Outputs
• digital waveform in —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• number of samples —
number of samples returns the number of sample data elements of digital data contained in the
digital input.
• number of signals —
number of signals returns the number of signal elements contained in the digital input.
• error out —
error out contains error information. This output provides standard error out functionality.
1334 ni.com
Functions
Inputs/Outputs
• digital data in —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• number of samples —
number of samples returns the number of sample data elements of digital data contained in the
digital input.
• number of signals —
number of signals returns the number of signal elements contained in the digital input.
• error out —
error out contains error information. This output provides standard error out functionality.
Returns a subset of the digital input so you can plot the extracted signals individually
or in subgroups on a graph. Wire data to the digital waveform input to determine the
polymorphic instance to use or manually select the instance.
Use the Digital Signal Subset VI to extract individual signals from a digital waveform.
The block diagram below shows how you can combine extracted individual signals
with other digital data to create new digital waveforms.
The top Digital Signal Subset VI extracts the first and second signals from the digital
waveform. The bottom Digital Signal Subset VI extracts the fourth and fifth signals. The
Append Digital Samples VI appends the first signal to the fourth signal, appends the
second signal to the fifth signal, and plots the resulting two signals on a digital
waveform graph.
Inputs/Outputs
• digital waveform —
1336 ni.com
Functions
• signals —
signals is a 1D array of numbers. Each number in the array represents a signal number. If any
value in signals is greater than the number of signals in the digital input, the VI returns an error.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• digital subset —
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Digital Signal Subset VI to extract individual signals from a digital waveform.
The block diagram below shows how you can combine extracted individual signals
with other digital data to create new digital waveforms.
The top Digital Signal Subset VI extracts the first and second signals from the digital
waveform. The bottom Digital Signal Subset VI extracts the fourth and fifth signals. The
Append Digital Samples VI appends the first signal to the fourth signal, appends the
second signal to the fifth signal, and plots the resulting two signals on a digital
waveform graph.
Inputs/Outputs
• digital data —
• signals —
signals is a 1D array of numbers. Each number in the array represents a signal number. If any
value in signals is greater than the number of signals in the digital input, the VI returns an error.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• digital subset —
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Digital Signal Subset VI to extract individual signals from a digital waveform.
The block diagram below shows how you can combine extracted individual signals
with other digital data to create new digital waveforms.
1338 ni.com
Functions
The top Digital Signal Subset VI extracts the first and second signals from the digital
waveform. The bottom Digital Signal Subset VI extracts the fourth and fifth signals. The
Append Digital Samples VI appends the first signal to the fourth signal, appends the
second signal to the fifth signal, and plots the resulting two signals on a digital
waveform graph.
Replace Subset
Replaces a subset of the input digital waveform or digital data starting at the value
specified in start with new digital waveform data (DWDT) or digital data (DTbl). You
must manually select the polymorphic instance you want to use.
Inputs/Outputs
• start value format —
Samples (default)—The subset begins from a particular element from the set of waveform data
0
in digital waveform in.
1 Relative Time—The subset begins from the data value at a particular time.
• digital waveform in —
digital waveform in is the digital waveform for which you want to replace a subset.
new digital waveform is the new digital waveform data with which you want to replace a subset
of digital waveform in.
• start samples/time —
start samples/time is the data element or time value where the subset you are replacing begins.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• signal index —
signal index specifies the signal at which to begin replacing data. The default is 0.
digital waveform out returns digital waveform in with the replaced subset.
actual start samples/time is the actual data element where you replaced the subset.
• error out —
error out contains error information. This output provides standard error out functionality.
1340 ni.com
Functions
Inputs/Outputs
• digital data in —
digital data in is the digital data for which you want to replace a subset.
new digital data is the new digital data with which you want to replace a subset of digital data
in.
• start —
start is the data element where you want to start replacing the digital table subset. The default is
0.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• signal index —
signal index specifies the signal at which to begin replacing data. The default is 0.
digital data out returns digital data in with the replaced subset.
• error out —
error out contains error information. This output provides standard error out functionality.
Uncompress Digital
Uncompresses the digital signals in the digital input and returns the result in the
digital output. Wire data to the uncompressed digital waveform input to determine
the polymorphic instance to use or manually select the instance.
Inputs/Outputs
• compressed digital waveform —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
1342 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• digital data in —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• error out —
error out contains error information. This output provides standard error out functionality.
Compress Digital
Compresses the digital signals in the digital input and returns the result in the digital
output. Wire data to the uncompressed digital waveform input to determine the
polymorphic instance to use or manually select the instance.
Use the Compress Digital VI to compress digital data when you want to display two or
more serial digital signals with the same bit sets on the same row to better visualize
the data. For example, if you acquire 10 digital waveform samples and nine waveforms
are identical but the tenth waveform differs, compressing the digital data helps you
easily find which waveform is different. Compressing digital data also conserves
memory resources. Use the Uncompress Digital VI to uncompress digital data you
compress.
Inputs/Outputs
• force compression? —
force compression? specifies whether the compression is performed even if the data already
appears to be compressed.
1344 ni.com
Functions
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Compress Digital VI to compress digital data when you want to display two or
more serial digital signals with the same bit sets on the same row to better visualize
the data. For example, if you acquire 10 digital waveform samples and nine waveforms
are identical but the tenth waveform differs, compressing the digital data helps you
easily find which waveform is different. Compressing digital data also conserves
memory resources. Use the Uncompress Digital VI to uncompress digital data you
compress.
Inputs/Outputs
• force compression? —
force compression? specifies whether the compression is performed even if the data already
appears to be compressed.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Compress Digital VI to compress digital data when you want to display two or
more serial digital signals with the same bit sets on the same row to better visualize
the data. For example, if you acquire 10 digital waveform samples and nine waveforms
are identical but the tenth waveform differs, compressing the digital data helps you
easily find which waveform is different. Compressing digital data also conserves
memory resources. Use the Uncompress Digital VI to uncompress digital data you
compress.
Digital Comparison
1346 ni.com
Functions
Inputs/Outputs
• start sample B —
start sample B specifies where to start the comparison within digital waveform B.
• start sample A —
start sample A specifies where to start the comparison within digital waveform A.
• digital waveform A —
digital waveform A is the waveform for which you want to perform a digital comparison.
• digital waveform B —
digital waveform B is the waveform for which you want to perform a digital comparison.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• compare level —
Pass/Fail Only (default)—Specifies that the VI returns only passed? as an output, which
0
improves the performance of the comparison.
1 Pass/Fail and # Errors—Specifies that the VI returns passed? and # failed samples.
Pass/Fail, # Errors and Diff Data—Specifies that the VI returns passed?, # failed samples, and
2
diff data.
# samples to compare specifies the number of samples in digital waveform A and digital
waveform B to compare. The default value is –1, which specifies that the VI compares all
samples.
• passed? —
passed? returns TRUE if all corresponding values in digital waveform A and digital waveform B
match.
• # failed samples —
# failed samples returns the total number of corresponding samples in digital waveform A and
digital waveform B that do not match.
• diff data —
diff data returns the waveform representing the comparison of digital waveform A and digital
waveform B. Zeros represent corresponding samples that match. Ones represent corresponding
samples that differ. You can use this data to determine the exact location of all differing samples.
• error out —
error out contains error information. This output provides standard error out functionality.
1348 ni.com
Functions
Inputs/Outputs
• start position B —
start position B specifies where to start the comparison within digital data B.
• start position A —
start position A specifies where to start the comparison within digital data A.
• digital data A —
digital data A is the digital data for which you want to perform a digital comparison.
• digital data B —
digital data B is the digital data for which you want to perform a digital comparison.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• compare level —
Pass/Fail Only (default)—Specifies that the VI returns only passed? as an output, which
0
improves the performance of the comparison.
1 Pass/Fail and # Errors—Specifies that the VI returns passed? and # failed samples.
Pass/Fail, # Errors and Diff Data—Specifies that the VI returns passed?, # failed samples, and
2
diff data.
# samples to compare specifies the number of samples in digital data A and digital data B to
compare. The default value is -1, which specifies that the VI compares all samples.
• passed? —
passed? returns TRUE if all corresponding values in digital data A and digital data B match.
• # failed samples —
# failed samples returns the total number of corresponding samples in digital data A and digital
data B that do not match.
• diff data —
diff data returns the digital data representing the comparison of digital data A and digital data
B. Zeros represent corresponding samples that match. Ones represent corresponding samples
that differ. You can use this data to determine the exact location of all differing samples.
• error out —
error out contains error information. This output provides standard error out functionality.
1350 ni.com
Functions
Inputs/Outputs
• digital waveform —
• comparison —
comparison specifies to what value the digital data contained in the digital input is compared.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• boolean array —
boolean array is a Boolean-array representation of where the comparison value is found in the
digital data contained in the digital input.
• passed? —
passed? returns TRUE if any value in the digital data contained in the digital input matches the
comparison request specified in comparison.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• digital data —
• comparison —
comparison specifies to what value the digital data contained in the digital input is compared.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
1352 ni.com
Functions
• boolean array —
boolean array is a Boolean-array representation of where the comparison value is found in the
digital data contained in the digital input.
• Passed? —
Passed? returns TRUE if any value in the digital data contained in the digital input matches the
comparison request specified in comparison.
• error out —
error out contains error information. This output provides standard error out functionality.
Searches for a digital pattern in the digital input. Wire data to the digital waveform in
input to determine the polymorphic instance to use or manually select the instance.
Examples
Inputs/Outputs
• start value format —
Samples (default)—The subset begins from a particular element from the set of waveform data
0
in digital waveform in.
1 Relative Time—The subset begins from the data value at a particular time.
• digital waveform in —
• digital pattern —
digital pattern specifies the digital pattern for which you want to search.
For example, if you acquire a large digital waveform and want to see if any part of the digital
waveform matches a certain pattern, wire that pattern to the digital pattern input to discover
any matches.
• start index/time —
start index/time specifies the point in digital waveform in where the search begins. You specify
whether this is an index or time in indexing mode. The default is 0, which is the beginning of
digital waveform in.
When indexing mode is set to Relative Time, this VI checks start index/time to determine if it is
an integer multiple of dt. If start index/time is not an integer multiple of dt, this VI uses the
closest exact multiple of dt. This VI returns an error if start index/time is out of range for digital
waveform in.
error in describes error conditions that occur before this node runs. With the following
1354 ni.com
Functions
This node runs normally even if an error occurred before this node runs.
• compare mode —
Compare X States (default)—Values of X in digital pattern match only to X states in the input
0
data.
1 Ignore X States—Values of X in digital pattern are wildcards and match to any digital state.
• index/time of pattern —
index/time of pattern is the first index or time value in digital waveform in following start
index/time that matches the location of digital pattern.
If indexing mode is set to Relative Time, index/time of pattern represents the time. If indexing
mode is set to Samples, index/time of pattern represents the index.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
input to determine the polymorphic instance to use or manually select the instance.
Inputs/Outputs
• digital data in —
• digital pattern —
digital pattern specifies the digital pattern for which you want to search.
For example, if you acquire a large digital waveform and want to see if any part of the digital
waveform matches a certain pattern, wire that pattern to the digital pattern input to discover
any matches.
• start index —
start index specifies the point in digital data in where the search begins. The default is 0, which
is the beginning of digital data in. The VI returns an error if start index is out of range for digital
data in.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• compare mode —
Compare X States (default)—Values of X in digital pattern match only to X states in the input
0
data.
1 Ignore X States—Values of X in digital pattern are wildcards and match to any digital state.
1356 ni.com
Functions
• index of pattern —
index of pattern returns the first index in digital data in following start index that matches the
location of digital pattern.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Appends the signals from digital waveform (low bits) to the LSB side of digital
waveform (high bits). If the sampling rates do not match, error out returns a warning.
The start time of digital waveform (low bits) is ignored. Wire data to the digital
waveform (high bits) input to determine the polymorphic instance to use or manually
select the instance.
Use the Append Digital Signals VI to append the signals from two separate digital
waveforms into a single digital waveform. You can append signals with the same
number of samples or of different numbers of samples. For example, if you have two
digital signals that both consist of two rows of 8 bits, the resulting digital data consists
of two rows of 16 bits. If you combine two signals, one that consists of two rows of 8
bits and the other that consists of one row of 8 bits, the resulting digital data consists
of two rows of 16 bits. The Append Digital Signals VI pads the remaining columns in the
second sample with the value you select in the default value input.
Examples
Inputs/Outputs
• default value —
default value specifies the value to use to fill in the extra samples of the digital data in digital
waveform out if digital waveform (low bits) and digital waveform (high bits) do not have the
same number of samples.
0 0 (default)—Force Down
1 1—Force Up
2 Z—Force Z
1358 ni.com
Functions
3 L—Compare Low
4 H—Compare High
5 X—Compare Don't Care
6 T—Compare Invalid
7 V—Compare Valid
digital waveform (high bits) is the first set of data in the digital waveform.
digital waveform (low bits) is the set of data to append to digital waveform (high bits).
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
digital waveform out returns the waveform that results from appending digital waveform (low
bits) to digital waveform (high bits). This output matches the compression of the input.
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Append Digital Signals VI to append the signals from two separate digital
waveforms into a single digital waveform. You can append signals with the same
number of samples or of different numbers of samples. For example, if you have two
digital signals that both consist of two rows of 8 bits, the resulting digital data consists
of two rows of 16 bits. If you combine two signals, one that consists of two rows of 8
bits and the other that consists of one row of 8 bits, the resulting digital data consists
of two rows of 16 bits. The Append Digital Signals VI pads the remaining columns in the
second sample with the value you select in the default value input.
Examples
Note Appends signals of digital data B to the LSB side of digital data A. If the
number of samples do not match, error out returns a warning. The number
of signals do not have to be the same.
Inputs/Outputs
• default value —
default value specifies the value to use to fill in the extra samples of the digital data in digital
waveform out if digital waveform (low bits) and digital waveform (high bits) do not have the
same number of samples.
0 0 (default)—Force Down
1 1—Force Up
2 Z—Force Z
1360 ni.com
Functions
3 L—Compare Low
4 H—Compare High
5 X—Compare Don't Care
6 T—Compare Invalid
7 V—Compare Valid
digital data (low bits) is the set of data to append to digital data (high bits).
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
digital data out returns the digital data that results from appending digital data (low bits) to
digital data (high bits).
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Append Digital Signals VI to append the signals from two separate digital
waveforms into a single digital waveform. You can append signals with the same
number of samples or of different numbers of samples. For example, if you have two
digital signals that both consist of two rows of 8 bits, the resulting digital data consists
of two rows of 16 bits. If you combine two signals, one that consists of two rows of 8
bits and the other that consists of one row of 8 bits, the resulting digital data consists
of two rows of 16 bits. The Append Digital Signals VI pads the remaining columns in the
second sample with the value you select in the default value input.
Examples
Appends all samples from digital waveform B to the end of digital waveform A. If the
sampling rates do not match, error out returns a warning. The start time of digital
waveform B is ignored. Wire data to the digital waveform A input to determine the
polymorphic instance to use or manually select the instance.
Examples
1362 ni.com
Functions
Inputs/Outputs
• default value —
default value specifies the value to use to fill in the extra signals of the digital data in digital
waveform out if digital waveform A and digital waveform B do not have the same number of
signals.
0 0 (default)—Force Down
1 1—Force Up
2 Z—Force Z
3 L—Compare Low
4 H—Compare High
5 X—Compare Don't Care
6 T—Compare Invalid
7 V—Compare Valid
• digital waveform A —
• digital waveform B —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
digital waveform out returns the waveform that results from appending digital waveform (low
bits) to digital waveform (high bits). This output matches the compression of the input.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note
Appends all samples from digital data B to the end of digital data A. If the
number of signals do not match, error out returns a warning. The number of
samples do not have to be the same.
Inputs/Outputs
• default value —
default value specifies the value to fill in the extra signals of digital data out if digital data A and
digital data B do not have the same number of signals.
1364 ni.com
Functions
0 0 (default)—Force Down
1 1—Force Up
2 Z—Force Z
3 L—Compare Low
4 H—Compare High
5 X—Compare Don't Care
6 T—Compare Invalid
7 V—Compare Valid
• digital data A —
• digital data B —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
digital data out returns the digital data that results from appending digital data (low bits) to
digital data (high bits).
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Invert Digital
Inverts the digital data in the digital input so that a 0 becomes a 1 and vice versa or an
H becomes an L and vice versa. Wire data to the digital waveform input to determine
the polymorphic instance to use or manually select the instance.
Inputs/Outputs
• digital waveform —
response to invert error specifies what to do if any value in the digital input is not a 0, 1, H, or L.
Warn but Convert (default)—Any values that are not 0, 1, H, or L are left unchanged and a
0
warning is returned in error out.
1 Fail—The VI returns an empty inverted digital output and returns an error in error out.
1366 ni.com
Functions
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
signal index specifies the signal at which to begin inverting data. The default is 0, which inverts
all signals.
number of signals specifies the number of signals to invert, beginning with the signal at signal
index.
• inverted waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• digital data —
response to invert error specifies what to do if any value in the digital input is not a 0, 1, H, or L.
Warn but Convert (default)—Any values that are not 0, 1, H, or L are left unchanged and a
0
warning is returned in error out.
1 Fail—The VI returns an empty inverted digital output and returns an error in error out.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
signal index specifies the signal at which to begin inverting data. The default is 0, which inverts
all signals.
number of signals specifies the number of signals to invert, beginning with the signal at signal
index.
• error out —
error out contains error information. This output provides standard error out functionality.
Groups digital data into a digital data array and groups digital waveforms into a digital
waveform array.
1368 ni.com
Functions
Option Description
Specifies the number of signals you want to wire to the Express VI. Configure this option
first.
Number
of signals
This number must match the number of signals you wire to Digital Data In. Otherwise,
LabVIEW returns an error.
Use
Allows you to retain the original names of the waveforms you wire to Digital Data In.
incoming
This checkbox contains a checkmark by default. Remove the checkmark from this
waveform
checkbox to use the line and bus names you specify using the Rename button.
names
Order of
Displays the sequential order of the digital signals.
signals
Contains the lines and buses you configure in the configuration dialog box.
Plot Use this tree control to drag and drop lines into the order you want to view them in the
Legend output array. To put lines into groups, right-click a line and select Insert Bus and then
drag other lines onto that bus. You cannot drag a line onto another line, a bus onto
another bus, or a bus onto a line.
Graph Displays a preview of the lines and buses based on the organization you specify in the
Preview configuration dialog box.
Rename Allows you to rename the line or bus you select in the Plot Legend tree control. You also
Option Description
can right-click a line or bus and select Rename from the shortcut menu or double-click
a line or bus to type a new name.
To rename lines or buses, you must remove the checkmark from the Use incoming
waveform names checkbox. Otherwise, the incoming line names take precedence over
the new names you specify.
Inserts a new bus above the line or bus you select in the Plot Legend tree control. You
Insert Bus
also can right-click a line or bus and select Insert Bus from the shortcut menu.
Deletes all the buses from the Plot Legend tree control.
Delete All
To delete a single bus, right-click the bus and select Delete Bus from the shortcut
Buses
menu. You can delete only buses, not lines. LabVIEW considers lines listed under
deleted buses as ungrouped signals.
Inputs/Outputs
• error in (no error) —
Describes error conditions that occur before this node runs.
• Digital Data In —
Specifies the input signals you want to organize into groups.
• error out —
Contains error information. This output provides standard error out functionality.
• Digital Data Out —
Returns a digital data array or a digital waveform array, depending on the data type of Digital
Data In.
Use the digital ring constant to set the digital bit state of a digital waveform or digital
data.
You select, add or remove, and rearrange values in ring constants much the same way
you do for ring and enumerated controls.
1370 ni.com
Functions
The digital ring constant includes a predefined list of the eight digital states supported
by the digital waveform and digital data type:
Digital
Description
Data State
0 (Force
Force logic low. Drive to the low voltage level (VIL).
Down)
1 (Force
Force logic high. Drive to the high voltage level (VIH).
Up)
Z (Force
Force logic high impedance. Turn the driver off.
Off)
L (Compare Compare logic low (edge). Compare for a voltage level lower than the low voltage
Low) threshold (VOL).
H
Compare logic high (edge). Compare for a voltage level higher than the high voltage
(Compare
threshold (VOH).
High)
X (Compare
Compare logic unknown. Do not compare.
Unknown)
T
Compare logic high impedance (edge). Compare for a voltage level between the low
(Compare
voltage threshold (VOL) and the high voltage threshold (VOH).
Off)
V (Compare Compare logic valid level (edge). Compare for a voltage level either lower than the low
Valid) voltage threshold (VOL) or higher than the high voltage threshold (VOH).
You can change the representation of a ring constant to any digital state you want to
use.
Returns an empty digital waveform. Use this constant to initialize shift registers or
build digital waveforms.
Inputs/Outputs
• digital waveform out —
Returns empty digital data. Use this constant to initialize shift registers or build digital
tables.
Inputs/Outputs
• digital data —
Digital Conversion
Use the Digital Conversion VIs and Functions to convert to and from digital data.
1372 ni.com
Functions
Palette
Description
Object
Boolean
Converts a 2D Boolean array to a digital waveform or digital data. You must manually
Array to
select the polymorphic instance you want to use.
Digital
Binary to Converts a binary array of unsigned integers to a digital waveform or set of digital
Digital data. You must manually select the polymorphic instance you want to use.
Spreadsheet
Converts a spreadsheet string to a digital waveform or set of digital data. You must
String to
manually select the polymorphic instance you want to use.
Digital
Digital to Converts the digital waveform or digital data in the digital input to a 2D Boolean
Boolean array. Wire data to the digital waveform input to determine the polymorphic
Array instance to use or manually select the instance.
Digital to Converts a digital waveform or set of digital data to a binary array of unsigned
Binary integers. You must manually select the polymorphic instance you want to use.
Examples
Inputs/Outputs
• compress data (F) —
compress data specifies whether to compress the digital output. The default is FALSE.
• boolean array —
boolean array is the 2D Boolean array you want to convert to digital waveform.
• sample rate —
sample rate specifies the frequency in samples per second of the output digital waveform.
• mode —
mode specifies whether the conversion is performed on the data with the least significant bit
(LSB) first or most significant bit (MSB) first. The order of the digital data in digital waveform
reflects the selection made in mode.
1374 ni.com
Functions
LSB First
0
(default)
1 MSB First
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• digital waveform —
digital waveform returns the waveform resulting from the conversion of boolean array.
The order of the digital data in digital waveform reflects the bit direction selected in mode.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Inputs/Outputs
• compress data (F) —
compress data specifies whether to compress the digital output. The default is FALSE.
• boolean array —
boolean array is the 2D Boolean array you want to convert to digital data.
• mode —
mode specifies whether the conversion is performed on the data with least significant bit (LSB)
first or most significant bit (MSB) first. The order of the digital data in digital data reflects the
selection made in mode.
LSB First
0
(default)
1 MSB First
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• digital data —
digital data returns the digital data resulting from the conversion of boolean array.
The order of the digital data reflects the bit direction selected in mode.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1376 ni.com
Functions
Binary to Digital
Converts a binary array of unsigned integers to a digital waveform or set of digital data.
You must manually select the polymorphic instance you want to use.
Inputs/Outputs
• compress data (T) —
compress data specifies whether to compress the digital output. The default is TRUE.
• binary array —
binary array is the 1D array of unsigned 32-bit integers you want to convert to a digital
• sample rate —
sample rate specifies the frequency in samples per second of the output digital waveform.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digital waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• compress data (T) —
compress data specifies whether to compress the digital output. The default is TRUE.
• binary array —
binary array is the 1D array of unsigned 32-bit integers you want to convert to a digital
waveform or set of digital data.
1378 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digital data —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• compress data (T) —
compress data specifies whether to compress the digital output. The default is TRUE.
• binary array —
binary array is the 1D array of unsigned 16-bit integers you want to convert to a digital
waveform or set of digital data.
• sample rate —
sample rate specifies the frequency in samples per second of the output digital waveform.
error in describes error conditions that occur before this node runs. This input provides
• digital waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• compress data (T) —
compress data specifies whether to compress the digital output. The default is TRUE.
• binary array —
binary array is the 1D array of unsigned 16-bit integers you want to convert to a digital
waveform or set of digital data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digital data —
• error out —
1380 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• compress data (T) —
compress data specifies whether to compress the digital output. The default is TRUE.
• binary array —
binary array is the 1D array of unsigned 8-bit integers you want to convert to a digital waveform
or set of digital data.
• sample rate —
sample rate specifies the frequency in samples per second of the output digital waveform.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digital waveform —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• compress data (T) —
compress data specifies whether to compress the digital output. The default is TRUE.
• binary array —
binary array is the 1D array of unsigned 8-bit integers you want to convert to a digital waveform
or set of digital data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digital data —
• error out —
error out contains error information. This output provides standard error out functionality.
1382 ni.com
Functions
Inputs/Outputs
• compress data (T) —
compress data specifies whether to compress the digital output. The default is TRUE.
• spreadsheet string —
spreadsheet string contains numeric or string values separated into columns by delimiters, such
as tabs or commas, with an end-of-line (EOL) character separating rows. spreadsheet string
should be a delimited list of ASCII characters representing the 8 supported digital data states,
shown in the following table.
Digital
Value Description
Data State
0 (Drive
0 Force logic low. Drive to the low voltage level (VOL).
Low)
1 (Drive
1 Force logic high. Drive to the high voltage level (VOH).
High)
Z (Force
2 Force logic high impedance. Turn the driver off.
Off)
Digital
Value Description
Data State
L
Compare logic low (edge). Compare for a voltage level lower than the low
3 (Compare
voltage threshold.
Low)
H
Compare logic high (edge). Compare for a voltage level higher than the high
4 (Compare
voltage threshold (VOH).
High)
X
5 (Compare Compare logic unknown. Do not compare.
Unknown)
T
Compare logic high impedance (edge). Compare for a voltage level between
6 (Compare
the low voltage threshold (VOL) and the high voltage threshold (VOH).
Off)
V
Compare logic valid level (edge). Compare for a voltage level either lower than
7 (Compare
the low voltage threshold (VOL) or higher than the high voltage threshold (VOH).
Valid)
• delimiter (tab) —
delimiter is the value or values used to separate fields in the spreadsheet file. The default is a
single tab character.
• sample rate —
sample rate specifies the frequency in samples per second of the output digital waveform.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
position first column specifies whether the first column from spreadsheet string represents the
least significant bit (LSB) or most significant bit (MSB) of the waveform.
• digital waveform —
• error out —
1384 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• compress data (T) —
compress data specifies whether to compress the digital output. The default is TRUE.
• spreadsheet string —
spreadsheet string contains numeric or string values separated into columns by delimiters, such
as tabs or commas, with an end-of-line (EOL) character separating rows. spreadsheet string
should be a delimited list of ASCII characters representing the 8 supported digital data states,
shown in the following table.
Digital
Value Description
Data State
0 (Drive
0 Force logic low. Drive to the low voltage level (VOL).
Low)
1 (Drive
1 Force logic high. Drive to the high voltage level (VOH).
High)
Z (Force
2 Force logic high impedance. Turn the driver off.
Off)
L
Compare logic low (edge). Compare for a voltage level lower than the low
3 (Compare
voltage threshold.
Low)
4 H Compare logic high (edge). Compare for a voltage level higher than the high
Digital
Value Description
Data State
(Compare
voltage threshold (VOH).
High)
X
5 (Compare Compare logic unknown. Do not compare.
Unknown)
T
Compare logic high impedance (edge). Compare for a voltage level between
6 (Compare
the low voltage threshold (VOL) and the high voltage threshold (VOH).
Off)
V
Compare logic valid level (edge). Compare for a voltage level either lower than
7 (Compare
the low voltage threshold (VOL) or higher than the high voltage threshold (VOH).
Valid)
• delimiter (tab) —
delimiter is the value or values used to separate fields in the spreadsheet file. The default is a
single tab character.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
position first column specifies whether the first column from spreadsheet string represents the
least significant bit (LSB) or most significant bit (MSB) of the waveform.
• digital data —
• error out —
error out contains error information. This output provides standard error out functionality.
1386 ni.com
Functions
Wire data to the digital waveform input to determine the polymorphic instance to use
or manually select the instance.
Inputs/Outputs
• digital waveform —
• response on error —
response on error specifies what to do if any value in the digital input is not a 0, 1, H, or L.
Warn but Convert (default)—Any values that are not 0, 1, H, or L are converted to FALSE and a
0
warning is returned in error out.
1 Fail—boolean array is returned empty and an error is returned in error out.
• mode —
mode specifies whether the conversion is performed on the data with the least significant bit
(LSB) first or most significant bit (MSB) first. The order of the Boolean values in boolean array
LSB First
0
(default)
1 MSB First
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• boolean array —
boolean array returns the converted Boolean array. The order of the Boolean values in boolean
array reflects the bit direction selected in mode.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• digital data —
1388 ni.com
Functions
• response on error —
response on error specifies what to do if any value in the digital input is not a 0, 1, H, or L.
Warn but Convert (default)—Any values that are not 0, 1, H, or L are converted to FALSE and a
0
warning is returned in error out.
1 Fail—boolean array is returned empty and an error is returned in error out.
• mode —
mode specifies whether the conversion is performed on the data with the least significant bit
(LSB) first or most significant bit (MSB) first. The order of the Boolean values in boolean array
reflects the selection made in mode.
LSB First
0
(default)
1 MSB First
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• boolean array —
boolean array returns the converted Boolean array. The order of the Boolean values in boolean
array reflects the bit direction selected in mode.
• error out —
error out contains error information. This output provides standard error out functionality.
Digital to Binary
Converts a digital waveform or set of digital data to a binary array of unsigned integers.
You must manually select the polymorphic instance you want to use.
Inputs/Outputs
• digital waveform —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• binary array —
binary array is the array resulting from the conversion of the digital input.
• error out —
error out contains error information. This output provides standard error out functionality.
1390 ni.com
Functions
Inputs/Outputs
• digital data —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• binary array —
binary array is the array resulting from the conversion of the digital input.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• digital waveform —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• binary array —
binary array is the array resulting from the conversion of the digital input.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• digital data —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• binary array —
1392 ni.com
Functions
binary array is the array resulting from the conversion of the digital input.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• digital waveform —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• binary array —
binary array is the array resulting from the conversion of the digital input.
• error out —
error out contains error information. This output provides standard error out functionality.
You must manually select the polymorphic instance you want to use.
Inputs/Outputs
• digital data —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• binary array —
binary array is the array resulting from the conversion of the digital input.
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Waveform File I/O VIs to write waveform data to and read waveform data from
files.
Palette
Description
Object
Write
Waveforms Creates a new file or appends to an existing file, writes the specified number of
to File
1394 ni.com
Functions
Palette
Description
Object
records to the file, then closes the file and checks for errors. Each record is an array of
waveforms. Wire data to the Waveform input to determine the polymorphic instance
to use or manually select the instance.
Read Opens a file created with the Write Waveforms to File VI and reads one record of the
Waveforms file. Each record might contain one or more separate waveforms. To retrieve all
from File records in the file, call this VI in a loop until the end of the file is reached.
Export
Waveforms Converts a waveform to a text string and writes the string to a new byte stream file or
to appends the string to an existing file. Wire data to the waveforms input to determine
Spreadsheet the polymorphic instance to use or manually select the instance.
File
Examples
Creates a new file or appends to an existing file, writes the specified number of records
to the file, then closes the file and checks for errors. Each record is an array of
waveforms. Wire data to the Waveform input to determine the polymorphic instance
to use or manually select the instance.
You can use any file extension, for example .dat or .txt, for the file you write the
waveform data to.
You can use any file extension, for example .dat or .txt, for the file you write the
waveform data to.
Inputs/Outputs
• file path (dialog if empty) —
file path specifies the file where the waveform is located. If you do not wire this input, LabVIEW
displays a non-native file dialog box instead of a native file dialog box.
• waveform —
append to file? appends data to an existing file, if TRUE. If append to file? is FALSE (default), the
VI replaces data in an existing file. If there is no existing file, the VI creates a new file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
1396 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
You can use any file extension, for example .dat or .txt, for the file you write the
waveform data to.
Inputs/Outputs
• file path (dialog if empty) —
file path specifies the file where the waveform is located. If you do not wire this input, LabVIEW
displays a non-native file dialog box instead of a native file dialog box.
• waveform array —
append to file? appends data to an existing file, if TRUE. If append to file? is FALSE (default), the
VI replaces data in an existing file. If there is no existing file, the VI creates a new file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
You can use any file extension, for example .dat or .txt, for the file you write the
waveform data to.
Inputs/Outputs
• file path (dialog if empty) —
file path specifies the file where the waveform is located. If you do not wire this input, LabVIEW
displays a non-native file dialog box instead of a native file dialog box.
• waveform array —
1398 ni.com
Functions
append to file? appends data to an existing file, if TRUE. If append to file? is FALSE (default), the
VI replaces data in an existing file. If there is no existing file, the VI creates a new file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
You can use any file extension, for example .dat or .txt, for the file you write the
waveform data to.
Inputs/Outputs
• file path (dialog if empty) —
file path specifies the file where the waveform is located. If you do not wire this input, LabVIEW
displays a non-native file dialog box instead of a native file dialog box.
• waveform —
append to file? appends data to an existing file, if TRUE. If append to file? is FALSE (default), the
VI replaces data in an existing file. If there is no existing file, the VI creates a new file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Opens a file created with the Write Waveforms to File VI and reads one record of the
file. Each record might contain one or more separate waveforms. To retrieve all records
in the file, call this VI in a loop until the end of the file is reached.
1400 ni.com
Functions
in the file, call this VI in a loop until the end of the file is reached.
Inputs/Outputs
• file path (dialog if empty) —
file path specifies the file where the waveform is located. If you do not wire this input, LabVIEW
displays a non-native file dialog box instead of a native file dialog box.
• offset (records:0) —
offset specifies in records which record to read from the file. The first record is 0. The default is 0.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
first waveform in record returns the data of the first waveform in the record.
all waveforms in record returns the data from all waveforms in the record. If there is only one
waveform in the record, this output is identical to first waveform in record.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• file path (dialog if empty) —
file path specifies the file where the waveform is located. If you do not wire this input, LabVIEW
displays a non-native file dialog box instead of a native file dialog box.
• offset (records:0) —
offset specifies in records which record to read from the file. The first record is 0. The default is 0.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digital waveform —
digital waveform returns the data of the first waveform in the record.
• error out —
error out contains error information. This output provides standard error out functionality.
1402 ni.com
Functions
Converts a waveform to a text string and writes the string to a new byte stream file or
appends the string to an existing file. Wire data to the waveforms input to determine
the polymorphic instance to use or manually select the instance.
This VI opens or creates the file beforehand and closes it afterwards. You can use this VI
to create a text file readable by most spreadsheet applications.
Examples
Inputs/Outputs
• delimiter (Tab) —
delimiter is the character or string of characters to use to separate fields in the spreadsheet file.
For example, a value of , specifies a single comma as the delimiter, and a carriage return
specifies a new line as the delimiter. The default specifies a single tab character as the delimiter.
You also can use backslash ('\') codes to specify a delimiter by right-clicking the string control or
constant and selecting '\' Codes Display from the shortcut menu.
• prompt —
prompt is the prompt of the file save dialog if the file path is empty.
file path is the path name of the file. If file path is empty (default) or is <Not A Path>, the VI
displays a dialog box from which you can select a file. Error 43 occurs if you cancel the dialog
box.
• waveforms —
If multiple time columns? is TRUE, the VI writes separate time columns for each separate
channel written to the file. If multiple time columns? is FALSE (default), a single time column
represents the same time range for all waveforms written to the file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
1404 ni.com
Functions
append to file? appends data to an existing file, if TRUE. If append to file? is FALSE (default), the
VI replaces data in an existing file. If there is no existing file, the VI creates a new file.
If header? (write header:T) is TRUE (default), the VI prints column and row headings, which
contain time and date information and labels for the data. If header? is FALSE, the VI does not
print column and row headings.
new file path (Not A Path if cancelled) is the path of the file to which the VI wrote data. You can
use this output to determine the path of a file that you opened using a dialog box. new file path
is <Not A Path> if you cancelled the dialog box.
• error out —
error out contains error information. This output provides standard error out functionality.
This VI opens or creates the file beforehand and closes it afterwards. You can use this VI
to create a text file readable by most spreadsheet applications.
Examples
Inputs/Outputs
• delimiter (Tab) —
delimiter is the character or string of characters to use to separate fields in the spreadsheet file.
For example, a value of , specifies a single comma as the delimiter. The default specifies a single
tab character as the delimiter.
• prompt —
prompt is the prompt of the file save dialog if the file path is empty.
file path is the path name of the file. If file path is empty (default) or is <Not A Path>, the VI
displays a dialog box from which you can select a file. Error 43 occurs if you cancel the dialog
box.
• waveforms —
If multiple time columns? is TRUE, the VI writes separate time columns for each separate
channel written to the file. If multiple time columns? is FALSE (default), a single time column
represents the same time range for all waveforms written to the file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
1406 ni.com
Functions
append to file? appends data to an existing file, if TRUE. If append to file? is FALSE (default), the
VI replaces data in an existing file. If there is no existing file, the VI creates a new file.
If header? (write header:T) is TRUE (default), the VI prints column and row headings, which
contain time and date information and labels for the data. If header? is FALSE, the VI does not
print column and row headings.
new file path (Not A Path if cancelled) is the path of the file to which the VI wrote data. You can
use this output to determine the path of a file that you opened using a dialog box. new file path
is <Not A Path> if you cancelled the dialog box.
• error out —
error out contains error information. This output provides standard error out functionality.
This VI opens or creates the file beforehand and closes it afterwards. You can use this VI
to create a text file readable by most spreadsheet applications.
Examples
Inputs/Outputs
• delimiter (Tab) —
delimiter is the character or string of characters to use to separate fields in the spreadsheet file.
For example, a value of , specifies a single comma as the delimiter, and a carriage return
specifies a new line as the delimiter. The default specifies a single tab character as the delimiter.
You also can use backslash ('\') codes to specify a delimiter by right-clicking the string control or
constant and selecting '\' Codes Display from the shortcut menu.
• prompt —
prompt is the prompt of the file save dialog if the file path is empty.
file path is the path name of the file. If file path is empty (default) or is <Not A Path>, the VI
displays a dialog box from which you can select a file. Error 43 occurs if you cancel the dialog
box.
• waveform —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
append to file? appends data to an existing file, if TRUE. If append to file? is FALSE (default), the
VI replaces data in an existing file. If there is no existing file, the VI creates a new file.
1408 ni.com
Functions
If header? (write header:T) is TRUE (default), the VI prints column and row headings, which
contain time and date information and labels for the data. If header? is FALSE, the VI does not
print column and row headings.
new file path (Not A Path if cancelled) is the path of the file to which the VI wrote data. You can
use this output to determine the path of a file that you opened using a dialog box. new file path
is <Not A Path> if you cancelled the dialog box.
• error out —
error out contains error information. This output provides standard error out functionality.
This VI opens or creates the file beforehand and closes it afterwards. You can use this VI
to create a text file readable by most spreadsheet applications.
Examples
Inputs/Outputs
• delimiter (Tab) —
delimiter is the character or string of characters to use to separate fields in the spreadsheet file.
For example, a value of , specifies a single comma as the delimiter, and a carriage return
specifies a new line as the delimiter. The default specifies a single tab character as the delimiter.
You also can use backslash ('\') codes to specify a delimiter by right-clicking the string control or
constant and selecting '\' Codes Display from the shortcut menu.
• prompt —
prompt is the prompt of the file save dialog if the file path is empty.
file path is the path name of the file. If file path is empty (default) or is <Not A Path>, the VI
displays a dialog box from which you can select a file. Error 43 occurs if you cancel the dialog
box.
• Digital Waveform —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
append to file? appends data to an existing file, if TRUE. If append to file? is FALSE (default), the
VI replaces data in an existing file. If there is no existing file, the VI creates a new file.
1410 ni.com
Functions
If header? (write header:T) is TRUE (default), the VI prints column and row headings, which
contain time and date information and labels for the data. If header? is FALSE, the VI does not
print column and row headings.
new file path (Not A Path if cancelled) is the path of the file to which the VI wrote data. You can
use this output to determine the path of a file that you opened using a dialog box. new file path
is <Not A Path> if you cancelled the dialog box.
• error out —
error out contains error information. This output provides standard error out functionality.
This VI opens or creates the file beforehand and closes it afterwards. You can use this VI
to create a text file readable by most spreadsheet applications.
Examples
Collection
Use the Collection VIs and functions to manipulate collection data.
Map Use the Map VIs and functions to create and manipulate maps.
Set Use the Set VIs and functions to create and manipulate sets.
Map
Use the Map VIs and functions to create and manipulate maps.
Palette
Description
Object
Creates a map from the input key-value entries. For entries with duplicate keys, this
Build Map
function includes only the last entry in the resulting map.
Insert Into Inserts a key and its associated value into a map. If the key is already included in the
Map map, this function replaces the original value of the key with the new associated
Function value.
Remove
From Map Removes a key and its associated value from a map.
Function
Look In
Checks whether a map includes an entry with the specified key and returns the
Map
associated value of the key.
Function
Read Map
Max & Min
Returns the maximum and minimum keys in a map.
Keys
Function
Represents a map on the block diagram. You cannot modify the embedded data in a
map interactively or programmatically. You can update map data only as a whole
Map
through operations such as writing to the map front panel terminal or right-clicking
Constant
the map and selecting Data Operations>>Copy Data or Data Operations>>Paste
Data.
Collection
Size Returns the number of elements or entries in a collection.
Function
Empty
Collection? Returns TRUE if the input collection contains zero elements or entries.
Function
1412 ni.com
Functions
Palette
Description
Object
Convert
Map To Places the code that you can use to convert a map to an array.
Array
In Place Places an In Place Element structure on the block diagram with the Map Get / Replace
Map Access Value border node added.
Use the Registration Map VIs to create and manipulate registration maps. A
Registration
registration map is a map between a key and a set of elements with operations to
Map
signal when clients register or unregister for one or more services.
Build Map
Creates a map from the input key-value entries. For entries with duplicate keys, this
function includes only the last entry in the resulting map.
Inputs/Outputs
• key —
key specifies the key of the entry. This input accepts any data type. All the keys must be unique
and of the same data type.
• value —
value specifies the value of the entry. This input accepts any data type. All the values must be of
the same data type.
• map —
Examples
Inserts a key and its associated value into a map. If the key is already included in the
map, this function replaces the original value of the key with the new associated value.
Inputs/Outputs
• map in —
map in specifies the map in which you want to insert a key-value entry. This input accepts a map
of any data type. The default data type is a map of 32-bit signed integers.
• key —
key specifies the key of the entry to insert into the map.
The key must be of the same data type as the existing keys in the map.
• value —
value specifies the value of the entry. This input must be of the same data type as the existing
values in the map.
• map out —
1414 ni.com
Functions
key already included? returns whether map in already includes key. If key already included? is
TRUE, this function replaces the associated value of key in map in with value and returns the
resulting map in map out.
• value unchanged? —
value unchanged? returns whether any values in the input map are updated after the insertion.
Examples
Inputs/Outputs
• map in —
map in specifies the map from which you want to remove an entry. This input accepts a map of
any data type. The default data type is a map of 32-bit signed integers.
• key —
key specifies the key of the entry to remove. This input must be of the same data type as the
existing keys in the map.
• map out —
map out returns the map with the entry of the specified key removed.
key not found? returns whether map in includes an entry with the specified key.
• value —
Examples
Checks whether a map includes an entry with the specified key and returns the
associated value of the key.
Inputs/Outputs
• map —
map specifies the map in which you want to look for a key. This input accepts a map of any data
type. The default data type is a map of 32-bit signed integers.
• key —
key specifies the key to look for in the map. The key must be of the same data type as the
existing keys in the map.
• default value —
default value specifies the value to return in value if the specified key does not exist in the map.
This input must be of the same data type as the existing values in the map.
1416 ni.com
Functions
key not found? returns TRUE if map does not include an entry with the specified key. Otherwise,
key not found? returns FALSE.
• value —
value returns the value of the entry with the associated key if key not found? is FALSE. If key not
found? is TRUE, this output returns the value in default value.
Examples
Inputs/Outputs
• map —
map specifies the map in which you want to look for the maximum and minimum keys. This
input accepts a map of any data type. The default data type is a map of 32-bit signed integers.
• maximum —
• minimum —
Map Constant
Represents a map on the block diagram. You cannot modify the embedded data in a
map interactively or programmatically. You can update map data only as a whole
through operations such as writing to the map front panel terminal or right-clicking
the map and selecting Data Operations>>Copy Data or Data Operations>>Paste Data.
Examples
Inputs/Outputs
• collection —
collection specifies the collection. This input accepts any collection data type.
• size —
1418 ni.com
Functions
Inputs/Outputs
• collection —
collection specifies the collection. This input accepts any collection data type.
• empty? —
empty? returns TRUE if collection is empty. Otherwise, this output returns FALSE.
Examples
Places the code that you can use to convert a map to an array.
When you add this VI to the block diagram, a For Loop displays. Wire a map to the
tunnel input and return an array through the tunnel output.
Places an In Place Element structure on the block diagram with the Map Get / Replace
Value border node added.
Registration Map
Use the Registration Map VIs to create and manipulate registration maps. A registration
map is a map between a key and a set of elements with operations to signal when
clients register or unregister for one or more services.
Registration Adds a set element in a registration map. This VI signals the calling VI if it is
Map:Register the first time any set element has registered for this key.
Registration
Checks if a set element is registered for a key in a registration map. This VI
Map:Confirm
signals the calling VI if the set element has registered for the key.
Registration
Registration Removes an entry from a registration map. This VI signals the calling VI if the
Map:Unregister given element is the last element registered for this key.
1420 ni.com
Functions
Registration Map:Register
Adds a set element in a registration map. This VI signals the calling VI if it is the first
time any set element has registered for this key.
Inputs/Outputs
• map in —
map in specifies the registration map in which you want to insert an entry. This input accepts a
map of sets of any data type. The default data type is a map of sets of 32-bit signed integers.
• key —
key specifies the key. This input must be of the same data type as the existing keys in the map.
• set element —
set element specifies the set element that may be registered for the specified key. This input
must be of the same data type as the elements of the sets in the map.
• map out —
map out returns the registration map with the inserted entry.
element already registered? returns whether map in already includes set element.
first registration for this key? returns whether this is the first time that the key is registered.
Examples
Inputs/Outputs
• map —
map specifies the registration map in which you want to check for the registration status of a set
element. This input accepts a map of sets of any data type. The default data type is a map of sets
of 32-bit signed integers.
• key —
key specifies the key. This input must be of the same data type as the existing keys in the map.
• set element —
set element specifies the set element that may be registered for the specified key. This input
must be of the same data type as the elements of the sets in the map.
is element registered for key? returns whether the set element has been registered for the key.
Registration Map:Unregister
Removes an entry from a registration map. This VI signals the calling VI if the given
element is the last element registered for this key.
1422 ni.com
Functions
Inputs/Outputs
• map in —
map in specifies the registration map from which you want to remove an element. This input
accepts a map of sets of any data type. The default data type is a map of sets of 32-bit signed
integers.
• key —
key specifies the key. This input must be of the same data type as the existing keys in the map.
• set element —
set element specifies the set element that may be registered for the specified key. This input
must be of the same data type as the elements of the sets in the map.
• map out —
map out returns the registration map with the specified entry removed.
element not registered for this key? returns whether the specified set element has been
registered for the specified key.
removed last registration for this key? returns whether the specified set of elements is the last
set of elements registered for this key.
Examples
Set
Use the Set VIs and functions to create and manipulate sets.
Palette
Description
Object
Creates a set from the input elements. Duplicate elements appear only once in the
Build Set
resulting set.
Insert Into
Set Inserts an element into a set.
Function
Remove
From Set Removes an element from a set.
Function
Element of
Set? Returns whether an element is a member of a set.
Function
Read Set
Max & Min Returns the maximum and minimum elements in a set.
Function
Represents a set on the block diagram. You cannot modify the embedded data in a set
Set interactively or programmatically. You can update set data only as a whole through
Constant operations such as writing to the set front panel terminal or right-clicking the set and
selecting Data Operations>>Copy Data or Data Operations>>Paste Data.
Collection
Size Returns the number of elements or entries in a collection.
Function
Empty
Collection? Returns TRUE if the input collection contains zero elements or entries.
Function
Convert Set
Places the code that you can use to convert a set to an array.
To Array
1424 ni.com
Functions
Palette
Description
Object
Computes the union of two sets. The union is all elements that belong to either of the
Set Union
two sets.
Set Computes the intersection of two sets. The intersection is all the elements that
Intersection belong to both sets.
Set Computes the Cartesian product of two sets. The Cartesian product is a set of
Cartesian 2-element clusters which covers all possible combinations of elements from the two
Product sets.
Set Computes the difference of two sets. The difference is the elements from the first set
Difference that are not included in the second set.
Set
Symmetric Computes the symmetric difference of two sets.
Difference
Build Set
Creates a set from the input elements. Duplicate elements appear only once in the
resulting set.
Inputs/Outputs
• element —
This input accepts any data type. The default data type is string. All the element inputs must be
• set —
Inputs/Outputs
• set in —
set in specifies the set in which you want to insert an element. This input accepts a set of any
data type. The default data type is a set of strings.
• element —
element specifies the data you want to insert into the set. This input must be of the same data
type as the existing elements in the set.
• set out —
• already included? —
already included? returns whether set in already includes the inserted element. If already
included? is TRUE, set out returns the same set as set in.
Examples
1426 ni.com
Functions
Counting.vi
• labview\examples\Design Patterns\Registration Map\
Registration Map Usage.lvproj
Inputs/Outputs
• set in —
set in specifies the set in which you want to remove an element. This input accepts a set of any
data type. The default data type is a set of strings.
• element —
element specifies the data you want to remove from the set. This input must be of the same data
type as the elements in the set.
• set out —
set out returns the set with the specified element removed.
• not included? —
not included? returns whether set in includes element. If not included? is TRUE, set out returns
the same set as set in.
Examples
Inputs/Outputs
• set —
set specifies the set. This input accepts a set of any data type. The default data type is a set of
strings.
• element —
element specifies the data to look for in the set. This input must be of the same data type as the
elements in set.
• found? —
found? returns TRUE if element is included in set. Otherwise, found? returns FALSE.
Inputs/Outputs
• set —
set specifies the set. This input accepts a set of any data type. The default data type is a set of
strings.
• maximum —
1428 ni.com
Functions
• minimum —
Set Constant
Represents a set on the block diagram. You cannot modify the embedded data in a set
interactively or programmatically. You can update set data only as a whole through
operations such as writing to the set front panel terminal or right-clicking the set and
selecting Data Operations>>Copy Data or Data Operations>>Paste Data.
Inputs/Outputs
• collection —
collection specifies the collection. This input accepts any collection data type.
• size —
Inputs/Outputs
• collection —
collection specifies the collection. This input accepts any collection data type.
• empty? —
empty? returns TRUE if collection is empty. Otherwise, this output returns FALSE.
Examples
Places the code that you can use to convert a set to an array.
When you add this VI to the block diagram, a For Loop displays. Wire a set to the tunnel
input and return an array through the tunnel output.
1430 ni.com
Functions
Set Union
Computes the union of two sets. The union is all elements that belong to either of the
two sets.
Inputs/Outputs
• set 1 —
set 1 specifies the first set. This input accepts a set of any data type. The default data type is a set
of strings.
• set 2 —
set 2 specifies the second set. This input must be the same data type as set 1. The default data
type is a set of strings.
• union —
The following figure illustrates how this VI computes the union of two sets. The two
circles represent the two sets. The green section is the union.
Examples
Set Intersection
Computes the intersection of two sets. The intersection is all the elements that belong
to both sets.
Inputs/Outputs
• set 1 —
set 1 specifies the first set. This input accepts a set of any data type. The default data type is a set
of strings.
• set 2 —
set 2 specifies the second set. This input must be the same data type as set 1. The default data
type is a set of strings.
• intersection —
intersection returns a set with the duplicate elements from the two input sets.
The following figure illustrates how this VI computes the intersection of two sets. The
two circles represent the two sets. The green section is the intersection.
1432 ni.com
Functions
Examples
Computes the Cartesian product of two sets. The Cartesian product is a set of
2-element clusters which covers all possible combinations of elements from the two
sets.
Inputs/Outputs
• set 1 —
set 1 specifies the first set. This input accepts a set of any data type. The default data type is a set
of strings.
• set 2 —
set 2 specifies the second set. This input accepts a set of any data type. The default data type is a
set of strings.
• Cartesian product —
Cartesian product returns a set of 2-element clusters which covers all possible combinations of
elements in set 1 and set 2. For each cluster, the first element is from set 1 and the second
element is from set 2.
Set Difference
Computes the difference of two sets. The difference is the elements from the first set
that are not included in the second set.
Inputs/Outputs
• set 1 —
set 1 specifies the first set. This input accepts a set of any data type. The default data type is a set
of strings.
• set 2 —
set 2 specifies the second set. This input must be the same data type as set 1. The default data
type is a set of strings.
• difference —
difference returns a set of elements from set 1 that are not included in set 2.
The following figure illustrates how this VI computes the difference of two sets. The
two circles represent the two sets. The green section is the difference.
1434 ni.com
Functions
Examples
Inputs/Outputs
• set 1 —
set 1 specifies the first set. This input accepts a set of any data type. The default data type is a set
of strings.
• set 2 —
set 2 specifies the second set. This input must be the same data type as set 1. The default data
type is a set of strings.
• symmetric difference —
symmetric difference returns a set of elements that are included in either set 1 or set 2 but not
both.
The following figure illustrates how this VI computes the symmetric difference of two
sets. The two circles represent the two sets. The green sections are the symmetric
difference.
Examples
File I/O
Use the File I/O VIs and functions to open and close files, read from and write to files,
create directories and files you specify in the path control, retrieve directory
information, and write strings, numbers, arrays, and clusters to files.
Use the VIs and functions on this palette to perform common I/O operations and other
types of file I/O operations. You can read or write various types of data, such as
characters or lines in text files, numeric values in spreadsheet text files, or data in
binary files.
The File I/O palette and the Advanced File palette include functions to control each file
I/O operation individually. Use these functions to create or open a file, read data from
1436 ni.com
Functions
or write data to the file, and close the file. You also can use the functions to create
directories; move, copy, or delete files; list directory contents; change file
characteristics; or manipulate paths.
Palette
Description
Object
Reads a specified number of lines or rows from a numeric text file beginning at a
Read
specified character offset and converts the data to a 2D, double-precision array of
Delimited
numbers, strings, or integers. You must manually select the polymorphic instance
Spreadsheet
you want to use.
Write To
Writes data to text-based measurement files (.lvm), binary measurement files
Measurement
(.tdm or .tdms), or Microsoft Excel files (.xlsx).
File
Read From
Reads data from a text-based measurement file (.lvm) or binary measurement file
Measurement
(.tdm or .tdms).
File
Open/Create/ Opens an existing file, creates a new file, or replaces an existing file,
Replace File programmatically or interactively using a file dialog box. This function does not
Function work for files inside an LLB.
Close File Closes an open file specified by refnum and returns the path to the file associated
Function with the refnum.
Formats string, numeric, path, or Boolean data as text and writes the text to a file. If
Format Into
you wire a file refnum to the file input, writing begins at the current file position. To
File
append to an existing file, open the file and set the file position to the end of the file
Palette
Description
Object
by using the Set File Position function. Otherwise, the function will open the file and
write to the beginning of the file. This function does not work for files inside an LLB.
Scans text in a file for string, numeric, path, and Boolean data, converts the text to a
Scan From
data type, and returns a duplicated refnum and the converted outputs in the order
File
scanned. This function does not work for files inside an LLB.
Write to Text Writes a string or an array of strings as lines to a file. This function does not work for
File Function files inside an LLB.
Read from
Reads a specified number of characters or lines from a byte stream file. This
Text File
function does not work for files inside an LLB.
Function
Write to
Writes binary data to a new file, appends data to an existing file, or replaces the
Binary File
contents of a file. This function does not work for files inside an LLB.
Function
Read from
Reads binary data from a file and returns it in data. How the data is read depends on
Binary File
the format of the specified file. This function does not work for files inside an LLB.
Function
Build Path
Creates a new path by appending a name or a relative path to an existing path.
Function
Strip Path Returns the name of the last component of a path and the stripped path that leads
Function to that component.
File
Use the file constants with the File I/O VIs and functions.
Constants
Configuration Use the Configuration File VIs to create, modify, and read a platform-independent
File VIs configuration file.
TDM Use the TDM Streaming VIs and functions to read and write waveforms and
Streaming waveform properties to binary measurement files (.tdms).
Storage/ Use the Storage/DataPlugin VIs to read measurement data from a variety of file
DataPlugin formats, write data to .tdm or .tdms files, or manage DataPlugins installed on the
1438 ni.com
Functions
Palette
Description
Object
local computer. You must download appropriate DataPlugins and register them on
the local computer before you can access the corresponding file formats. Refer to
the National Instruments website at ni.com/dataplugins to download DataPlugins.
Use the Zip VIs to create new zip files, to add files to zip files, to unzip zip files, and
Zip
to close zip files.
XML Use the XML VIs and functions to manipulate XML data.
Waveform Use the Waveform File I/O VIs to write waveform data to and read waveform data
File I/O from files.
Advanced
File Use the Advanced File VIs and functions to manipulate files, directories, and paths.
Functions
Examples
Note To format with Microsoft Excel, use ActiveX with LabVIEW or the Report
Generation Toolkit for Microsoft Office.
When you use this VI to write the data, the VI opens or creates the file before writing to
it and closes it afterwards. You can use this VI to create a text file readable by most
spreadsheet applications. This VI calls the Array To Spreadsheet String function to
convert the data.
Note To format with Microsoft Excel, use ActiveX with LabVIEW or the Report
Generation Toolkit for Microsoft Office.
Inputs/Outputs
• format (%.3f) —
1440 ni.com
Functions
If the format is %.3f (default), the VI creates a string long enough to contain the number, with
three digits to the right of the decimal point. If format is %d, the VI converts the data to integer
form using as many characters as necessary to contain the entire number. If format is %s, the VI
copies the input string. Use the format string syntax.
file path is the path name of the file. If file path is empty (default) or is <Not A Path>, the VI
displays a dialog box from which you can select a file. Error 43 occurs if you cancel the dialog
box.
• 2D data —
2D data specifies the data to write to the file if 1D data is not wired or is empty.
• 1D data —
1D data specifies the data to write to the file if this input is not empty.
append to file? appends data to an existing file, if TRUE. If append to file? is FALSE (default), the
VI replaces data in an existing file. If there is no existing file, the VI creates a new file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• transpose? (no:F) —
transpose? specifies whether the VI transposes the data after converting it from a string.
The default is FALSE. If transpose? is FALSE, each call to this VI creates a new line or row in the
file.
• delimiter (\t) —
delimiter is the character or string of characters to use to separate fields in the spreadsheet file.
For example, a value of , (comma) specifies a single comma as the delimiter. The default is \t,
which specifies a single tab character as the delimiter.
• error out —
error out contains error information. This output provides standard error out functionality.
When you use this VI to write the data, the VI opens or creates the file before writing to
it and closes it afterwards. You can use this VI to create a text file readable by most
spreadsheet applications. This VI calls the Array To Spreadsheet String function to
convert the data.
Note To format with Microsoft Excel, use ActiveX with LabVIEW or the Report
Generation Toolkit for Microsoft Office.
Inputs/Outputs
• format (%d) —
1442 ni.com
Functions
If format is %d (default), the VI converts the data to integer form using as many characters as
necessary to contain the entire number. If the format is %.3f, the VI creates a string long
enough to contain the number, with three digits to the right of the decimal point. If format is %s,
the VI copies the input string. Use the format string syntax.
file path is the path name of the file. If file path is empty (default) or is <Not A Path>, the VI
displays a dialog box from which you can select a file. Error 43 occurs if you cancel the dialog
box.
• 2D data —
2D data specifies the data to write to the file if 1D data is not wired or is empty.
• 1D data —
1D data specifies the data to write to the file if this input is not empty.
append to file? appends data to an existing file, if TRUE. If append to file? is FALSE (default), the
VI replaces data in an existing file. If there is no existing file, the VI creates a new file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• transpose? (no:F) —
transpose? specifies whether the VI transposes the data after converting it from a string.
The default is FALSE. If transpose? is FALSE, each call to this VI creates a new line or row in the
file.
• delimiter (\t) —
delimiter is the character or string of characters to use to separate fields in the spreadsheet file.
For example, a value of , (comma) specifies a single comma as the delimiter. The default is \t,
which specifies a single tab character as the delimiter.
• error out —
error out contains error information. This output provides standard error out functionality.
When you use this VI to write the data, the VI opens or creates the file before writing to
it and closes it afterwards. You can use this VI to create a text file readable by most
spreadsheet applications. This VI calls the Array To Spreadsheet String function to
convert the data.
Note To format with Microsoft Excel, use ActiveX with LabVIEW or the Report
Generation Toolkit for Microsoft Office.
Inputs/Outputs
• format (%s) —
1444 ni.com
Functions
If format is %s (default), the VI copies the input string. If the format is %.3f, the VI creates a
string long enough to contain the number, with three digits to the right of the decimal point. If
format is %d, the VI converts the data to integer form using as many characters as necessary to
contain the entire number. Use the format string syntax.
file path is the path name of the file. If file path is empty (default) or is <Not A Path>, the VI
displays a dialog box from which you can select a file. Error 43 occurs if you cancel the dialog
box.
• 2D data —
2D data specifies the data to write to the file if 1D data is not wired or is empty.
• 1D data —
1D data specifies the data to write to the file if this input is not empty.
append to file? appends data to an existing file, if TRUE. If append to file? is FALSE (default), the
VI replaces data in an existing file. If there is no existing file, the VI creates a new file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• transpose? (no:F) —
transpose? specifies whether the VI transposes the data after converting it from a string.
The default is FALSE. If transpose? is FALSE, each call to this VI creates a new line or row in the
file.
• delimiter (\t) —
delimiter is the character or string of characters to use to separate fields in the spreadsheet file.
For example, a value of , (comma) specifies a single comma as the delimiter. The default is \t,
which specifies a single tab character as the delimiter.
• error out —
error out contains error information. This output provides standard error out functionality.
When you use this VI to write the data, the VI opens or creates the file before writing to
it and closes it afterwards. You can use this VI to create a text file readable by most
spreadsheet applications. This VI calls the Array To Spreadsheet String function to
convert the data.
Reads a specified number of lines or rows from a numeric text file beginning at a
specified character offset and converts the data to a 2D, double-precision array of
numbers, strings, or integers. You must manually select the polymorphic instance you
want to use.
You optionally can transpose the array. The VI opens the file before reading from it and
closes it afterwards. You can use this VI to read a spreadsheet file saved in text format.
This VI calls the Spreadsheet String to Array function to convert the data.
Reads a specified number of lines or rows from a numeric text file beginning at a
specified character offset and converts the data to a 2D, double-precision array of
numbers, strings, or integers. You must manually select the polymorphic instance you
want to use.
1446 ni.com
Functions
You optionally can transpose the array. The VI opens the file before reading from it and
closes it afterwards. You can use this VI to read a spreadsheet file saved in text format.
This VI calls the Spreadsheet String to Array function to convert the data.
Inputs/Outputs
• format (%.3f) —
If the format is %.3f (default), the VI creates a string long enough to contain the number, with
three digits to the right of the decimal point. If format is %d, the VI converts the data to integer
form using as many characters as necessary to contain the entire number. If format is %s, the VI
copies the input string. Use the format string syntax.
file path is the path name of the file. If file path is empty (default) or is <Not A Path>, the VI
displays a dialog box from which you can select a file. Error 43 occurs if you cancel the dialog
box.
For this VI, a row is a character string ending with a carriage return, linefeed, or a carriage return
followed by a linefeed; a string ending at the end of file; or a string that has the maximum line
length specified by the max characters per row input. If number of rows is <0, the VI reads the
entire file. The default is –1.
start of read offset specifies the position in the file, in characters (bytes), at which the VI begins
reading.
The offset unit is bytes rather than numbers because byte stream files can contain segments of
different types of data. Therefore, to read an array of 100 numbers that follows a header of 57
characters, set start of read offset to 57.
max characters/row is the maximum number of characters the VI reads before ending the
search for the end of a row or line.
The default is 0, which means that there is no limit to the number of characters the VI reads.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• transpose? (F) —
transpose? specifies whether the VI transposes the data after converting it from a string.
• delimiter (\t) —
delimiter is the character or string of characters to use to separate fields in the spreadsheet file.
For example, a value of , (comma) specifies a single comma as the delimiter. The default is \t,
which specifies a single tab character as the delimiter.
• all rows —
• first row —
You can use this output when you want to read one row into a 1D array.
1448 ni.com
Functions
mark after read returns the character (byte) in the file following the last character read.
• error out —
error out contains error information. This output provides standard error out functionality.
• EOF? —
Reads a specified number of lines or rows from a numeric text file beginning at a
specified character offset and converts the data to a 2D, double-precision array of
numbers, strings, or integers. You must manually select the polymorphic instance you
want to use.
You optionally can transpose the array. The VI opens the file before reading from it and
closes it afterwards. You can use this VI to read a spreadsheet file saved in text format.
This VI calls the Spreadsheet String to Array function to convert the data.
Inputs/Outputs
• format (%d) —
If format is %d (default), the VI converts the data to integer form using as many characters as
necessary to contain the entire number. If the format is %.3f, the VI creates a string long
enough to contain the number, with three digits to the right of the decimal point. If format is %s,
the VI copies the input string. Use the format string syntax.
file path is the path name of the file. If file path is empty (default) or is <Not A Path>, the VI
displays a dialog box from which you can select a file. Error 43 occurs if you cancel the dialog
box.
For this VI, a row is a character string ending with a carriage return, linefeed, or a carriage return
followed by a linefeed; a string ending at the end of file; or a string that has the maximum line
length specified by the max characters per row input. If number of rows is <0, the VI reads the
entire file. The default is –1.
start of read offset specifies the position in the file, in characters (bytes), at which the VI begins
reading.
The offset unit is bytes rather than numbers because byte stream files can contain segments of
different types of data. Therefore, to read an array of 100 numbers that follows a header of 57
characters, set start of read offset to 57.
max characters/row is the maximum number of characters the VI reads before ending the
search for the end of a row or line.
The default is 0, which means that there is no limit to the number of characters the VI reads.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• transpose? (F) —
transpose? specifies whether the VI transposes the data after converting it from a string.
• delimiter (\t) —
1450 ni.com
Functions
delimiter is the character or string of characters to use to separate fields in the spreadsheet file.
For example, a value of , (comma) specifies a single comma as the delimiter. The default is \t,
which specifies a single tab character as the delimiter.
• all rows —
• first row —
You can use this output when you want to read one row into a 1D array.
mark after read returns the character (byte) in the file following the last character read.
• error out —
error out contains error information. This output provides standard error out functionality.
• EOF? —
Reads a specified number of lines or rows from a numeric text file beginning at a
specified character offset and converts the data to a 2D, double-precision array of
numbers, strings, or integers. You must manually select the polymorphic instance you
want to use.
You optionally can transpose the array. The VI opens the file before reading from it and
closes it afterwards. You can use this VI to read a spreadsheet file saved in text format.
This VI calls the Spreadsheet String to Array function to convert the data.
Inputs/Outputs
• format (%s) —
If format is %s (default), the VI copies the input string. If the format is %.3f, the VI creates a
string long enough to contain the number, with three digits to the right of the decimal point. If
format is %d, the VI converts the data to integer form using as many characters as necessary to
contain the entire number. Use the format string syntax.
file path is the path name of the file. If file path is empty (default) or is <Not A Path>, the VI
displays a dialog box from which you can select a file. Error 43 occurs if you cancel the dialog
box.
For this VI, a row is a character string ending with a carriage return, linefeed, or a carriage return
followed by a linefeed; a string ending at the end of file; or a string that has the maximum line
length specified by the max characters per row input. If number of rows is <0, the VI reads the
entire file. The default is –1.
start of read offset specifies the position in the file, in characters (bytes), at which the VI begins
reading.
The offset unit is bytes rather than numbers because byte stream files can contain segments of
different types of data. Therefore, to read an array of 100 numbers that follows a header of 57
characters, set start of read offset to 57.
1452 ni.com
Functions
max characters/row is the maximum number of characters the VI reads before ending the
search for the end of a row or line.
The default is 0, which means that there is no limit to the number of characters the VI reads.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• transpose? (F) —
transpose? specifies whether the VI transposes the data after converting it from a string.
• delimiter (\t) —
delimiter is the character or string of characters to use to separate fields in the spreadsheet file.
For example, a value of , (comma) specifies a single comma as the delimiter. The default is \t,
which specifies a single tab character as the delimiter.
• all rows —
• first row —
You can use this output when you want to read one row into a 1D array.
mark after read returns the character (byte) in the file following the last character read.
• error out —
error out contains error information. This output provides standard error out functionality.
• EOF? —
Writes data to text-based measurement files (.lvm), binary measurement files (.tdm
or .tdms), or Microsoft Excel files (.xlsx).
Use the Read From Measurement File Express VI to read data from the generated
measurement file.
Option Description
Displays the full path to the file to which you want to write data. The Express VI writes
data to the file that this parameter specifies only if the Filename input is unwired. If
Filename
you wire the Filename input, the VI writes data to the file that this input specifies
instead.
(Windows) Sets the file format to binary measurement file (.tdm) and the file
extension in Filename to .tdm.
File Format
If you select this option, the Delimiter section and the No headers option in the
Segment Headers section are not available.
When you select this file format, you enable the Lock file for faster access
checkbox. Selecting this checkbox makes reading and writing significantly faster
1454 ni.com
Functions
Option Description
Note When this option is enabled, no two Express VIs can access the
same file at the same time when one of them is writing a "series of
files."
• Binary (TDMS)—
Sets the file format to binary measurement file (.tdms) and the file extension in
Filename to .tdms.
If you select this option, the Delimiter section and the No headers option in the
Segment Headers section are not available.
• Text (LVM)—
Sets the file format to text-based measurement file (.lvm) and the file extension
in Filename to .lvm.
Sets the file format to Microsoft Excel (.xlsx) and the file extension in Filename
to .xlsx.
If you select this option, the Delimiter section and the Segment Headers section
are unavailable.
Note This option does not require Microsoft Excel installed on the
local computer.
Option Description
Displays a dialog box that prompts users to select a file. This option is available
only when you select the Save to one file option.
Prompts users to select a file only once. This option is available only when you
place a checkmark in the Ask user to choose file checkbox.
Prompts users to select a file each time the Express VI runs. This option is
available only when you place a checkmark in the Ask user to choose file
checkbox.
Saves the data to multiple files. If Reset is TRUE, the VI starts at the first file in the
series. For example, if test_001.lvm has been saved to test_004.lvm,
test_001.lvm might be renamed, overwritten, or skipped based on the value
of the Existing Files option in the Configure Multi-file Settings dialog box.
• Settings—
Displays the Configure Multi-file Settings dialog box. This option is available only
when you select the Save to series of files (multiple files) option.
• Append to file—
1456 ni.com
Functions
Option Description
The VI ignores the value of Reset if you select the Append to file option.
Note When you append data to an existing Excel file, errors might
occur if the Excel file was not created by this Express VI. This option
does not support appending data to an Excel file that was created by a
third-party application.
• Overwrite file—
Creates one header per segment in the file to which LabVIEW writes the data.
Select this option if the acquisition rate of the data changes over time, if you
acquire two or more signals at different acquisition rates, or if the list of signals
you log changes over time.
Segment Creates only one header in the file to which LabVIEW writes the data. Select this
Headers option if you acquire the same list of signals at the same constant acquisition
rate.
• No headers—
Creates an empty column for the time data each channel generates. This option
does not include the data from the x-axis.
Note This option is available only when you select the Text (LVM)
option from the File Format section.
Option Description
includes a column of values from the x-axis for every column of values from the y-
axis. Select this option if you acquire signals of different types or at different
acquisition rates.
Creates only one column for the time data the channels generate. This option
includes only one column of values from the x-axis. Select this option if you
acquire signals at the same acquisition rate.
Does not create a header in the file to which LabVIEW writes the data.
• Tab—
• Comma—
Delimiter
Uses commas to delimit fields in the text file.
Note These options are available only when you select the Text (LVM)
option from the File Format section.
Contains the description of the measurement file. LabVIEW appends the text you
enter in this text box to the header of the file. This text box is unavailable when you
select the Microsoft Excel (.xlsx) option from the File Format section.
• Advanced—
File
Description Displays the Configure User Defined Properties dialog box when you select the
Binary (TDMS) or Binary with XML Header (TDM) option from the File Format
section. Displays the Configure Advanced Excel Options dialog box when you
select the Microsoft Excel (.xlsx) option. This button is unavailable when you
select the Text (LVM) option.
1458 ni.com
Functions
Inputs/Outputs
• error in (no error) —
• Comment —
Appends a comment to each data set written to the measurement file. This input is unavailable
when you select the Microsoft Excel (.xlsx) option from the File Format section.
• new_file —
If TRUE, stops writing to the current file, creates the next file in the series, and writes to that file
instead. This input is available only when you select the Save to series of files (multiple files)
option.
• Signals —
If you wire two or more signals with the same name to the Signals input, LabVIEW appends an
integer to the end of the names written in the file, which enforces unique channel names. For
example, if you wire two signals named Sine to the Signals input, LabVIEW writes the names as
Sine and Sine 1.
Note To change or customize how a signal name displays, use the Set Dynamic Data
Attributes Express VI.
• Flush? (T) — Specifies whether LabVIEW writes data to the Microsoft Excel file each time
after this Express VI runs. If the value is FALSE, LabVIEW does not write the data to the Microsoft
Excel file. Instead, LabVIEW stores the data in a temporary file. If the value is TRUE, LabVIEW
writes the data from the temporary file to the Excel file and then purges the temporary file. The
default is TRUE.
Note If you use this Express VI to write data iteratively, setting the Flush? input to
TRUE at each iteration might affect the writing performance negatively. National
Instruments recommends that you wire a FALSE value to this input until the last
iteration of the entire writing process. For the last iteration, you can wire a TRUE
value to this input to write all data to the Excel file.
• Filename —
Specifies the name of the file to which you want to write data. If Filename is not wired, the VI
uses the Filename specified in the configuration dialog box.
• DAQmx Task —
Specifies the DAQmx task to use to populate data on the DAQmx Properties page of the
Configure User Defined Properties dialog box.
• Reset — Specifies whether you want to reset the data file when you run this Express VI
iteratively. LabVIEW ignores this input when you run this Express VI in the first iteration. During
the second and subsequent iterations, if the value is FALSE, this Express VI appends data to a file
if the file already exists. Depending on your configuration for this Express VI, if the value is TRUE,
this Express VI renames, overwrites, or skips a file if the file already exists. The default is FALSE.
• Enable —
• error out —
Contains error information. This output provides standard error out functionality.
• Saving Data —
• Filename Out —
Note The behavior of this VI changes depending upon the target. If the
current target does not or might not have a host computer connected, the
configuration dialog box displays warnings next to options that are invalid
without a host. If you configure this VI to prompt for input and run the VI on a
target with no user interface, such as the Real-Time Module with no host
computer connected, this VI returns an error.
You can also use the Storage/DataPlugin VIs to read from and write to .tdm files, or
you can use the TDM Streaming functions to read from and write to .tdms files.
1460 ni.com
Functions
Examples
Components
Displays the Configure User Defined Properties dialog box when you select the Binary
(TDMS) or Binary with XML Header (TDM) option from the File Format section.
Displays the Configure Advanced Excel Options dialog box when you select the
Microsoft Excel (.xlsx) option. This button is unavailable when you select the Text
(LVM) option.
Creates a separate column for time data each channel generates. This option includes
a column of values from the x-axis for every column of values from the y-axis. Select
this option if you acquire signals of different types or at different acquisition rates.
Creates only one column for the time data the channels generate. This option includes
only one column of values from the x-axis. Select this option if you acquire signals at
the same acquisition rate.
Creates an empty column for the time data each channel generates. This option does
not include the data from the x-axis.
Does not create a header in the file to which LabVIEW writes the data.
Creates only one header in the file to which LabVIEW writes the data. Select this option
if you acquire the same list of signals at the same constant acquisition rate.
Creates one header per segment in the file to which LabVIEW writes the data. Select
this option if the acquisition rate of the data changes over time, if you acquire two or
more signals at different acquisition rates, or if the list of signals you log changes over
time.
Prompts users to select a file each time the Express VI runs. This option is available
only when you place a checkmark in the Ask user to choose file checkbox.
Prompts users to select a file only once. This option is available only when you place a
checkmark in the Ask user to choose file checkbox.
Displays the Configure Multi-file Settings dialog box. This option is available only when
you select the Save to series of files (multiple files) option.
Saves the data to multiple files. If Reset is TRUE, the VI starts at the first file in the
series. For example, if test_001.lvm has been saved to test_004.lvm,
test_001.lvm might be renamed, overwritten, or skipped based on the value of the
Existing Files option in the Configure Multi-file Settings dialog box.
Contains the description of the measurement file. LabVIEW appends the text you enter
in this text box to the header of the file. This text box is unavailable when you select
the Microsoft Excel (.xlsx) option from the File Format section.
Displays a dialog box that prompts users to select a file. This option is available only
when you select the Save to one file option.
1462 ni.com
Functions
Displays the full path to the file to which you want to write data. The Express VI writes
data to the file that this parameter specifies only if the Filename input is unwired. If
you wire the Filename input, the VI writes data to the file that this input specifies
instead.
(Windows) Sets the file format to binary measurement file (.tdm) and the file
extension in Filename to .tdm.
Sets the file format to binary measurement file (.tdms) and the file extension in
Filename to .tdms.
Sets the file format to text-based measurement file (.lvm) and the file extension in
Filename to .lvm.
Sets the file format to Microsoft Excel (.xlsx) and the file extension in Filename to
.xlsx.
Reads data from a text-based measurement file (.lvm) or binary measurement file
(.tdm or .tdms).
Option Description
Displays the full path to the file from which you want to read data. The Express VI reads
data from the file that this parameter specifies only if the Filename input is unwired. If
Filename
you wire the Filename input, the VI reads data from the file that this input specifies
instead.
Option Description
Contains the following options:
• Text (LVM)—
Sets the file format to text-based measurement file (.lvm) and the file extension in
File Name to .lvm.
To enable this VI to read data from generic text files, place a checkmark in the Read
generic text files checkbox.
• Binary (TDMS)—
Sets the file format to binary measurement file (.tdms) and the file extension in
File Name to .tdms.
If you select this option, the Time Stamps and Generic Text File sections are not
File available.
Format
• Binary with XML Header (TDM)—
(Windows) Sets the file format to binary measurement file (.tdm) and the file
extension in File Name to .tdm.
If you select this option, the Time Stamps and Generic Text File sections are not
available.
When you select this file format, you enable the Lock file for faster access
checkbox. Selecting this checkbox makes reading and writing significantly faster (at
the expense of the ability to multitask certain activities). It is recommended that
you use this option in most cases.
Note When this option is enabled, no two Express VIs can access the
same file at the same time when one of them is writing a "series of files."
1464 ni.com
Functions
Option Description
Retrieves segments of the signal from the file in the original size.
Size Retrieves segments of the signal using the size you specify in Samples.
◦ Samples—
Specifies the number of samples you want to include in the segment size read
from the file. The default is 100. This option is available only when you select
the Retrieve segments of specified size option.
Displays the timestamp in terms of seconds starting from zero. For example, 100 in
relative time equals 1 minute and 40 seconds.
Note These options are available only when you select the Text (LVM) option
from the File Format section.
Indicates the first row of numeric data. The Express VI begins reading data from this
Generic
row. The default is 1.
Text File
• First row is channel names—
Specifies that the channel names are in the first row of the data file.
Option Description
Specifies that the time data for each channel are in the first column of the data file.
Imports the data from the file you specify in File Name into the Sample data table.
• Sample data—
Displays the data from the file you specify in File Name when you click the Read
File Now button.
Note These options are available only when you select the Text (LVM) option
from the File Format section.
• Tab—
• Comma—
Delimiter
Uses a comma as the decimal separator.
Note These options are available only when you select the Text (LVM) option
from the File Format section.
• . (dot)—
1466 ni.com
Functions
Option Description
Note These options are available only when you select the Text (LVM) option
from the File Format section.
Inputs/Outputs
• Enable —
• Filename —
Specifies the name of the file from which you want to read data.
• Reset —
Resets the file position such that the next read starts at the beginning of the file.
• Signals —
• Filename Out —
• Comment —
Returns the appended comment of each data set in the .lvm or .tdm file.
• error out —
Contains error information. This output provides standard error out functionality.
• Description —
• EOF? —
Returns TRUE when the Express VI reaches the end of the file.
You also can use this VI to read Multisim data if you have Multisim 9.0 or later installed.
Use the Write To Measurement File Express VI to write data to a measurement file. You
also can use the Storage/DataPlugin VIs to read from and write to .tdm files.
Note The behavior of this VI changes depending upon the target. If the
current target does not or might not have a host computer connected, the
configuration dialog box displays warnings next to options that are invalid
without a host. If you configure this VI to prompt for input and run the VI on a
target with no user interface, such as the Real-Time Module with no host
computer connected, this VI returns an error.
Examples
Components
Specifies the number of samples you want to include in the segment size read from the
file. The default is 100. This option is available only when you select the Retrieve
segments of specified size option.
Retrieves segments of the signal using the size you specify in Samples.
Retrieves segments of the signal from the file in the original size.
Displays the timestamp in terms of time elapsed since 12:00 a.m., Friday, January 1,
1468 ni.com
Functions
Displays the timestamp in terms of seconds starting from zero. For example, 100 in
relative time equals 1 minute and 40 seconds.
(Windows) Sets the file format to binary measurement file (.tdm) and the file
extension in File Name to .tdm.
Sets the file format to binary measurement file (.tdms) and the file extension in File
Name to .tdms.
Sets the file format to text-based measurement file (.lvm) and the file extension in
File Name to .lvm.
Displays the full path to the file from which you want to read data. The Express VI reads
data from the file that this parameter specifies only if the Filename input is unwired. If
you wire the Filename input, the VI reads data from the file that this input specifies
instead.
Specifies that the time data for each channel are in the first column of the data file.
Specifies that the channel names are in the first row of the data file.
Imports the data from the file you specify in File Name into the Sample data table.
Displays the data from the file you specify in File Name when you click the Read File
Now button.
Specifies that the time data for each channel are in the first column of the data file.
Specifies that the channel names are in the first row of the data file.
Indicates the first row of numeric data. The Express VI begins reading data from this
row. The default is 1.
Retrieves segments of the signal using the size you specify in Samples.
Opens an existing file, creates a new file, or replaces an existing file, programmatically
or interactively using a file dialog box. This function does not work for files inside an
LLB.
Inputs/Outputs
• prompt —
prompt is the message that appears above the list of files and directories or folder in the file
dialog box.
If you do not wire file path, the function displays a dialog box from which you can select a file. If
you specify an empty or relative path, this function returns an error. If file path is the path to a
1470 ni.com
Functions
directory that does not exist, this function returns an error. Use the Create Folder function to
create a directory.
• operation (0:open) —
operation is the operation to perform. Error 43 occurs if you cancel the dialog box.
0 open (default)—Opens an existing file. Error 7 occurs if the file cannot be found.
1 replace—Replaces an existing file by opening the file and setting its end of file to 0.
2 create—Creates a new file. Error 10 occurs if the file already exists.
3 open or create—Opens an existing file or creates a new file if one does not exist.
replace or create—Creates a new file or replaces a file if it exists. This VI replaces a file by
4
opening the file and setting its end of file to 0.
replace or create with confirmation—Creates a new file or replaces a file if it exists and you
5
give permission. This VI replaces a file by opening the file and setting its end of file to 0.
• access (0:read/write) —
0 read/write
1 read-only
2 write-only
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
disable buffering specifies if the file opens without buffering. The default is FALSE.
If you want to read or write a data file to a Redundant Array of Independent Disks (RAID),
consider opening the file without buffering to speed up data transfers. To disable buffering, wire
a TRUE value to the disable buffering input.
Note If you have a small amount of data to transfer, you might not notice a
• refnum out —
• cancelled —
cancelled is TRUE if you cancel the file dialog box or if you do not select the replacement in an
advisory dialog box.
• error out —
error out contains error information. This output provides standard error out functionality.
You can optionally specify a dialog prompt or default filename. Use this function with
the intermediate Write File or Read File functions. Use the Close File function to close
the reference to the file.
Examples
Closes an open file specified by refnum and returns the path to the file associated with
the refnum.
Error I/O operates uniquely in this function, which closes the file regardless of whether
an error occurred in a preceding operation. This ensures that files are closed correctly.
1472 ni.com
Functions
Inputs/Outputs
• refnum —
refnum is the file refnum associated with the file you want to close.
• error in —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• path —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Formats string, numeric, path, or Boolean data as text and writes the text to a file. If
you wire a file refnum to the file input, writing begins at the current file position. To
append to an existing file, open the file and set the file position to the end of the file by
using the Set File Position function. Otherwise, the function will open the file and write
to the beginning of the file. This function does not work for files inside an LLB.
Inputs/Outputs
• format string —
Defaults match the data type of the input arguments. Right-click the function and select Edit
Format String from the shortcut menu to create and edit the format string.
• input file —
If it is a refnum, this node opens the file specified by the refnum. This function creates the
specified file if it does not already exist. The default is to display a file dialog box and prompt you
to select a file.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• input 1 —
input 1..n specifies the input parameters you want the function to convert.
This parameter accepts a string, path, enumerated type, time stamp, Boolean, or any numeric
data type. For complex numeric data types, this function converts only the real component. You
cannot use arrays and clusters with this function.
If you specify a Boolean value for this parameter and %s as the format code, the Format Into File
function outputs the value as TRUE or FALSE. If you specify a Boolean value for this parameter
and any numeric format code, the Format Into File function outputs the appropriate version of 1
for TRUE and 0 for FALSE. For example, if you specify %f as the format code, the function outputs
1474 ni.com
Functions
output file refnum is the refnum of the file that the VI read.
You can wire this output to another file function, depending on what you want to do with the
file. The default is to close the file if it is referenced by a file path or selected from the file dialog
box. If input file is a refnum, LabVIEW assumes that the file is still in use until you close it.
• error out —
error out contains error information. This output provides standard error out functionality.
Increase the number of parameters by right-clicking the function and selecting Add
Parameter from the shortcut menu or by resizing the function.
You can use this function to determine the order in which the data appears in the file.
This function converts new lines, or \n, in the format string into the platform-specific
end-of-line character, for example, CR/LF on Windows, and LF on macOS and Linux. If
you do not want to convert new lines into the end-of-line character, use the Format
Into String function and wire the resulting string output to the text input of the Write
to Text File function. Then right-click the Write to Text File function and remove the
checkmark next to the Convert EOL shortcut menu item.
By default, this function uses the order of the inputs to populate the format specifiers,
or percent codes, in the Format String. However, you can use a number followed by a
dollar sign ($) within a percent code to specify exactly which input to use for that
percent code. For example, the percent code %3$d uses the third input regardless of
how many percent codes appear before it in the format string.
You can use other special characters besides the $ to configure how this function
populates the percent codes in format string.
Examples
Scans text in a file for string, numeric, path, and Boolean data, converts the text to a
data type, and returns a duplicated refnum and the converted outputs in the order
scanned. This function does not work for files inside an LLB.
You can use this function to read all the text in the file. However, you cannot use this
function to determine a starting point for the scan. To do so, use the Read from Text
1476 ni.com
Functions
Inputs/Outputs
• format string —
format string specifies how to convert the input string into the output arguments.
The default is to scan the string according to default behavior for the data types of the outputs
wired. Right-click the function and select Edit Scan String from the shortcut menu to create and
edit the format string.
• input file —
If it is a refnum, this node opens the file specified by the refnum. This function creates the
specified file if it does not already exist. The default is to display a file dialog box and prompt you
to select a file.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• default value 1 —
default 1..n specifies the type and default value for the output parameters.
If this function cannot scan the input value from format string, the function uses the default. If
you do not wire default 1 and you wire a constant to format string, the function uses format
string to determine the type of the output. Otherwise, the default data type is double-precision,
floating-point. The default value is 0 or an empty string, depending on the output data type. If
you wire an enumerated type to default 1, the function finds substrings matching the string
values in the enumerated type and returns the corresponding numeric value of the enumerated
type.
You can scan for Boolean values if you use a string or numeric format code. If the format code is
%s or unwired, the function reads Y, T, TRUE, ON, or YES and any lowercase versions of those
words as TRUE Boolean values. The function reads F, FALSE, OFF, or NO and any lowercase
versions of those words as FALSE Boolean values. If you specify a numeric format code, the
function reads any numeric value greater than 0.5 as TRUE and any numeric value less than or
equal to 0.5 as FALSE.
Note This function reads negative numbers as FALSE Boolean values because the
function converts the number to an unsigned 8-bit integer and any number less than
or equal to 0.5 becomes 0 during the conversion.
output file refnum is the refnum of the file that the VI read.
You can wire this output to another file function, depending on what you want to do with the
file. The default is to close the file if it is referenced by a file path or selected from the file dialog
box. If input file is a refnum, LabVIEW assumes that the file is still in use until you close it.
• error out —
error out contains error information. This output provides standard error out functionality.
• output 1 —
Each output can be a string, path, enumerated type, time stamp, Boolean, or any numeric data
type. If you scan a string that does not fit into the numeric data type you specify, this function
returns the largest number that fits into that data type. You cannot use arrays and clusters with
this function.
Increase the number of parameters by right-clicking the function and selecting Add
Parameter from the shortcut menu or by resizing the function.
Note If an error occurs, the source component of the error out cluster
contains a string of the form ''Scan From File (arg n),'' where n
is the first argument for which the error occurred.
1478 ni.com
Functions
If you wire a block diagram constant string to format string, LabVIEW uses format
string to determine the number of outputs and the data type of each output at
compile time. If the types you wire to the outputs do not match the types determined
by format string, you must change the output types before the VI can run.
If you do not directly wire a block diagram constant to format string, LabVIEW checks
for type mismatches at run time. If you want to scan values that have data types other
than double-precision, floating point, you must wire the data types to default 1..n.
When you use the match characters not in set format specifier (%[^...]), which is
used frequently to read an entire string, the matched character(s) are left in the file
stream. %[^\n\r] matches an entire line of text, but the carriage return and new line
are left behind. To remove these characters, use %[^\n\r]\n\r.
Note By default, this function is locale aware, which means that it uses the
system decimal separator configured in the regional settings of the operating
system. In some instances, such as using GPIB instruments on European
operating systems, you may need to override the system decimal separator
by using the localization code syntax elements.
format remaining
input string default(s) output(s)
string string
— abc
abc, xyz — xyz
%3s,
00
%s%f%2d 0+00i 12.3+56i
>12.3+56i 7200
— 72
Q+1.27E–3 tail Q%f t — 1.27E–3 ail
12
0123456789 %3d%3d — 6789
345
100 (I32) 10
X:9.860 Z:3.450 X:%fY:%f Z: 3450
100.00 (DBL) 100.00
set49.4.2 set%d — 49 .4.2
format remaining
input string default(s) output(s)
string string
blue (enum {red, green,
color: red color: %s red —
blue})
abcd
%[a-z]%d 12
abcd012xyz3 — —
%[a-z]%d xyz
3
welcome to
welcome to LabVIEW, LabVIEW
%[^,],%s — Smith
John Smith
John
Examples
Writes a string or an array of strings as lines to a file. This function does not work for
files inside an LLB.
Use the Set File Position function if you need to perform random access file reads or
writes.
Inputs/Outputs
• prompt (Choose or enter file path) —
1480 ni.com
Functions
prompt is the message that appears above the list of files and directories or folder in the file
dialog box.
If you wire a path to the file input, the function opens or creates the file before writing to it and
replaces any previous file contents. If you wire a file refnum to the file input, writing begins at
the current file position. To append to an existing file, set the file position to the end of the file by
using the Set File Position function. The default is to display a file dialog box and prompt you to
select a file.
If you specify an empty or relative path, this function returns an error. If you specify a path to a
hidden file, this function returns an error.
• text —
text is the data the function writes to the file. text is a string or an array of strings.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
refnum out is the refnum of the file that the function read. You can wire this output to another
file function, depending on what you want to do with the file. The default is to close the file if it is
referenced by a file path or selected from the file dialog box. If file is a refnum or if you wire
refnum out to another function, LabVIEW assumes that the file is still in use until you close it.
• cancelled —
error out contains error information. This output provides standard error out functionality.
Examples
Reads a specified number of characters or lines from a byte stream file. This function
does not work for files inside an LLB.
Inputs/Outputs
• prompt (Open existing file) —
prompt is the message that appears above the list of files and directories, or folder, in the file
dialog box.
If it is a path, this function opens the file specified by the path. The default is to display a file
dialog box and prompt you to select a file.
If you specify an empty or relative path or if the file does not exist, this function returns an error.
• count —
The function reads fewer characters or lines if it reaches the end of file first. If count is <0, the
function reads the entire file starting from the current file position. The default is to read a single
1482 ni.com
Functions
line if you placed a checkmark next to the Read Lines shortcut menu item and to read the entire
file if you removed the checkmark next to the item.
Note If you wire a file size with a data type other than a 32-bit integer to count,
LabVIEW coerces the data type to a 32-bit integer. This means the VI may not read the
amount of data you intend. If you wire –1 to count and the size of the file you want to
read is too large to be represented by a 32-bit integer, LabVIEW returns an error.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
refnum out is the refnum of the file that the function read. You can wire this output to another
file function, depending on what you want to do with the file. The default is to close the file if it is
referenced by a file path or selected from the file dialog box. If file is a refnum or if you wire
refnum out to another function, LabVIEW assumes that the file is still in use until you close it.
• text —
text is the text read from the file. By default, this parameter is a string that contains the
characters read from the first line of the file. If you wire count, this parameter is an array of
strings that contains the lines read from the file. If you right-click the function and remove the
checkmark next to the Read Lines shortcut menu item, this parameter is a string that contains
the characters read from the file.
• cancelled —
error out contains error information. This output provides standard error out functionality.
This function opens files as read-only. If you wire the refnum out output of this
function to the file input of a write function, LabVIEW returns a permissions error. Use
the Open/Create/Replace File function to open the file with the default read/write
access and wire the refnum to the read and write functions.
By default, this function reads all characters from the text file. Wire an integer value to
count to specify how many individual characters you want to read starting with the
first character. Right-click the function and place a checkmark next to the Read Lines
option in the shortcut menu to read individual lines from the text file. When you select
the Read Lines option in the shortcut menu, wire an integer value to the count input to
specify how many individual lines you want to read from the file starting with the first
line. Enter a value of -1 in count to read all characters and lines from the text file.
Use the Set File Position function if you need to perform random access.
Examples
Writes binary data to a new file, appends data to an existing file, or replaces the
contents of a file. This function does not work for files inside an LLB.
If you want to use the Read from Binary File function to read the array or string data
you write to file, the prepend array or string size? parameter must indicate TRUE.
Otherwise, LabVIEW generates an error.
1484 ni.com
Functions
Inputs/Outputs
• prepend array or string size? (T) —
prepend array or string size? indicates whether LabVIEW includes data size information at the
beginning of the file when data is an array or string. If prepend array or string size? is FALSE,
LabVIEW does not include the size information.
The default is TRUE. prepend array or string size? controls only the top-level data size
information. Arrays and strings in hierarchical data types such as clusters always include size
information.
prompt is the message that appears above the list of files and directories, or folder, in the file
dialog box.
If you wire a path to the file input, the function opens or creates the file before writing to it and
replaces any previous file contents. If you wire a file refnum to the file input, writing begins at
the current file position. To append to an existing file, set the file position to the end of the file by
using the Set File Position function. The default is to display a file dialog box and prompt you to
select a file.
• data —
data contains the data to write to the file and can be any data type.
byte order sets the endian form of the resulting data. Byte order, or endian form, indicates
whether integers are represented in memory from most-significant byte to least-significant byte
or vice versa. The function must read the data in the same byte order that the data was written.
big-endian, network order (default)—The most-significant byte occupies the lowest memory
0 address. This endian form is used on PowerPC platforms such as VxWorks. This endian-form
also is used when reading data written on a different platform.
native, host order—Uses the byte-ordering format of the host computer. This endian form
1
increases read and write speed.
little-endian—The least-significant byte occupies the lowest memory address. This endian
2
form is used on Windows, macOS, and Linux.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
refnum out is the refnum of the file that the function read. You can wire this output to another
file function, depending on what you want to do with the file. The default is to close the file if it is
referenced by a file path or selected from the file dialog box. If file is a refnum or if you wire
refnum out to another function, LabVIEW assumes that the file is still in use until you close it.
• cancelled —
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Deny Access function to make sure no other users change the file while you
write to it. Use the Set File Position function if you need to perform random access.
Examples
1486 ni.com
Functions
Reads binary data from a file and returns it in data. How the data is read depends on
the format of the specified file. This function does not work for files inside an LLB.
Refer to the Preallocated Read from Binary File function for information about reading
binary data and placing it into a pre-allocated array without incurring a copy.
Inputs/Outputs
• data type —
data type sets the type of data the function uses to read from the binary file.
The function interprets the data starting at the current file position to be count instances of data
type. If the type is an array, string, or cluster containing an array or string, the function assumes
that each instance of that data type contains size information. If an instance does not include
size information, the function misinterprets the data. If LabVIEW determines that the data does
not match the type, it sets data to the default for the specified type and returns an error.
prompt is the message that appears above the list of files and directories, or folder, in the file
dialog box.
If it is a path, this function opens the file specified by the path. The default is to display a file
dialog box and prompt you to select a file.
If you specify an empty or relative path or if the file does not exist, this function returns an error.
• count (1) —
count is the number of data elements to read. Data elements can be bytes or instances of data
type.
The function returns count data elements in data, or if it reaches the end of the file, it returns all
the complete data elements read thus far and an end-of-file error. By default, the function
returns a single data element. If count is –1, the function reads the entire file starting from the
current file position. If count is less than –1, the function returns an error.
If you wire data to count and the specified data type is an array, the function automatically
returns a cluster of arrays or cluster array because LabVIEW does not allow arrays of arrays.
If you wire a file size with a data type other than a 32-bit integer to count, LabVIEW coerces the
data type to a 32-bit integer. This means the VI may not read the amount of data you intend. If
you wire –1 to count and the size of the file you want to read is too large to be represented by a
32-bit integer, LabVIEW returns an error.
If you wire a cluster of integers to count, the function returns a multidimensional array, one
dimension per each cluster element. For example, if you wire a cluster which contains the values
1, 2, and 3 to count, the function returns a 3D array, in which the first dimension contains one
element, the second dimension contains two elements, and the third dimension contains three
elements.
byte order sets the endian form of the resulting data. Byte order, or endian form, indicates
whether integers are represented in memory from most-significant byte to least-significant byte
or vice versa. The function must read the data in the same byte order that the data was written.
big-endian, network order (default)—The most-significant byte occupies the lowest memory
0 address. This endian form is used on PowerPC platforms such as VxWorks. This endian-form
also is used when reading data written on a different platform.
native, host order—Uses the byte-ordering format of the host computer. This endian form
1
increases read and write speed.
little-endian—The least-significant byte occupies the lowest memory address. This endian
2
form is used on Windows, macOS, and Linux.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
1488 ni.com
Functions
refnum out is the refnum of the file that the function read. You can wire this output to another
file function, depending on what you want to do with the file. The default is to close the file if it is
referenced by a file path or selected from the file dialog box. If file is a refnum or if you wire
refnum out to another function, LabVIEW assumes that the file is still in use until you close it.
• data —
data contains the data read from the file in the specified data type. It can consist of a string, an
array, a cluster of arrays, or a cluster array, depending on which data type you are reading and
how count is set.
• cancelled —
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Deny Access function to make sure no other users change the file while you
read from it. Use the Set File Position function if you need to perform random access.
This function opens files as read-only. If you wire the refnum out output of this
function to the file input of a write function, LabVIEW returns a permissions error. Use
the Open/Create/Replace File function to open the file with the default read/write
access and wire the refnum to the read and write functions.
Examples
Inputs/Outputs
• base path —
base path specifies the path to which this function appends name or relative path.
The default is an empty path. If base path is invalid, this function sets appended path to <Not
A Path>.
name or relative path is the new path component appended to base path.
If name or relative path is an empty string or an invalid path, this function sets appended path
to <Not A Path>.
• appended path —
Suppose you want to build the path c:\dir1\vis\first.vi. The following table
shows examples of how you can specify base path and name or relative path to build
this path.
1490 ni.com
Functions
Returns the name of the last component of a path and the stripped path that leads to
that component.
Inputs/Outputs
• path —
If this parameter is an empty path or is invalid, this function returns an empty string in name and
<Not A Path> in stripped path.
• stripped path —
stripped path is the resulting path obtained by removing name from the end of path.
• name —
File Constants
Use the file constants with the File I/O VIs and functions.
Get System
Returns the system directory specified in the system directory type input.
Directory
Empty Path
Returns an empty path.
Constant
Returns a path whose value is <Not A Path>. You can use this path as an output
Not A Path
from structures and subVIs when an error occurs and you do not want to return a
Constant
path.
Not a Refnum Returns a refnum whose value is Not A Refnum. You can use this refnum as an
Constant output from structures and subVIs when an error occurs.
Default
Directory Returns the path to the default directory.
Function
Default Data
Returns the directory you configure to store the data a VI or function generates.
Directory
VI Library Returns the path to the VI library directory for the current application instance on
Function the current computer.
Application
Returns the path to the directory containing the application.
Directory
Temporary
Directory Returns the path to the temporary directory.
Function
Path Constant
Use this constant to supply a constant path value to the block diagram.
Right-click the constant and select Browse for Path from the shortcut menu to
navigate to and select a path. You also can set the value of a path constant by using the
Operating tool or the Labeling tool to click it and enter the path you want. To enter the
path to a VI inside an LLB, add a backslash and the VI name to the end of the path to
the LLB. For example, C:\example.llb\color.vi. To enter the path of a VI from
a palette, place the VI on the block diagram and <Ctrl>-drag the VI into the path
constant.
1492 ni.com
Functions
You cannot change the value of the path constant while the VI runs. You can assign a
label to this constant.
Returns the path to the file of the current VI. If the VI never has been saved, this
function returns <Not A Path>.
This function always returns the current location of the VI. If you move the VI, the value
returned changes.
If you build the VI into an application, this function returns the path to the VI in the
application file, and treats the application file as a VI library.
Note To obtain the path to the directory containing the application, use the
Application Directory VI.
Inputs/Outputs
• path —
Returns the system directory specified in the system directory type input.
This VI returns the system directory of the current target, including My Computer.
(Real-Time Module) You cannot use this VI in VIs that run on RT targets.
Inputs/Outputs
• system directory type —
system directory type specifies the type of directory you want LabVIEW to retrieve.
User Home—Directory that contains the personal files of the current user. This directory is a
0
readable and writable directory accessible to a single user of the system.
User Desktop—Directory that contains files located on the desktop of the current user. This
1
directory is a readable and writable directory accessible to a single user of the system.
User Documents—Default directory for saving the documents of the current user. This
2
directory is a readable and writable directory accessible to a single user of the system.
User Application Data—Directory that contains data for the system applications of the current
3 user. This directory is a readable and writable directory accessible to a single user of the
system.
User Preferences—Directory that contains the preferences for the current user. This directory
4
is a readable and writable directory accessible to a single user of the system.
User Temporary—Directory that holds temporary files for the current user. This directory is a
5 readable and writable directory accessible to a single user of the system. You cannot change
the path to this temporary directory.
Public Documents—Directory that contains documents accessible to all users of the system.
6
This directory is readable and sometimes writable.
Public Application Data—Directory that contains data for system applications accessible to
7
all users of the system. This directory is readable and sometimes writable.
Public Preferences—Directory that contains preferences common to all users of the system.
8
This directory is readable and sometimes writable.
System Core Libraries—Directory that contains the libraries that come with the operating
9
system. This directory is typically read-only to the standard user of the system.
System Installed Libraries—Directory that contains libraries a user installs on the system.
10
This directory is typically read-only to the standard user of the system.
Application Files—Directory that contains files of applications installed on the system. This
11
directory is typically read-only to the standard user of the system.
Boot Volume Root—Top-level directory used to start the system. This directory is typically
12
read-only to the standard user of the system.
13 Public Cache—Directory that stores files the MathScript RT Module installs and shares among
1494 ni.com
Functions
all users for the purpose of making certain operations faster. This directory is readable and
sometimes writable.
create directory if not found? specifies whether the VI creates a new directory if the specified
directory does not exist. If FALSE (default), the VI returns the path where the system expects to
find the directory. If TRUE, LabVIEW creates a new directory.
• system directory —
system directory returns the specified system directory of the current target.
If errors occur while accessing or creating a directory, or the current target does not
support the specified system directory type, the VI returns Not a Path.
Unlike the not a path constant, this constant is a valid path. You can use this constant
as a starting point for building paths using the Build Path function.
Returns a path whose value is <Not A Path>. You can use this path as an output from
structures and subVIs when an error occurs and you do not want to return a path.
Unlike the empty path constant, this constant is an invalid path, and is generally
returned when a path operation fails.
Returns a refnum whose value is Not A Refnum. You can use this refnum as an output
from structures and subVIs when an error occurs.
For example, you can use the Not a Refnum constant to verify that the refnum is valid
before passing the refnum to the next file I/O operation. Wire the error out cluster of a
file I/O function to the selector terminal of a Case structure. Place the Not a Refnum
constant in the Error subdiagram and wire the constant through the output tunnel
and to the next file I/O operation. In the No Error subdiagram, wire the refnum
output of the file I/O function through the Case structure and to the next file I/O
operation.
Note Do not test whether a refnum is invalid by comparing the refnum to the
output returned by the Not a Refnum constant. The Not a Refnum constant
returns a unique sequence of bits that is guaranteed to be an invalid refnum.
However, because this sequence of bits is only one possible invalid refnum
representation, it likely will not equal another refnum to which you compare
it. Instead, use the Not a Number/Path/Refnum? function to test whether a
refnum is invalid. The Not A Number/Path/Refnum? function returns a
Boolean value that is correct for all possible invalid refnum representations.
1496 ni.com
Functions
Inputs/Outputs
• path —
Returns the directory you configure to store the data a VI or function generates.
You can set the default data directory in the Options dialog box.
Inputs/Outputs
• App:Default Data Directory —
VI Library Function
Returns the path to the VI library directory for the current application instance on the
current computer.
If you build the VI into an application, this function returns the path of the directory
containing the application file.
Inputs/Outputs
• path —
path is the path to the VI library directory for the current application instance on the current
computer.
Application Directory
If you call this VI from a stand-alone application, this VI returns the path to the folder
containing the stand-alone application.
If you call this VI from the development environment and the VI is loaded in a LabVIEW
project file (.lvproj), this VI returns the path to the folder containing the project file.
If the project is not saved, this VI returns <Not a Path>.
If the top-level VI is not loaded in a project, the VI returns the path to the directory
containing the top level VI. If the VI is not saved to disk, this VI returns <Not a
Path>.
Inputs/Outputs
• Application Directory —
This temporary directory is the directory in which you want LabVIEW to store
information that you do not want to store in the default directory. You can set this
temporary directory in the Options dialog box. Setting this directory does not change
the system temporary directory.
1498 ni.com
Functions
Inputs/Outputs
• path —
Use the Configuration File VIs to create, modify, and read a platform-independent
configuration file.
Note Note
Palette
Description
Object
Open
Opens a reference to the configuration data found in a platform-independent
Config
configuration file.
Data
Reads a value associated with a key in a specified section from the configuration data
Read identified by refnum. If the key does not exist, the VI returns the default value. This VI
Key supports multibyte characters in strings. Wire data to the default value input to
determine the polymorphic instance to use or manually select the instance.
Palette
Description
Object
Remove
Removes a key in a specified section from the configuration data identified by refnum.
Key
Remove
Removes a section from the configuration data identified by refnum.
Section
Close
Writes data to the platform-independent configuration file identified by refnum and then
Config
closes the reference to that file.
Data
Get Key Gets the names of all keys in the specified section from the configuration data identified
Names by refnum.
Get
Section Gets the names of all sections from the configuration data identified by refnum.
Names
Not A
Config
Determines whether a configuration data refnum is valid.
Data
Refnum
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
1500 ni.com
Functions
Format the content of an .ini file correctly when you use this VI.
Inputs/Outputs
• configuration file path —
create file if necessary (T) configures the VI to create the file specified in configuration file path
if the file does not exist. You must set create file if necessary (T) to the default value of TRUE for
the VI to create the file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum —
• file created? —
file created? returns TRUE if the configuration file operation creates a file.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
Read Key
Reads a value associated with a key in a specified section from the configuration data
identified by refnum. If the key does not exist, the VI returns the default value. This VI
supports multibyte characters in strings. Wire data to the default value input to
determine the polymorphic instance to use or manually select the instance.
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
1502 ni.com
Functions
Inputs/Outputs
• section —
section is the name of the section from which to read the specified key.
• refnum —
• key —
• default value —
default value is the value to return if the VI does not find the key in the specified section or if an
error occurs.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• found? —
• value —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
Inputs/Outputs
• section —
section is the name of the section from which to read the specified key.
• refnum —
• key —
• default value —
1504 ni.com
Functions
default value is the value to return if the VI does not find the key in the specified section or if an
error occurs.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• found? —
• value —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
Inputs/Outputs
• section —
section is the name of the section from which to read the specified key.
• refnum —
• key —
• default value —
default value is the value to return if the VI does not find the key in the specified section or if an
error occurs.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• found? —
• value —
• error out —
error out contains error information. This output provides standard error out functionality.
1506 ni.com
Functions
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
Inputs/Outputs
• section —
section is the name of the section from which to read the specified key.
• refnum —
• key —
• default value —
default value is the value to return if the VI does not find the key in the specified section or if an
error occurs.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• found? —
• value —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
1508 ni.com
Functions
Inputs/Outputs
• section —
section is the name of the section from which to read the specified key.
• refnum —
• key —
• default value —
default value is the value to return if the VI does not find the key in the specified section or if an
error occurs.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
read raw string? specifies whether the string was written without escaping unprintable and
backslash (\) characters.
If FALSE (default), the VI replaces any unprintable characters in the string, such as <ESC>, with a
backslash and two Hex characters (\xx). If TRUE, the VI does not convert the unprintable
characters in the string.
• refnum out —
• found? —
• value —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
Inputs/Outputs
• section —
section is the name of the section from which to read the specified key.
• refnum —
• key —
• default value —
1510 ni.com
Functions
default value is the value to return if the VI does not find the key in the specified section or if an
error occurs.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• found? —
• value —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
Write Key
Format the content of an .ini file correctly when you use this VI.
If key exists, the VI replaces the existing value. If key does not exist, the VI adds the
key/value pair to the end of the specified section. If section does not exist, the VI adds
section, with the key/value pair, to the end of the configuration data.
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
Format the content of an .ini file correctly when you use this VI.
1512 ni.com
Functions
Inputs/Outputs
• section —
section is the name of the section in which to write the specified key.
• refnum —
• key —
• value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• found? —
• error out —
error out contains error information. This output provides standard error out functionality.
If key exists, the VI replaces the existing value. If key does not exist, the VI adds the
key/value pair to the end of the specified section. If section does not exist, the VI adds
section, with the key/value pair, to the end of the configuration data.
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
Format the content of an .ini file correctly when you use this VI.
Inputs/Outputs
• use system decimal point (T) —
use system decimal point specifies whether to use the localized decimal separator. The default
is TRUE.
• section —
section is the name of the section in which to write the specified key.
• refnum —
• key —
• value —
1514 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• precision (6) —
precision is the number of digits after the decimal point. The default is 6.
• format (fractional) —
Fractional
0
(default)
1 Engineering
2 Exponential
• refnum out —
• found? —
• error out —
error out contains error information. This output provides standard error out functionality.
If key exists, the VI replaces the existing value. If key does not exist, the VI adds the
key/value pair to the end of the specified section. If section does not exist, the VI adds
section, with the key/value pair, to the end of the configuration data.
Examples
• labview\examples\File IO\Configuration
Format the content of an .ini file correctly when you use this VI.
Inputs/Outputs
• section —
section is the name of the section in which to write the specified key.
• refnum —
• key —
• value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
1516 ni.com
Functions
• found? —
• error out —
error out contains error information. This output provides standard error out functionality.
If key exists, the VI replaces the existing value. If key does not exist, the VI adds the
key/value pair to the end of the specified section. If section does not exist, the VI adds
section, with the key/value pair, to the end of the configuration data.
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
Format the content of an .ini file correctly when you use this VI.
Inputs/Outputs
• section —
section is the name of the section in which to write the specified key.
• refnum —
• key —
• value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• found? —
• error out —
error out contains error information. This output provides standard error out functionality.
If key exists, the VI replaces the existing value. If key does not exist, the VI adds the
key/value pair to the end of the specified section. If section does not exist, the VI adds
section, with the key/value pair, to the end of the configuration data.
Examples
1518 ni.com
Functions
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
Format the content of an .ini file correctly when you use this VI.
Inputs/Outputs
• section —
section is the name of the section in which to write the specified key.
• refnum —
• key —
• value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
write raw string? specifies whether to write the string without escaping unprintable and
backslash (\) characters.
If FALSE (default), the VI converts any backslashes (\) to double backslashes (\\) and replaces
any remaining unprintable characters in the string, such as <ESC>, with a backslash and two
Hex characters (\xx). If TRUE, the VI does not convert the unprintable characters in the string.
• refnum out —
• found? —
• error out —
error out contains error information. This output provides standard error out functionality.
If key exists, the VI replaces the existing value. If key does not exist, the VI adds the
key/value pair to the end of the specified section. If section does not exist, the VI adds
section, with the key/value pair, to the end of the configuration data.
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
1520 ni.com
Functions
Format the content of an .ini file correctly when you use this VI.
Inputs/Outputs
• section —
section is the name of the section in which to write the specified key.
• refnum —
• key —
• value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• found? —
• error out —
error out contains error information. This output provides standard error out functionality.
If key exists, the VI replaces the existing value. If key does not exist, the VI adds the
key/value pair to the end of the specified section. If section does not exist, the VI adds
section, with the key/value pair, to the end of the configuration data.
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
Remove Key
Removes a key in a specified section from the configuration data identified by refnum.
Inputs/Outputs
• section —
section is the name of the section from which to remove the specified key.
• refnum —
• key —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
1522 ni.com
Functions
• found? —
• error out —
error out contains error information. This output provides standard error out functionality.
Remove Section
Inputs/Outputs
• section —
• refnum —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• section exists? —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• refnum —
write file if changed (T) configures the VI to write the configuration data to the platform-
independent configuration file you specify with the Open Config Data VI. You must set write file
if changed (T) to the default value of TRUE for the VI to write the configuration data. If the value
is FALSE, the VI does not write the configuration data.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
If an error occurs before this node executes, the node only closes the reference passed to it.
• file path —
• error out —
error out contains error information. This output provides standard error out functionality.
1524 ni.com
Functions
Examples
• labview\examples\File IO\Configuration
(INI)\Configuration (INI) File.lvproj
Gets the names of all keys in the specified section from the configuration data
identified by refnum.
Format the content of an .ini file correctly when you use this VI.
Inputs/Outputs
• section —
section is the name of the section from which to get the key names.
• refnum —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• section exists? —
• key names —
key names contains the names of all keys in the section, in the order in which they appear in the
file.
• error out —
error out contains error information. This output provides standard error out functionality.
Gets the names of all sections from the configuration data identified by refnum.
Format the content of an .ini file correctly when you use this VI.
Inputs/Outputs
• refnum —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• section names —
• error out —
1526 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
This VI considers a configuration data refnum to be invalid if you do not open the
reference with the Open Config Data VI, the file referenced does not exist, or the
reference is already closed when passed to this VI.
Inputs/Outputs
• refnum —
not a config data refnum is TRUE if refnum is not a valid configuration data refnum.
TDM Streaming
Use the TDM Streaming VIs and functions to read and write waveforms and waveform
properties to binary measurement files (.tdms).
Note Some functions on this palette do not work with real-time operating
systems.
The VIs and functions on this palette can return TDM streaming error codes.
Palette
Description
Object
Opens a .tdms file for reading or writing. You also can use this function to create a new
TDMS Open
file or replace an existing file. Use the TDMS Close function to close the reference to
Function
the file.
TDMS Write Streams data to the specified .tdms file. The data subset to write is determined by the
Function values you identify in the group name in and channel name(s) in inputs.
Reads the specified .tdms file and returns data in a format specified by the data type
TDMS Read
input. If data has scaling information, this VI automatically scales the data. Use the
Function
count and offset inputs to read a specified subset of the data.
TDMS Close
Closes the .tdms file you opened with the TDMS Open function.
Function
TDMS List
Provides a list of group and channel names contained within the .tdms file specified in
Contents
the .tdms file input.
Function
Sets the properties of the specified .tdms file, channel group, or channel. If you wire
the group name and channel name inputs with values, the function writes the
properties at the channel level. Wiring only the group name input with a value writes
TDMS Set
the properties at the channel group level. If both group name and channel name
Properties
inputs contain no values, the properties become file-specific. If you wire the channel
Function
name input with a value, you must also wire a value to the group name input. You
must close the reference to the .tdms file or flush data to the .tdms file for changes to
take effect.
Returns the properties of the specified .tdms file, channel group, or channel. If you
wire the group name and channel name inputs with values, the function searches for
TDMS Get properties at the channel level. Wiring only the group name input with a value
Properties searches for properties at the channel group level. If both group name and channel
Function name inputs contain no values, the function searches for properties at the root level
of the .tdms file. If you wire the channel name input with a value, you must also wire a
value to the group name input.
Writes all buffers of the .tdms file data to the file identified by the tdms file input. Data
TDMS Flush written to a .tdms file often resides in a buffer until the buffer fills up or until you close
Function the file. This function forces the operating system to write any buffer data to the .tdms
file.
TDMS File Opens the .tdms file specified in the file in input and presents the file data in the
Viewer TDMS File Viewer dialog box.
1528 ni.com
Functions
Palette
Description
Object
TDMS
Defragments the .tdms file data specified in the file path input. Use this function to
Defragment
clean up your .tdms data when it becomes cluttered, and increase performance.
Function
Use the Advanced TDMS VIs and functions to perform advanced file I/O operations,
such as asynchronous reads and writes, on .tdms files. You can use these VIs and
Advanced functions to read data from an existing .tdms file, write data to a new .tdms file, or
TDMS replace subsets of data in an existing .tdms file. You also can use these VIs and
functions to convert the file format version of a .tdms file or to create scaling
information for unscaled data.
The following functions on this palette do not work with real-time operating systems,
such as Phar Lap ETS, VxWorks, and NI Linux Real-Time:
Opens a .tdms file for reading or writing. You also can use this function to create a new
file or replace an existing file. Use the TDMS Close function to close the reference to the
file.
Inputs/Outputs
• create index file? (T) —
create index file? specifies whether LabVIEW automatically generates a .tdms_index file for
the corresponding .tdms file. This index file enables LabVIEW to speed up random access to the
.tdms file. If you have limited disk space, wire a FALSE value to this input to prevent LabVIEW
from generating the .tdms_index file. The default is TRUE.
LabVIEW ignores this input if you open a .tdms file that already has a .tdms_index file.
Wiring a FALSE value to this input does not remove this file. LabVIEW might update this file
during the TDMS application to ensure this file is up-to-date. To remove this file, you can
manually delete it from the disk or programmatically delete it by using the Delete function.
Note If you use multiple TDMS Open functions, which have different values for the
create index file? input, to open the same .tdms file, LabVIEW uses the create index
file? input of the first TDMS Open function to determine whether to generate the
.tdms_index file or not. LabVIEW ignores the create index file? input of all
subsequent TDMS Open functions.
The .tdms_index file is optional in TDMS applications. When you distribute a TDMS
application or .tdms file to another computer, you do not need to include the corresponding
.tdms_index file. You can use this function to create a new .tdms_index file for your TDMS
application if necessary.
1530 ni.com
Functions
file format version specifies the file format version for the .tdms file.
Refer to the following support document at ni.com for more information about the .tdms file
format.
0 1.0
2.0
1
(default)
• file path —
file path specifies the absolute path to the file you want to open. If you use this function to
create a new file, the file extension of the filename you specify in file path must be .tdms.
Otherwise, this function automatically appends .tdms to the filename you specify. If you use
this function to open or update an existing file, you do not have to ensure that the file extension
is .tdms.
• operation (0:open) —
byte order specifies the byte order, or endian format, of the data in the .tdms file. Byte order
specifies whether LabVIEW represents numeric values in memory from most significant byte to
least significant byte or vice versa.
The byte order input is valid only if you use this function to create a new .tdms file. If you use
this function to read an existing .tdms file, LabVIEW reads data in the byte order of that file and
represents the data in the native byte order of the host computer. If you use this function to
update an existing .tdms file, LabVIEW writes data in the byte order of that file.
big-endian, network order—Specifies that the most significant byte occupies the lowest
0
memory address.
1 native, host order—Specifies that this function uses the byte order of the host computer.
little-endian (default)—Specifies that the least significant byte occupies the lowest memory
2
address.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
disable buffering? (Windows) specifies whether LabVIEW opens, creates, or replaces a .tdms
file without system buffering. The default is TRUE, which means this function disables system
buffering and enables buffering in the TDMS disk cache.
Disabling system buffering can speed up data transfers in certain situations. If you have a small
amount of data to transfer, you might not notice a difference if you disable system buffering. To
read or write a data file to a Redundant Array of Independent Disks (RAID), consider opening the
file without system buffering to speed up data transfers. To read the same set of data repeatedly
from the computer, consider enabling system buffering.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1532 ni.com
Functions
Streams data to the specified .tdms file. The data subset to write is determined by the
values you identify in the group name in and channel name(s) in inputs.
Inputs/Outputs
• data layout (0:decimated) —
data layout specifies the arrangement of the data that you want to stream to a .tdms file. You
must use the same data layout for each channel under the same group.
decimated (default)—Specifies that the input data prioritizes channels before samples. This
arrangement first lists all samples from the first channel, then all samples from the second
channel, and so on through the last channel. The following table shows a typical example of
the
decimated
data layout.
0
Channel 0—Sample 1
Channel 0—Sample 2
...
Channel 0—Sample N
Channel 1—Sample 1
Channel 1—Sample 2
...
Channel 1—Sample N
Channel 2—Sample 1
Channel 2—Sample 2
...
Channel 2—Sample N
interleaved—Specifies that the input data prioritizes samples before channels. This
arrangement lists the first sample from every channel, then the second sample from every
channel, and so on through the last sample from every channel. The following table shows a
typical example of the
interleaved
data layout.
Channel 0—Sample 1
1 Channel 1—Sample 1
Channel 2—Sample 1
Channel 0—Sample 2
Channel 1—Sample 2
Channel 2—Sample 2
...
Channel 0—Sample N
Channel 1—Sample N
Channel 2—Sample N
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum.
group name in specifies the channel group on which to perform the operation. The default is
Untitled.
1534 ni.com
Functions
channel name(s) in indicates the channels on which to perform the operation. If you do not wire
data to this input, LabVIEW names the channels automatically. If you wire waveform data to the
data input, LabVIEW uses waveform names. The data type that the channel name(s) in input
accepts can be a string or a 1D array of strings. The data type varies according to the data you
wire to the data input.
1D Array of
String String or 1D Array of Strings
Strings
Analog Note
2D array of:
waveform
If data layout is decimated and you wire a 1D
• Signed or
1D array of array of strings to channel name(s) in, this VI uses
unsigned
alphanumeric the first element of the 1D array as the channel
integers
strings that do name.
• Floating-
not contain null point
If data layout is interleaved and you wire a string
characters numbers
to channel name(s) in, this VI uses this string as
the channel name of the first element in the 1D • Timestamps
array and uses Untitled, Untitled1, • Booleans
Untitled2...as the channel names of the rest • Alphanumeric
elements. strings that
do not
contain null
characters
If the data input contains compressed digital data, you must enter the name of the compression
channel as the first entry in the channel name(s) in array.
• data —
• Digital table
• Dynamic data
• 1D or 2D array of:
◦ Signed or unsigned integers
◦ Floating-point numbers, including the following specific data types:
▪ Single-precision and double-precision floating-point numbers
▪ Complex single-precision and double-precision floating-point numbers
▪ (Windows) Extended-precision floating-point numbers
◦ Timestamps
◦ Booleans
◦ Alphanumeric strings that do not contain null characters
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
group name out returns the name of the channel group on which you performed the operation.
channel name(s) out returns the channel name on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1536 ni.com
Functions
Reads the specified .tdms file and returns data in a format specified by the data type
input. If data has scaling information, this VI automatically scales the data. Use the
count and offset inputs to read a specified subset of the data.
Inputs/Outputs
• count (-1: all) —
count specifies the maximum number of data elements to read from the .tdms file for each
channel. The default is –1, all available elements.
• offset (0) —
offset specifies the number of data elements into the .tdms file at which the function begins
reading the .tdms file. The default is 0.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum.
• group name in —
group name in specifies the channel group on which to perform the operation.
If you do not wire data to this input, the following behavior occurs:
• LabVIEW reads data from the current group in the file. The current group is either the first
group in the file when you run this function for the first time or the nth group at the nth
cycle when you run this function continuously for multiple cycles.
• The order that the TDMS Read function reads groups is the same order that the TDMS List
Contents function returns groups.
• After LabVIEW reaches the last group, if the TDMS Read function attempts to run, LabVIEW
returns an end of file error.
Note The TDMS List Contents function and the TDMS Get Properties function will
reset the current group to the first group in the file. Resetting the current group to the
first group in the file impacts the group read by the next TDMS Read function when
you do not wire the group name in input.
• channel name(s) in —
channel name(s) in indicates the channel to perform the operation on. If you do not wire data to
this input, LabVIEW reads data from all channels under the same group. If you wire waveform
data to the data type input, LabVIEW uses waveform names. The data type that the channel
name(s) in input accepts can be a string or a 1D array of strings. The data type varies according
to the data you wire to the data type input.
Digital waveform
1538 ni.com
Functions
If you load a complete file or group that contains compressed digital data, LabVIEW
automatically inserts the compression channel name in the channel name(s) in array. If you load
a subset of a file or group that contains compressed digital data, you must enter the name of the
compression channel as the first entry in the channel name(s) in array.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data type —
data type is the type of data that you want data to contain.
return channels in file order? specifies whether this function returns data channels in the same
order as they exist in the .tdms file. If the value is TRUE or if you do not specify the channel
name(s) in input, this function returns data channels in the same order as they exist in the
.tdms file. If the value is FALSE, this function returns data channels in the same order as you
specify in the channel name(s) in input. The default is FALSE.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
group name out returns the name of the channel group on which you performed the operation.
channel name(s) out returns the channel name on which you performed the operation.
• data —
data contains the data read from the file in the specified data type. It can consist of any data
type depending on which data type you specify in data type and how count is set.
• error out —
error out contains error information. This output provides standard error out functionality.
• end of file? —
end of file? indicates if the end of the file has been reached.
Examples
Closes the .tdms file you opened with the TDMS Open function.
Inputs/Outputs
• tdms file —
1540 ni.com
Functions
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
file path out returns the path of the .tdms file on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
(VxWorks) LabVIEW loads the shared TDMS component into memory when you open a
TDMS file. LabVIEW unloads this component from memory when you close all TDMS
files. On the VxWorks operating system, unloading the TDMS component from memory
will leak approximately 1.8 kilobytes of memory due to a known issue of VxWorks. You
can follow the guidelines below to avoid memory leak in your application.
For information on how to access files such as ni-rt.ini on your RT target, refer to
the KnowledgeBase on ni.com.
Examples
Provides a list of group and channel names contained within the .tdms file specified in
the .tdms file input.
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum.
• group name —
group name indicates the channel group to analyze. If this input is not wired, the function
performs the operation on all channel and group names.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• group names —
1542 ni.com
Functions
group names lists the names of the channel groups in the specified .tdms file.
• group/channel names —
group/channel names lists the names of the channel groups and their associated channels in
the specified .tdms file.
If the group name input is wired, group/channel names returns the channel names within the
specified group.
• error out —
error out contains error information. This output provides standard error out functionality.
Sets the properties of the specified .tdms file, channel group, or channel. If you wire
the group name and channel name inputs with values, the function writes the
properties at the channel level. Wiring only the group name input with a value writes
the properties at the channel group level. If both group name and channel name
inputs contain no values, the properties become file-specific. If you wire the channel
name input with a value, you must also wire a value to the group name input. You
must close the reference to the .tdms file or flush data to the .tdms file for changes to
take effect.
Inputs/Outputs
• property values —
property values specifies the property values of the specified channel group, channel, or .tdms
file. This input accepts the following data types:
If you want to set more than one property using the same function, you can wire a 1D array of
any of the previously specified data types to the property values input. Each value in the array
corresponds to a single property. However, a single property cannot hold an array of values.
• property names —
property names specifies the property names of the specified channel group, channel, or
.tdms file.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum.
• group name —
group name specifies the channel group to perform the operation on. If you wire a value to the
channel name input, you must also wire a value to this input.
• channel name —
channel name specifies the channel to perform the operation on. If you wire a value to this
input, you must also wire a value to the group name input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
1544 ni.com
Functions
group name out returns the name of the channel group on which you performed the operation.
channel name out returns the name of the channel on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
This section lists all properties that you might encounter when you use a .tdms file.
The first table lists all properties you might find in a .tdms file. The second table lists
all properties that do not exist in a .tdms file but which you can use to perform
certain actions. You can write these properties as waveform attributes to a .tdms file.
However, some of these properties might not appear as waveform attributes when you
read the waveform data from the .tdms file. The Available as a Waveform Attribute?
column provides information about whether a property is available as a waveform
attribute. If the data type of a property is not valid, LabVIEW treats the property as a
customized property and the property will not perform as described in the table.
You can use the TDMS Get Properties function to obtain the values of these properties.
Use the TDMS Set Properties function to change the values of these properties.
The following table lists all properties you might find in a .tdms file.
Available Available
in File as a
Property Name Data Type Access Description
Format Waveform
Versions Attribute?
Specifies the object name,
Read/ such as the root name, group
name String 2.0 Yes
write name, or channel name, in a
.tdms file.
Indicates the index of a
32-bit
column in a 2D array. This
signed Read 1.0 and
NI_ArrayColumn No property appears in a .tdms
integer only 2.0
file only if you write a 2D
numeric
array of data to the file.
Available Available
in File as a
Property Name Data Type Access Description
Format Waveform
Versions Attribute?
64-bit
Represents the number of
unsigned Read 1.0 and
NI_ChannelLength Yes values in a channel of a
integer only 2.0
.tdms file.
numeric
• String: 0x20
16-bit • Boolean:
unsigned Read 1.0 and 0x21
NI_DataType Yes
integer only 2.0 • Time
numeric stamp:
0x44
• Fixed-point
number:
0x4F
• Single-
precision,
floating-
point
number
with units:
0x19
• Complex
single-
1546 ni.com
Functions
Available Available
in File as a
Property Name Data Type Access Description
Format Waveform
Versions Attribute?
precision,
floating-
point
number:
0x08000c
• Complex
double-
precision,
floating-
point
number:
0x10000d
• DAQmx raw
data:
0xFFFFFFFF
Available Available
in File as a
Property Name Data Type Access Description
Format Waveform
Versions Attribute?
32-bit
signed Read 1.0 and Indicates the number of rows
NI_DigitalNumberOfLines No
integer only 2.0 in a digital table.
numeric
Specifies the number of
scales to use when you read
data from a .tdms file. For
example, if a .tdms file has
32-bit
five scales and you set the
unsigned Read/
NI_Number_Of_Scales 2.0 No value of
integer write
NI_Number_Of_Scales
numeric
to 4, LabVIEW applies only
the first four scales to the
data when you read the
.tdms file.
Specifies the scaling
information for the data in a
.tdms file. You can create
more than one scale in a
.tdms file.
NI_Scale[n]_config, where
n represents the order of the Read/ Note National
N/A 2.0 No
scale and config represents the write Instruments
configuration of the scale. recommends you
use the TDMS
Create Scaling
Information VI to
create scales.
1548 ni.com
Functions
Available Available
in File as a
Property Name Data Type Access Description
Format Waveform
Versions Attribute?
scaled, LabVIEW does not
scale the data. For DAQmx
data channels, LabVIEW
cannot return unscaled data
even when
NI_Scaling_Status is
unscaled.
Read/ 1.0 and Specifies the unit of the
unit_string String No
write 2.0 channel data in a .tdms file.
Represents the increment
Read/ 1.0 and
wf_increment Double No between two consecutive
write 2.0
samples on the x-axis.
Represents the number of
32-bit samples in the first data
signed Read/ 1.0 and chunk of the waveform you
wf_samples No
integer write 2.0 write to a .tdms file. The
numeric value must be greater than
zero.
Frequency-domain data and
Read 1.0 and histogram results use this
wf_start_offset Double No
only 2.0 value as the first value on the
x-axis.
Represents the time at which
the waveform was acquired
or generated. This property
Read 1.0 and
wf_start_time Timestamp No can be zero if the time
only 2.0
information is relative or the
waveform is not in time
domain.
Indicates whether LabVIEW
Read 1.0 and interprets the x-axis data in
wf_time_pref String No
only 2.0 absolute time or relative
time.
wf_xname String Read 1.0 and No Indicates the name of the
Available Available
in File as a
Property Name Data Type Access Description
Format Waveform
Versions Attribute?
In addition to the properties in the table above, a .tdms file might also contain other
waveform attributes.
The following table lists all properties that do not exist in a .tdms file, but you can use
them to perform certain actions.
Available Available
Data in File as a
Property Name Unit Access Description
Type Format Waveform
Versions Attribute?
You can use the
NI_DiskCacheSize
improve the .tdms da
performance by alloca
amount of cache size i
the data. LabVIEW wri
data in bytes per file. T
is valid only when the
32-bit buffering? input of the
unsigned Read/ function is TRUE. The
NI_DiskCacheSize Byte 2.0 Yes
integer write for this property is app
numeric MB. Wire a different va
property values input
Set Properties functio
the cache size. A great
the NI_DiskCacheS
property usually can im
writing performance; h
greater value also requ
computer resources.
1550 ni.com
Functions
Available Available
Data in File as a
Property Name Unit Access Description
Type Format Waveform
Versions Attribute?
You can use the
NI_DiskGapSize p
improve the .tdms da
performance when rea
discontinuous data. Th
valid only when the di
buffering? input of the
function is TRUE. The
NI_DiskGapSize p
multiple of the sector
local hard disk. The de
for this property is 10.
gap in the .tdms file i
the value of the
NI_DiskGapSize p
TDMS Read function c
data from the file at on
32-bit data gap in the .tdms
unsigned Read/ than the value of the
NI_DiskGapSize Byte 2.0 Yes
integer write NI_DiskGapSize p
numeric TDMS Read function re
piece of data one at a
function finishes readi
Wire a value to the pro
input of the TDMS Set
function to change the
Note Obtain
optimal read
writing perfo
trial-and-err
The same co
might not re
same optima
performance
different com
might need t
Available Available
Data in File as a
Property Name Unit Access Description
Type Format Waveform
Versions Attribute?
property valu
deploy an ap
from one com
another.
1552 ni.com
Functions
Available Available
Data in File as a
Property Name Unit Access Description
Type Format Waveform
Versions Attribute?
function is decimated
the value of the
NI_MinimumBuffer
property is zero. If you
at the group level, this
sets the value of unde
channels whose value
set the value at the file
function also sets the
underlying groups and
whose value is zero. U
property and the
NI_DiskCacheSize
affects file buffering w
You can use the TDMS
Properties function to
groups and channels i
files. Wire
NI_UpdateGroupNa
property names input
to rename a group and
NI_UpdateChannel
property names input
NI_UpdateChannelName
Write 1.0 and to rename a channel. W
String N/A Yes
only 2.0 group or channel nam
NI_UpdateGroupName
property values input
group or channel nam
want to replace to the
or channel name inpu
groups or channels yo
group name or chann
not exist, LabVIEW cre
groups or channels wi
names.
Examples
Returns the properties of the specified .tdms file, channel group, or channel. If you
wire the group name and channel name inputs with values, the function searches for
properties at the channel level. Wiring only the group name input with a value
searches for properties at the channel group level. If both group name and channel
name inputs contain no values, the function searches for properties at the root level of
the .tdms file. If you wire the channel name input with a value, you must also wire a
value to the group name input.
Inputs/Outputs
• data type —
data type controls the data type of the property values or property value output.
1554 ni.com
Functions
To return more than one property using the same function, you can wire a 1D array of any of the
previously specified data types to the data type input. Each value in the array corresponds to a
single property. However, a single property cannot hold an array of values.
• property name —
property name specifies the name of the property whose values you want to get. If you do not
wire this input, this function returns the property names and their property values for the
specified group name, channel name, or the entire .tdms file. If you wire this input, the
property value output replaces property values and returns the value of the specified property;
the found output replaces property names and returns TRUE. If the specified property does not
exist in the .tdms file, the property value output returns the default value of the specified data
type and the found output returns FALSE.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum.
• group name —
group name specifies the channel group to perform the operation on. If you wire a value to the
channel name input, you must also wire a value to this input.
• channel name —
channel name specifies the channel to perform the operation on. If you wire a value to this
input, you must also wire a value to the group name input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
group name out returns the name of the channel group on which you performed the operation.
channel name out returns the name of the channel on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
• property values —
property values returns the property values of the specified channel group, channel, or .tdms
file. This output is available only if the property name input is not wired.
The data type of this parameter is determined by the data type input.
• property value —
property value replaces the property values output and returns the property value of the
specified property. This output is available only if the property name input is wired.
The data type of this parameter is determined by the data type input.
• property names —
property names returns the property names of the specified channel group, channel, or .tdms
file. This output is available only if the property name input is not wired.
• found — found replaces the property names output and indicates whether the specified
property exists in the .tdms file or not. This output is available only if the property name input
is wired.
Examples
Writes all buffers of the .tdms file data to the file identified by the tdms file input. Data
1556 ni.com
Functions
written to a .tdms file often resides in a buffer until the buffer fills up or until you close
the file. This function forces the operating system to write any buffer data to the .tdms
file.
Note Flushing data too frequently might negatively impact the writing
performance of your application.
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Opens the .tdms file specified in the file in input and presents the file data in the TDMS
File Viewer dialog box.
Inputs/Outputs
• file in —
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• file out —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Defragments the .tdms file data specified in the file path input. Use this function to
1558 ni.com
Functions
clean up your .tdms data when it becomes cluttered, and increase performance.
Inputs/Outputs
• file path —
file path is the path to the .tdms file you want to defragment.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Advanced TDMS
Use the Advanced TDMS VIs and functions to perform advanced file I/O operations,
such as asynchronous reads and writes, on .tdms files. You can use these VIs and
functions to read data from an existing .tdms file, write data to a new .tdms file, or
replace subsets of data in an existing .tdms file. You also can use these VIs and
functions to convert the file format version of a .tdms file or to create scaling
information for unscaled data.
Note Use the standard TDMS VIs and functions when the features of the
Advanced TDMS VIs and functions are not necessary. Incorrect use of the
Advanced TDMS VIs and functions might result in a corrupt .tdms file. If you
disable buffering when using the Advanced TDMS VIs and functions, the data
size you read or write must be a multiple of the sector size of the hard disk.
The VIs and functions on this palette can return TDM streaming error codes.
Palette
Description
Object
Opens a .tdms file for reading or writing in the byte order of the host computer. You
TDMS
also can use this function to create a new file or replace an existing file. Unlike the
Advanced
TDMS Open function, the TDMS Advanced Open function does not create a
Open
.tdms_index file. If you use this function to open an existing .tdms file that has a
Function
corresponding .tdms_index file, this function removes the .tdms_index file.
TDMS
Advanced Closes the .tdms file that you opened with the TDMS Advanced Open function and
Close releases extra disk space that the TDMS Reserve File Size function reserves.
Function
TDMS Set
Defines the channel information of the raw data that you want to write to the
Channel
specified .tdms file. The channel information includes the data layout, name of the
Information
group, names of the channels, data type, and number of samples.
Function
Creates scaling information for unscaled data in a .tdms file. This VI writes the
scaling information to the .tdms file. You must manually select the polymorphic
TDMS Create
instance to use.
Scaling
Information
To call this VI with TDMS Advanced functions, only call the TDMS Set Channel
Information function after any calls to this VI.
TDMS Delete
Deletes data from a channel or multiple channels in a group.
Data Function
TDMS Set
Configures the offset at which the TDMS Advanced Asynchronous Write or TDMS
Next Write
Advanced Synchronous Write function starts overwriting the existing data in a .tdms
Position
file.
Function
TDMS Set
Next Read Configures the offset at which the TDMS Advanced Asynchronous Read function
Position starts reading data from a .tdms file.
Function
TDMS Reserve Pre-allocates disk space for writing and prevents fragmentation on a file-system
File Size level. If you are running this function on Windows with User Account Control
1560 ni.com
Functions
Palette
Description
Object
enabled, you must run LabVIEW or the application with administrator privileges to
Function
avoid a run-time error.
Converts the file format version of a .tdms file from 1.0 to 2.0 or vice versa. This VI
TDMS Convert overwrites the .tdms file with the new file format version you specify in the target
Format version input. This VI also changes the byte order of the .tdms file to native, host
order.
TDMS
Advanced Use the TDMS Advanced Synchronous I/O functions to synchronously read data
Synchronous from or write data to .tdms files.
I/O
TDMS
Advanced Use the TDMS Advanced Asynchronous I/O functions to asynchronously read data
Asynchronous from or write data to .tdms files.
I/O
Use the TDMS Advanced Data Reference I/O functions to interact with data that is
owned by a component external to LabVIEW, such as the direct memory access
TDMS
(DMA) buffer of a device driver that controls a data-streaming device. You can use
Advanced
these functions to asynchronously write data from the DMA buffer of a device driver
Data
to .tdms files without needing to copy the data into a LabVIEW array first. You also
Reference I/O
can use these functions to asynchronously read data from .tdms files and place the
data directly into the DMA buffer.
TDMS In Use the TDMS In Memory functions to open, close, read from, and write to .tdms
Memory files in memory.
Inputs/Outputs
• file path —
file path specifies the absolute path to the file you want to open. If you use this function to
create a new file, the file extension of the filename you specify in file path must be .tdms.
Otherwise, this function automatically appends .tdms to the filename you specify. If you use
this function to open or update an existing file, you do not have to ensure that the file extension
is .tdms.
• operation (0:open) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
disable buffering? (Windows) specifies whether LabVIEW opens, creates, or replaces a .tdms
file without system buffering. The default is TRUE, which means this function disables system
buffering. If the value is TRUE, the size of data to read or write must be a multiple of the sector
size of the hard disk.
Disabling system buffering can speed up data transfers in certain situations. If you have a small
amount of data to transfer, you might not notice a difference if you disable buffering. To read or
1562 ni.com
Functions
write a data file to a Redundant Array of Independent Disks (RAID), consider opening the file
without buffering to speed up data transfers. To read the same set of data repeatedly from the
computer, consider enabling buffering.
enable asynchronous? (Windows) specifies whether to enable asynchronous reads or writes for
the .tdms file. Set the value to TRUE if you want to use the TDMS Advanced Asynchronous I/O
or TDMS Advanced Data Reference I/O functions. Set the value to FALSE if you want to use the
TDMS Advanced Synchronous I/O functions. The default is TRUE.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• sector size —
sector size returns the sector size of the hard disk. (macOS/Linux/RT targets) sector size is not
supported and returns a value of zero.
Note Traditionally, the sector size of hard disks is 512 bytes. In recent years, the
sector size is 4096 bytes for large hard disks and RAID arrays.
• error out —
error out contains error information. This output provides standard error out functionality.
The byte order, or endian format, specifies whether LabVIEW represents numeric
values in memory from most significant byte to least significant byte or vice versa.
Note Use this function to open a .tdms file with a file format version of 2.0.
To open a version 1.0 file, use the TDMS Open function.
Examples
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
truncate file? specifies whether to truncate the .tdms file when closing this file. If the value is
TRUE, this function truncates the file at the current writing position. If the value is FALSE, this
function does not truncate the file and only releases extra disk space that the TDMS Reserve File
Size function reserves. The default is FALSE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (10 s) —
timeout specifies the maximum time, in seconds, that this function waits for pending
asynchronous writes to complete before closing the .tdms file. If you do not wire data to the
timeout input, this function sets the value to 10. This input is valid only if the enable
1564 ni.com
Functions
file path out returns the path of the .tdms file on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note If you use this function multiple times in an application, the order in
which you use this function determines the order of channels and groups
that you write to a .tdms file.
Inputs/Outputs
• data layout (0:non-interleaved) —
data layout specifies the arrangement of the data that you want to stream to a .tdms file. You
must use the same data layout for each channel under the same group.
non-interleaved (default)—Specifies that the input data prioritizes channels before samples.
This arrangement first lists all samples from the first channel, then all samples from the second
channel, and so on through the last channel. The following table shows a typical example of
the non-interleaved data layout.
Channel 0—Sample 1
Channel 0—Sample 2
...
0 Channel 0—Sample N
Channel 1—Sample 1
Channel 1—Sample 2
...
Channel 1—Sample N
Channel 2—Sample 1
Channel 2—Sample 2
...
Channel 2—Sample N
interleaved—Specifies that the input data prioritizes samples before channels. This
arrangement lists the first sample from every channel, then the second sample from every
1
channel, and so on through the last sample from every channel. The following table shows a
typical example of the interleaved data layout.
1566 ni.com
Functions
Channel 0—Sample 1
Channel 1—Sample 1
Channel 2—Sample 1
Channel 0—Sample 2
Channel 1—Sample 2
Channel 2—Sample 2
...
Channel 0—Sample N
Channel 1—Sample N
Channel 2—Sample N
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
group name specifies the group name for the channel. If you do not wire data to this input or if
you wire an empty string to this input, this function uses Untitled as the group name.
• channel name(s) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data type —
data type specifies the type of data on which you want to perform the operation. This input
accepts integers, floating-point numbers, Booleans, and timestamps.
Note You can wire the following floating-point numbers to this input:
• Single-precision and double-precision floating-point numbers
• Complex single-precision and double-precision floating-point numbers
• (Windows) Extended-precision floating-point numbers
samples per channel specifies the number of data samples that each channel contains.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
The following use cases demonstrate how the TDMS Set Channel Information function
arranges raw data according to the data layout input.
The data layout in the file is consecutive samples per channel. In the previous figure, a
single 16-bit numeric or I16 sample follows another I16 sample, which follows another
I16 sample, and so on. You can write as many I16 samples as you want. For example,
you can write one million I16 samples or two million I16 samples at a time.
1568 ni.com
Functions
The data layout is 8 consecutive samples per channel. In the previous figure, the data
layout is eight I16 samples for the ch0 channel, eight I16 samples for the ch1 channel,
and so on.
In the previous figure, the data layout is an I16 sample for the ch0 channel followed by
an I16 sample for the ch1 channel. This pair repeats in the file. The total file size or the
NI_ChannelLength property determines how often the pair repeats.
The data layout is 8 consecutive samples per channel per group or device. In the
previous figure, the data layout contains eight I16 samples for the ch0 channel for
device1, eight I16 samples for the ch1 channel for device1, eight I16 samples for
the ch0 channel for device2, eight I16 samples for the ch1 channel for device2,
and so on.
In the previous figure, the data layout is 8 pairs of an I16 sample for the ch0 channel
and an I16 sample for the ch1 channel of device1. Following the 8 pairs is 8 pairs of
an I16 sample for the ch0 channel and an I16 sample for the ch1 channel of
device2. This pattern repeats in the file.
Examples
To call this VI with TDMS Advanced functions, only call the TDMS Set Channel
Information function after any calls to this VI.
Use the TDMS File Viewer VI to retrieve the scaling information from a .tdms file.
1570 ni.com
Functions
Examples
To call this VI with TDMS Advanced functions, only call the TDMS Set Channel
Information function after any calls to this VI.
Use the TDMS File Viewer VI to retrieve the scaling information from a .tdms file.
Inputs/Outputs
• linear scale —
linear scale specifies the linear scaling information. A linear scale uses the equation y=mx+b,
where x is a pre-scaled value, and y is a scaled value.
• slope —
slope specifies the slope, or m in the equation, for the scale. The default is 0.
• y intercept —
y intercept specifies the y intercept, or b in the equation, for the scale. The default is 0.
• input source —
input source specifies the ID of the child scale. If the current scale has a child scale, you can
wire the scale ID of the child scale to this input. The default is –1, which specifies that the
current scale does not have a child scale.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum. group name and channel name take precedence
over this input. If you specify a value for either group name or channel name, this VI applies the
scaling information to either the group or the channel, respectively. If you do not specify a value
for them, this VI applies the scaling information to the .tdms data.
• group name —
group name specifies the group name for the .tdms data. This input takes precedence over
tdms file but has a lower priority than channel name.
• channel name —
channel name specifies the channel name for the .tdms data. This input takes precedence over
group name and tdms file. If you do not specify a value for channel name, this VI applies the
scaling information to the group. If you do not specify a value for group name either, this VI
applies the scaling information to the .tdms data.
1572 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
group name out returns the name of the channel group on which you performed the operation.
channel name out returns the name of the channel on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
• scale ID —
Examples
To call this VI with TDMS Advanced functions, only call the TDMS Set Channel
Use the TDMS File Viewer VI to retrieve the scaling information from a .tdms file.
Inputs/Outputs
• polynomial scale —
polynomial scale specifies the polynomial scaling information. A polynomial scale uses an nth-
order polynomial equation.
• coefficients —
coefficients specifies the coefficients for the scale that converts pre-scaled values to scaled
values. Each element of the array corresponds to a term of the equation.
For example, if index three of the array is 9, the fourth term of the equation is 9x3.
• input source —
input source specifies the ID of the child scale. If the current scale has a child scale, you can
wire the scale ID of the child scale to this input. The default is –1, which specifies that the
current scale does not have a child scale.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum. group name and channel name take precedence
over this input. If you specify a value for either group name or channel name, this VI applies the
scaling information to either the group or the channel, respectively. If you do not specify a value
for them, this VI applies the scaling information to the .tdms data.
1574 ni.com
Functions
• group name —
group name specifies the group name for the .tdms data. This input takes precedence over
tdms file but has a lower priority than channel name.
• channel name —
channel name specifies the channel name for the .tdms data. This input takes precedence over
group name and tdms file. If you do not specify a value for channel name, this VI applies the
scaling information to the group. If you do not specify a value for group name either, this VI
applies the scaling information to the .tdms data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
group name out returns the name of the channel group on which you performed the operation.
channel name out returns the name of the channel on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
• scale ID —
Examples
To call this VI with TDMS Advanced functions, only call the TDMS Set Channel
Information function after any calls to this VI.
Use the TDMS File Viewer VI to retrieve the scaling information from a .tdms file.
Inputs/Outputs
• thermocouple scale —
thermocouple scale specifies the thermocouple scaling information, which scales the .tdms
data from microvolts to degrees Celsius.
If the data is not in microvolts, first convert the data to microvolts with an additional scale. For
example, you can use the TDMS Create Scaling Information (Linear) instance VI to convert the
data.
• thermocouple type —
1576 ni.com
Functions
• input source —
input source specifies the ID of the child scale. If the current scale has a child scale, you can
wire the scale ID of the child scale to this input. The default is –1, which specifies that the
current scale does not have a child scale.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum. group name and channel name take precedence
over this input. If you specify a value for either group name or channel name, this VI applies the
scaling information to either the group or the channel, respectively. If you do not specify a value
for them, this VI applies the scaling information to the .tdms data.
• group name —
group name specifies the group name for the .tdms data. This input takes precedence over
tdms file but has a lower priority than channel name.
• channel name —
channel name specifies the channel name for the .tdms data. This input takes precedence over
group name and tdms file. If you do not specify a value for channel name, this VI applies the
scaling information to the group. If you do not specify a value for group name either, this VI
applies the scaling information to the .tdms data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
group name out returns the name of the channel group on which you performed the operation.
channel name out returns the name of the channel on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
• scale ID —
Examples
To call this VI with TDMS Advanced functions, only call the TDMS Set Channel
Information function after any calls to this VI.
Use the TDMS File Viewer VI to retrieve the scaling information from a .tdms file.
1578 ni.com
Functions
Inputs/Outputs
• RTD scale —
RTD scale specifies the resistance temperature detector (RTD) scaling information, which scales
the .tdms data in degrees Celsius.
• current excitation —
current excitation specifies, in amperes, the amount of excitation that the sensor requires.
Refer to the sensor documentation to determine this value.
• r0 nominal resistance —
r0 nominal resistance specifies the sensor resistance, in ohms, at 0 degrees Celsius. The
Callendar-Van Dusen equation requires this value. Refer to the sensor documentation to
determine this value.
• a—
a specifies the a coefficient for the Callendar-Van Dusen equation. Refer to the sensor
documentation to determine this value.
• b—
b specifies the b coefficient for the Callendar-Van Dusen equation. Refer to the sensor
documentation to determine this value.
• c—
c specifies the c coefficient for the Callendar-Van Dusen equation. Refer to the sensor
documentation to determine this value.
lead wire resistance specifies the amount of resistance in ohms in the lead wires. Ideally,
this value is the same for all leads.
• resistance configuration —
resistance configuration specifies the number of wires to use for resistance measurements.
• input source —
input source specifies the ID of the child scale. If the current scale has a child scale, you can
wire the scale ID of the child scale to this input. The default is –1, which specifies that the
current scale does not have a child scale.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum. group name and channel name take precedence
over this input. If you specify a value for either group name or channel name, this VI applies the
scaling information to either the group or the channel, respectively. If you do not specify a value
for them, this VI applies the scaling information to the .tdms data.
• group name —
group name specifies the group name for the .tdms data. This input takes precedence over
tdms file but has a lower priority than channel name.
• channel name —
channel name specifies the channel name for the .tdms data. This input takes precedence over
group name and tdms file. If you do not specify a value for channel name, this VI applies the
scaling information to the group. If you do not specify a value for group name either, this VI
applies the scaling information to the .tdms data.
error in describes error conditions that occur before this node runs. This input provides
1580 ni.com
Functions
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
group name out returns the name of the channel group on which you performed the operation.
channel name out returns the name of the channel on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
• scale ID —
Examples
To call this VI with TDMS Advanced functions, only call the TDMS Set Channel
Information function after any calls to this VI.
Use the TDMS File Viewer VI to retrieve the scaling information from a .tdms file.
Inputs/Outputs
• table scale —
table scale specifies the table scaling information. A table scale maps an array of pre-scaled
values to an array of corresponding scaled values.
• scaled values —
scaled values specifies the scaled values that map to the values in pre-scaled values.
• pre-scaled values —
pre-scaled values specifies the pre-scaled values that map to the values in scaled values.
• input source —
input source specifies the ID of the child scale. If the current scale has a child scale, you can
wire the scale ID of the child scale to this input. The default is –1, which specifies that the
current scale does not have a child scale.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum. group name and channel name take precedence
over this input. If you specify a value for either group name or channel name, this VI applies the
scaling information to either the group or the channel, respectively. If you do not specify a value
for them, this VI applies the scaling information to the .tdms data.
• group name —
group name specifies the group name for the .tdms data. This input takes precedence over
1582 ni.com
Functions
• channel name —
channel name specifies the channel name for the .tdms data. This input takes precedence over
group name and tdms file. If you do not specify a value for channel name, this VI applies the
scaling information to the group. If you do not specify a value for group name either, this VI
applies the scaling information to the .tdms data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
group name out returns the name of the channel group on which you performed the operation.
channel name out returns the name of the channel on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
• scale ID —
Examples
To call this VI with TDMS Advanced functions, only call the TDMS Set Channel
Information function after any calls to this VI.
Use the TDMS File Viewer VI to retrieve the scaling information from a .tdms file.
Inputs/Outputs
• strain scale —
strain scale specifies the strain scaling information, which scales the .tdms data in strains.
Strain is the amount of deformation of a body due to an applied force. Specifically, strain is the
fractional change in length.
• configuration —
1584 ni.com
Functions
• Poisson ratio —
Poisson ratio specifies the ratio of lateral strain to axial strain in the material you are
measuring.
• gage resistance —
gage resistance specifies the resistance, in ohms, of the gages in an unstrained position.
Each gage in the bridge must have the same nominal gage resistance. The resistance across
arms of the bridge that do not have strain gages also must be the same as the nominal gage
resistance. Refer to the sensor documentation to determine this value.
lead wire resistance specifies the amount of resistance in ohms in the lead wires. Ideally,
this value is the same for all leads.
initial bridge voltage specifies in volts the output voltage of the bridge in the unloaded
condition. This VI subtracts this value from any measurements before applying scaling
equations. Perform a voltage measurement on the bridge with no strain applied to
determine this value.
• gage factor —
gage factor specifies the sensitivity of the strain gages and relates the change in electrical
resistance to the change in strain. Each gage in the bridge must have the same gage factor.
Refer to the sensor documentation to determine this value.
• voltage excitation —
voltage excitation specifies in volts the amount of excitation that the sensor requires. Refer
to the sensor documentation to determine this value.
• input source —
input source specifies the ID of the child scale. If the current scale has a child scale, you can
wire the scale ID of the child scale to this input. The default is –1, which specifies that the
current scale does not have a child scale.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum. group name and channel name take precedence
over this input. If you specify a value for either group name or channel name, this VI applies the
scaling information to either the group or the channel, respectively. If you do not specify a value
for them, this VI applies the scaling information to the .tdms data.
• group name —
group name specifies the group name for the .tdms data. This input takes precedence over
tdms file but has a lower priority than channel name.
• channel name —
channel name specifies the channel name for the .tdms data. This input takes precedence over
group name and tdms file. If you do not specify a value for channel name, this VI applies the
scaling information to the group. If you do not specify a value for group name either, this VI
applies the scaling information to the .tdms data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
group name out returns the name of the channel group on which you performed the operation.
channel name out returns the name of the channel on which you performed the operation.
• error out —
1586 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
• scale ID —
Examples
To call this VI with TDMS Advanced functions, only call the TDMS Set Channel
Information function after any calls to this VI.
Use the TDMS File Viewer VI to retrieve the scaling information from a .tdms file.
Inputs/Outputs
• thermistor scale —
thermistor scale specifies the thermistor scaling information, which scales the .tdms data in
Kelvin.
• resistance configuration —
resistance configuration specifies the number of wires to use for resistance measurements.
• excitation type —
• excitation value —
excitation value specifies the amount of excitation that the sensor requires. When
excitation type is Current, the unit of excitation value is amperes. When excitation type is
Voltage, the unit of excitation value is volts. Refer to the sensor documentation to
determine this value.
• r1 reference resistance —
lead wire resistance specifies the amount of resistance in ohms in the lead wires. Ideally,
this value is the same for all leads.
• a—
a specifies the a constant for the Steinhart-Hart thermistor equation. Refer to the sensor
1588 ni.com
Functions
• b—
b specifies the b constant for the Steinhart-Hart thermistor equation. Refer to the sensor
documentation to determine the value for this constant.
• c—
c specifies the c constant for the Steinhart-Hart thermistor equation. Refer to the sensor
documentation to determine the value for this constant.
• input source —
input source specifies the ID of the child scale. If the current scale has a child scale, you can
wire the scale ID of the child scale to this input. The default is –1, which specifies that the
current scale does not have a child scale.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum. group name and channel name take precedence
over this input. If you specify a value for either group name or channel name, this VI applies the
scaling information to either the group or the channel, respectively. If you do not specify a value
for them, this VI applies the scaling information to the .tdms data.
• group name —
group name specifies the group name for the .tdms data. This input takes precedence over
tdms file but has a lower priority than channel name.
• channel name —
channel name specifies the channel name for the .tdms data. This input takes precedence over
group name and tdms file. If you do not specify a value for channel name, this VI applies the
scaling information to the group. If you do not specify a value for group name either, this VI
applies the scaling information to the .tdms data.
error in describes error conditions that occur before this node runs. This input provides
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
group name out returns the name of the channel group on which you performed the operation.
channel name out returns the name of the channel on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
• scale ID —
Examples
To call this VI with TDMS Advanced functions, only call the TDMS Set Channel
Information function after any calls to this VI.
1590 ni.com
Functions
Use the TDMS File Viewer VI to retrieve the scaling information from a .tdms file.
Inputs/Outputs
• reciprocal scale —
reciprocal scale specifies the reciprocal scaling information. A reciprocal scale divides the
number 1 by an input value. If the input value is zero, this VI uses zero as the reciprocal.
• input source —
input source specifies the ID of the child scale. If the current scale has a child scale, you can
wire the scale ID of the child scale to this input. The default is –1, which specifies that the
current scale does not have a child scale.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Open function to open the refnum. group name and channel name take precedence
over this input. If you specify a value for either group name or channel name, this VI applies the
scaling information to either the group or the channel, respectively. If you do not specify a value
for them, this VI applies the scaling information to the .tdms data.
• group name —
group name specifies the group name for the .tdms data. This input takes precedence over
tdms file but has a lower priority than channel name.
• channel name —
channel name specifies the channel name for the .tdms data. This input takes precedence over
group name and tdms file. If you do not specify a value for channel name, this VI applies the
scaling information to the group. If you do not specify a value for group name either, this VI
applies the scaling information to the .tdms data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
group name out returns the name of the channel group on which you performed the operation.
channel name out returns the name of the channel on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
• scale ID —
Examples
1592 ni.com
Functions
Note This function does not support digital data or DAQmx raw data.
Inputs/Outputs
• count (-1: all) —
count specifies the number of data samples to delete from the .tdms file for each channel. The
default is -1, which means this function deletes all data samples from the position you specify in
from.
If the value of count is out of range for a channel, this function automatically sets count to the
number of data samples in that channel.
from specifies from where to delete data samples from the .tdms file for each channel.
0 start (default)—Specifies to delete data samples from the beginning of each channel.
1 end—Specifies to delete data samples from the end of each channel.
• file path —
file path is the absolute path to the file you want to open.
• group name in —
group name in specifies the channel group on which to perform the operation.
• channel name(s) in —
channel name(s) in specifies the channel to perform the operation on. If you do not wire data to
this input, LabVIEW performs the operation on all channels under the same group.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
keep empty group/channel? specifies whether to keep the group or channels in the .tdms file
if the group or channels are empty after this function deletes data samples. The default is TRUE,
which means this function keeps the empty group or channels.
file path out returns the path of the .tdms file on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
When the data you wire contains waveform data, LabVIEW sets the following channel
properties and waveform attributes:
Examples
1594 ni.com
Functions
Note Overwriting existing data from the middle of a file might result in a
corrupt final file. National Instruments recommends that you truncate the file
when you finish writing, or make sure you overwrite the entire remainder of
the file. Use the truncate file? input of the TDMS Advanced Close function to
truncate a .tdms file.
Inputs/Outputs
• channel name in —
• group name in —
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
• offset (0) —
offset specifies how far in the raw data from the location specified by from to set the file
position. The default is 0. If the disable buffering? input of the TDMS Advanced Open function is
TRUE, the next write position you set must be a multiple of the sector size of the hard disk.
• from (0:start) —
from specifies where to set the file position in the raw data based on the offset.
start (default)—Sets the file position offset samples from the beginning of the raw data in the
0 .tdms file. If the value of from is 0, the value of offset must be equal to or greater than 0,
which sets the file position at the beginning of the raw data.
end—Sets the file position offset samples from the end of the raw data in the .tdms file. If the
1 value of from is 1, the value of offset must be equal to or less than 0, which sets the file
position at the end of the raw data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1596 ni.com
Functions
Inputs/Outputs
• channel name in —
• group name in —
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
• offset (0) —
offset specifies how far in the raw data from the location specified by from to set the file
position. The default is 0. If the disable buffering? input of the TDMS Advanced Open function is
TRUE, the next read position you set must be a multiple of the sector size of the hard disk.
from specifies where to set the file position in the raw data based on the offset.
start (default)—Sets the file position offset samples from the beginning of the raw data in the
0 .tdms file. If the value of from is 0, the value of offset must be equal to or greater than 0,
which sets the file position at the beginning of the raw data.
1 end—Sets the file position offset samples from the end of the raw data in the .tdms file. If the
value of from is 1, the value of offset must be equal to or less than 0, which sets the file
position at the end of the raw data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1598 ni.com
Functions
Note
When a .tdms file is in use by this function, no other processes can access this
file.
Inputs/Outputs
• append? (T) —
append? specifies whether to append the new size that this function reserves to an existing file.
If the value is FALSE, this function changes the file size of tdms file to the reserved size. If the
value is TRUE, this function extends the file size of tdms file with the reserved size. The default is
TRUE.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
• reserve size —
You can calculate the actual size, in bytes, that this function reserves by multiplying the value of
reserve size by the number of bytes of data type. For example, if the value of reserve size is 512
and data type is an unsigned 16-bit integer, then you can calculate the actual size that this
function reserves as follows: 512×(16÷8) = 1024 bytes.
For large files of several terabytes, the operating system may take a significant amount of time to
pre-allocate disk space. Insert a delay in your application after the TDMS Reserve File Size
function to ensure the file size is fully reserved. For multiple files on separate RAID volumes, if
you reserve the file size in a loop, insert a single delay after the loop to avoid serializing the
delays. NI recommends a time delay of 500 ms/TB.
Note If the disable buffering? input of the TDMS Advanced Open function is TRUE,
the actual reserved size in bytes must be a multiple of the sector size of the hard disk.
Use the TDMS Advanced Open function to obtain the sector size of the hard disk.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data type —
data type specifies the type of data on which you want to perform the operation. This input
accepts integers, floating-point numbers, Booleans, and timestamps.
Note You can wire the following floating-point numbers to this input:
• Single-precision and double-precision floating-point numbers
• Complex single-precision and double-precision floating-point numbers
• Extended-precision floating-point numbers
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1600 ni.com
Functions
Inputs/Outputs
• file path —
file path specifies the path to the .tdms file you want to convert.
• target version —
target version specifies the file format version to which you want to convert the .tdms file.
0 1.0
1 2.0
new property name specifies a new name for the name property of a group or channel in the
.tdms file. For example, if a group has a name property with a value TDMSDataGroup, and if
you wire a value group name to this input and run this VI, the original name property of this
group changes to group name, which has a value TDMSDataGroup. This VI creates a new
name property for this group, and uses the group name that you specified when creating this
.tdms file as the property value. This input is valid only when target version is 2.0.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
file path out returns the path of the .tdms file on which you performed the operation.
• error out —
error out contains error information. This output provides standard error out functionality.
When converting a .tdms file from file format version 1.0 to 2.0, this VI makes the
following changes to the properties of the .tdms file.
• If the .tdms file does not have a name property, this VI adds a name property for
this file and uses the filename as the value of the name property.
• If the groups or channels of the .tdms file have name properties, this VI keeps the
property values in the version 2.0 file. However, this VI changes the object paths of
these groups and channels. For example, if you use the TDMS Write function to
write .tdms data to a version 1.0 file without wiring a value to the group name in
input, the TDMS Write function automatically names the group as Untitled.
Even if you later use the TDMS Set Properties function to create a name property
for this group and assign a different value than Untitled, you still need to access
this group from Untitled. You cannot access this group from the new name
property value. However, if you use the TDMS Convert Format VI to convert this
.tdms file to version 2.0, you no longer can access this group from Untitled.
You must access this group from the name property value that you specified
earlier.
Tip To access groups or channels from the original names that you
specified for version 1.0, wire a value to the new property name input to
change the name property to a new property name.
• If the name property of the groups or channels has duplicate values, this VI
appends a numeric suffix to the duplicate values. For example, if a .tdms file has a
group of three channels with the same channel name TDMSDataChannel, this VI
changes the values of the name property in the second and third groups to
TDMSDataChannel 1 and TDMSDataChannel 2, respectively. This VI does
not change the property value of the first channel and keeps the value as
TDMSDataChannel.
1602 ni.com
Functions
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
• data —
data specifies the data to write to the .tdms file. This input accepts a 1D or 2D array of integers,
floating-point numbers, Booleans, and timestamps. If the disable buffering? input of the TDMS
Advanced Open function is TRUE, the size of data must be a multiple of the sector size and the
array size must be less than 67,076,096 bytes on x86 systems, 67,051,520 bytes on IA-64 systems,
or 33,525,760 bytes on x64 systems.
Refer to the Microsoft Developer Network Web site at msdn.microsoft.com for more
information about calculating the maximum array size.
Note
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1604 ni.com
Functions
input.
Inputs/Outputs
• count (-1) —
count specifies the maximum number of data elements you want to read. The default is -1,
which specifies that this function reads all data elements. If the disable buffering? input of the
TDMS Advanced Open function is TRUE, the value of (count * the length of data type) must be a
multiple of the sector size.
You can calculate the size, in bytes, that this function reads by multiplying the value of count by
the number of bytes of data type. For example, if the value of count is 512 and data type is an
unsigned 16-bit integer, then you can calculate the size that this function reads as follows:
512×(16÷8) = 1024 bytes.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data type —
data type specifies the type of data on which you want to perform the operation. This input
accepts integers, floating-point numbers, Booleans, and timestamps.
Note You can wire the following floating-point numbers to this input:
• Single-precision and double-precision floating-point numbers
• Complex single-precision and double-precision floating-point numbers
• (Windows) Extended-precision floating-point numbers
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• data —
data returns the data this function reads from the .tdms file in the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
read process finished? indicates whether the reading process finished or not.
Tip Use this Boolean value as one of the stop conditions for a While Loop. For
example, you can put the TDMS Advanced Synchronous Read function in the While
Loop to read data infinitely until the value of read process finished? becomes TRUE.
This value becomes TRUE when the TDMS Advanced Synchronous Read function
reaches the end of a .tdms file.
Examples
Note To use the TDMS Advanced Asynchronous I/O functions, you must set
the enable asynchronous? input of the TDMS Advanced Open function to
TRUE.
1606 ni.com
Functions
Palette
Description
Object
TDMS
Allocates buffers and configures the timeout value for asynchronous writes. The
Configure
timeout value applies to all subsequent asynchronous writes. You must use this
Asynchronous
function to configure the asynchronous writes before using the TDMS Advanced
Writes
Asynchronous Write function.
Function
TDMS
Writes data to the specified .tdms file asynchronously. This function can initiate
Advanced
multiple asynchronous writes that take place in the background. You can use the
Asynchronous
TDMS Get Asynchronous Write Status function to query the number of pending
Write
asynchronous writes.
Function
TDMS Get
Asynchronous Retrieves the number of pending asynchronous writes issued by the TDMS
Write Status Advanced Asynchronous Write function.
Function
Generates random data that you can use to test the performance of the Advanced
TDMS
TDMS VIs and functions. Use this VI in benchmarking tests to simulate the
Generate
production of data from a data acquisition device. Wire data to the data type input
Random Data
to determine the polymorphic instance to use or manually select the instance.
TDMS
Allocates buffers and configures the timeout value for asynchronous reads. The
Configure
timeout value applies to all subsequent asynchronous reads. You must use this
Asynchronous
function to configure the asynchronous reads before using the TDMS Advanced
Reads
Asynchronous Read function.
Function
TDMS Start Starts an asynchronous read process. You cannot configure or start an
Asynchronous asynchronous read process unless the previous process has completed or stopped.
Reads You can stop an asynchronous read process by using the TDMS Stop Asynchronous
Function Reads function.
TDMS Stop Stops issuing new asynchronous reads. This function does not discard completed
Asynchronous asynchronous reads or cancel pending asynchronous reads. After you use this
Reads function to stop asynchronous reads, you still can use the TDMS Advanced
Function Asynchronous Read function to read the completed asynchronous reads.
Palette
Description
Object
TDMS Get
Asynchronous Retrieves the number of buffers that contain data available for the TDMS Advanced
Read Status Asynchronous Read function to read.
Function
TDMS
Reads the specified .tdms file and returns data in a format specified by the data
Advanced
type input. This function returns data that was previously read into the buffers
Asynchronous
configured in the TDMS Configure Asynchronous Reads function. This function can
Read
execute multiple asynchronous reads simultaneously in the background.
Function
Inputs/Outputs
• max write size —
max write size specifies the maximum size, in samples, to allocate for each asynchronous write.
This input is valid only if pre-allocate? is TRUE.
You can calculate the actual maximum size, in bytes, that this function pre-allocates by
multiplying the value of max write size by the number of bytes of data type. For example, if the
value of max write size is 512 and data type is an unsigned 16-bit integer, then you can calculate
1608 ni.com
Functions
the actual maximum size that this function pre-allocates as follows: 512×(16÷8) = 1024 bytes.
Note If the disable buffering? input of the TDMS Advanced Open function is TRUE,
the actual maximum size in bytes must be a multiple of the sector size of the hard
disk. Use the TDMS Advanced Open function to obtain the sector size of the hard disk.
• pre-allocate? (F) —
pre-allocate? specifies whether to pre-allocate buffers to return to LabVIEW in exchange for the
data buffers you pass to the TDMS Advanced Asynchronous Write function. The default is FALSE.
Set the value to TRUE to avoid run-time buffer allocations. If pre-allocate? is TRUE, you must
wire a supported data type to this function.
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
max asynchronous writes specifies the maximum number of asynchronous writes that can run
simultaneously in the background. After the number of pending asynchronous writes reaches
the maximum value, the TDMS Advanced Asynchronous Write function waits for a pending
asynchronous write to complete before issuing another asynchronous write. The value must be
greater than zero. The default is 4.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data type —
data type specifies the data type of the pre-allocated buffers. These pre-allocated buffers are
returned to LabVIEW in exchange for the data buffers you pass to the TDMS Advanced
Asynchronous Write function. This input accepts integers, floating-point numbers, Booleans,
and timestamps. You must wire a supported data type to this input if pre-allocate? is TRUE.
LabVIEW ignores this input if pre-allocate? is FALSE.
• timeout (5 s) —
timeout specifies the timeout value, in seconds, for the TDMS Advanced Asynchronous Write
function. When the number of pending asynchronous writes reaches the maximum value, the
TDMS Advanced Asynchronous Write function waits as long as the timeout value for a pending
asynchronous write to complete before issuing another asynchronous write. If you do not wire
data to this input, this function sets the value to 5.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1610 ni.com
Functions
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
• data —
data specifies the data to write to the .tdms file. This input accepts a 1D or 2D array of integers,
floating-point numbers, Booleans, and timestamps. If the disable buffering? input of the TDMS
Advanced Open function is TRUE, the size of data must be a multiple of the sector size and the
array size must be less than 67,076,096 bytes on x86 systems, 67,051,520 bytes on IA-64 systems,
or 33,525,760 bytes on x64 systems.
Refer to the Microsoft Developer Network Web site at msdn.microsoft.com for more
information about calculating the maximum array size.
Note You can wire the following floating-point numbers to this input:
• Single-precision and double-precision floating-point numbers
• Complex single-precision and double-precision floating-point numbers
• Extended-precision floating-point numbers
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Tip Use this function when you monitor an application that issues a series of
asynchronous writes over a long period of time. By querying the number of
pending writes and keeping track of the highest value this function returns,
you can choose an appropriate value for the max asynchronous writes input
of the TDMS Configure Asynchronous Writes function.
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
1612 ni.com
Functions
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
number of pending writes returns the number of pending asynchronous writes issued by the
TDMS Advanced Asynchronous Write function.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Inputs/Outputs
• data type —
data type specifies the data type of the random data you want to generate.
• number of samples —
number of samples specifies the number of data samples you want to generate.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data —
data returns the random data with the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
1614 ni.com
Functions
Inputs/Outputs
• data type —
data type specifies the data type of the random data you want to generate.
• number of samples —
number of samples specifies the number of data samples you want to generate.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data —
data returns the random data with the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• data type —
data type specifies the data type of the random data you want to generate.
• number of samples —
number of samples specifies the number of data samples you want to generate.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data —
data returns the random data with the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
1616 ni.com
Functions
Inputs/Outputs
• data type —
data type specifies the data type of the random data you want to generate.
• number of samples —
number of samples specifies the number of data samples you want to generate.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data —
data returns the random data with the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• data type —
data type specifies the data type of the random data you want to generate.
• number of samples —
number of samples specifies the number of data samples you want to generate.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data —
data returns the random data with the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• data type —
data type specifies the data type of the random data you want to generate.
• number of samples —
number of samples specifies the number of data samples you want to generate.
error in describes error conditions that occur before this node runs. This input provides
1618 ni.com
Functions
• data —
data returns the random data with the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• data type —
data type specifies the data type of the random data you want to generate.
• number of samples —
number of samples specifies the number of data samples you want to generate.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data —
data returns the random data with the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• data type —
data type specifies the data type of the random data you want to generate.
• number of samples —
number of samples specifies the number of data samples you want to generate.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data —
data returns the random data with the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
1620 ni.com
Functions
Inputs/Outputs
• data type —
data type specifies the data type of the random data you want to generate.
• number of samples —
number of samples specifies the number of data samples you want to generate.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data —
data returns the random data with the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• data type —
data type specifies the data type of the random data you want to generate.
• number of samples —
number of samples specifies the number of data samples you want to generate.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data —
data returns the random data with the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
1622 ni.com
Functions
Inputs/Outputs
• data type —
data type specifies the data type of the random data you want to generate.
• number of samples —
number of samples specifies the number of data samples you want to generate.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data —
data returns the random data with the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• data type —
data type specifies the data type of the random data you want to generate.
• number of samples —
number of samples specifies the number of data samples you want to generate.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data —
data returns the random data with the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
Note Before using this function, ensure that no asynchronous reads are
pending.
Inputs/Outputs
• tdms file —
1624 ni.com
Functions
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
number of buffers specifies the number of buffers to allocate for asynchronous reads. The value
must be greater than zero. The default is 4.
• buffer size —
buffer size specifies the buffer size in samples of data. If the disable buffering? input of the
TDMS Advanced Open function is TRUE, the value of (buffer size * the length of data type) must
be a multiple of the sector size.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data type —
data type specifies the type of data on which you want to perform the operation. This input
accepts integers, floating-point numbers, Booleans, and timestamps.
Note You can wire the following floating-point numbers to this input:
• Single-precision and double-precision floating-point numbers
• Complex single-precision and double-precision floating-point numbers
• Extended-precision floating-point numbers
• timeout (5 s) —
timeout specifies the timeout value, in seconds, for the asynchronous read. If you do not wire
data to this input, this function sets the value to 5.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
total count specifies the total number of values of the data type you want to read from a .tdms
file. The default is –1, which specifies that LabVIEW keeps initiating asynchronous reads until this
function reaches the end of the .tdms file or you stop initiating asynchronous reads by using
the TDMS Stop Asynchronous Reads function.
error in describes error conditions that occur before this node runs. This input provides
1626 ni.com
Functions
• data type —
data type specifies the type of data on which you want to perform the operation. This input
accepts integers, floating-point numbers, Booleans, and timestamps.
Note You can wire the following floating-point numbers to this input:
• Single-precision and double-precision floating-point numbers
• Complex single-precision and double-precision floating-point numbers
• Extended-precision floating-point numbers
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1628 ni.com
Functions
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
number of buffers available returns the number of buffers that contain data for the TDMS
Advanced Asynchronous Read function to read.
all buffers full? indicates whether all the buffers are full of data for the TDMS Advanced
Asynchronous Read function to read.
This output also can be TRUE even when the number of buffers available output of this function
is not equal to the number of buffers input of the TDMS Configure Asynchronous Reads function
under the following conditions:
• The TDMS Advanced Asynchronous Read function reaches the end of a .tdms file.
• The TDMS Advanced Asynchronous Read function finishes reading the total count of data
that you specify in the TDMS Start Asynchronous Reads function.
Tip Use this Boolean value as one of the stop conditions for a While Loop. For
example, you can put the TDMS Get Asynchronous Read Status function in the While
Loop and wire the all buffers full? output to the Stop if True conditional terminal of
the While Loop. You then can start asynchronous reads by using the TDMS Start
Asynchronous Reads function and wait for the all buffers full? value to become TRUE.
When this value becomes TRUE, you can use the TDMS Advanced Asynchronous Read
function to read the data from the buffers.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1630 ni.com
Functions
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data type —
data type specifies the type of data on which you want to perform the operation. This input
accepts integers, floating-point numbers, Booleans, and timestamps.
Note You can wire the following floating-point numbers to this input:
• Single-precision and double-precision floating-point numbers
• Complex single-precision and double-precision floating-point numbers
• Extended-precision floating-point numbers
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• data —
data returns the data this function reads from the .tdms file in the specified data type.
• error out —
error out contains error information. This output provides standard error out functionality.
read process finished? indicates whether the reading process is finished or not.
Tip
Use this Boolean value as one of the stop conditions for a While Loop. For example,
you can place the TDMS Advanced Asynchronous Read function in the While Loop to
read data indefinitely until the value of read process finished? returns TRUE. This
value returns TRUE when one of the following conditions occurs:
• The TDMS Advanced Asynchronous Read function reaches the end of a .tdms
file.
• The TDMS Advanced Asynchronous Read function finishes reading total count
of data that you specify for the TDMS Start Asynchronous Reads function.
Examples
1632 ni.com
Functions
Note To use the TDMS Advanced Data Reference I/O functions, you must set
the enable asynchronous? input of the TDMS Advanced Open function to
TRUE.
Palette
Description
Object
TDMS
Configures the maximum number of asynchronous writes and the timeout value.
Configure
The timeout value applies to all subsequent asynchronous writes. You must use
Asynchronous
this function to configure the asynchronous writes before using the TDMS Advanced
Writes (Data
Asynchronous Write (Data Ref) function.
Ref) Function
TDMS
Writes data referenced by the data reference input to the specified .tdms file
Advanced
asynchronously. The data reference input typically refers to a portion of data
Asynchronous
owned by a component external to LabVIEW, such as a region of a DMA buffer that
Write (Data
contains data you want to write to the .tdms file.
Ref) Function
TDMS Get
Asynchronous
Returns the number of pending asynchronous writes issued by the TDMS Advanced
Write Status
Asynchronous Write (Data Ref) function.
(Data Ref)
Function
TDMS Configures the maximum number of asynchronous reads, total amount of data to
Configure read, and the timeout value for the asynchronous reads. The timeout value applies
Asynchronous to all subsequent asynchronous reads. You must use this function to configure the
Reads (Data asynchronous reads before using the TDMS Advanced Asynchronous Read (Data
Ref) Function Ref) function.
TDMS
Reads data from the specified .tdms file asynchronously and stores the data in the
Advanced
memory of a component external to LabVIEW. Use the data reference input of this
Asynchronous
function to specify the location of the external memory, such as a region of a DMA
Read (Data
buffer owned by a device driver.
Ref) Function
TDMS Get
Returns the number of pending asynchronous reads issued by the TDMS Advanced
Asynchronous
Asynchronous Read (Data Ref) function.
Read Status
Palette
Description
Object
(Data Ref)
Function
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
max asynchronous writes specifies the maximum number of asynchronous writes that can run
simultaneously in the background. After the number of pending asynchronous writes reaches
the maximum value, the TDMS Advanced Asynchronous Write (Data Ref) function waits for a
pending asynchronous write to complete before issuing another asynchronous write. The value
must be greater than zero. The default is 4.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (5 s) —
1634 ni.com
Functions
timeout specifies the timeout value, in seconds, for the TDMS Advanced Asynchronous Write
(Data Ref) function. When the number of pending asynchronous writes reaches the maximum
value, the TDMS Advanced Asynchronous Write (Data Ref) function waits as long as the timeout
value for a pending asynchronous write to complete before issuing another asynchronous write.
If you do not wire data to this input, this function sets the value to 5.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
• data reference —
data reference specifies the external data value reference that points to the external data you
want to write to the .tdms file. This input accepts an external data value reference containing a
1D or 2D array of integers, floating-point numbers, Booleans, or timestamps. If the disable
buffering? input of the TDMS Advanced Open function is TRUE, the size of data that you wire to
the data reference input must be a multiple of the sector size.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
auto delete reference? specifies whether you want LabVIEW to delete the data reference
automatically after the asynchronous operation completes. Deleting the data reference notifies
the owner of the external memory that LabVIEW no longer needs access to the external memory.
The default is TRUE. Set this value to FALSE when you want to continue using the reference after
the asynchronous operation completes. For example, you might want to modify the data in
LabVIEW before deleting the reference. If you set the value to FALSE, you must use the Delete
Data Value Reference function to delete the data reference.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
This function can issue additional asynchronous writes while executing previously-
issued asynchronous writes in the background. When the number of asynchronous
writes in the background reaches the maximum value, this function waits until a
previously-issued asynchronous write completes before issuing an additional
asynchronous write. If the previously-issued asynchronous write does not complete
within the timeout value, this function returns error code –2546. Use the TDMS
Configure Asynchronous Writes (Data Ref) function to configure the maximum number
of asynchronous writes and the timeout value.
Use the TDMS Get Asynchronous Write Status (Data Ref) function to query the number
of pending asynchronous writes.
1636 ni.com
Functions
Tip Use this function when you monitor an application that issues a series of
asynchronous writes over a long period of time. By querying the number of
pending writes and keeping track of the highest value this function returns,
you can choose an appropriate value for the max asynchronous writes input
of the TDMS Configure Asynchronous Writes (Data Ref) function.
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
number of pending writes returns the number of asynchronous writes that have not completed.
You can use this information to monitor a write-to-disk operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Note Before using this function, ensure that no asynchronous reads are
pending.
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
max asynchronous reads specifies the maximum number of asynchronous reads that can run
simultaneously in the background. After the number of pending asynchronous reads reaches the
maximum value, the TDMS Advanced Asynchronous Read (Data Ref) function waits for a pending
asynchronous read to complete before issuing another asynchronous read. The value must be
greater than zero. The default is 4.
1638 ni.com
Functions
total size specifies the total size, in bytes, of the data to read from the .tdms file. The default is
–1, which specifies that the TDMS Advanced Asynchronous Read (Data Ref) function keeps
issuing asynchronous reads until this function reaches the end of the .tdms file. Use this input
in conjunction with the read process finished? output of the TDMS Advanced Asynchronous
Read (Data Ref) function to control an asynchronous reading process.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (5 s) —
timeout specifies the timeout value, in seconds, for the TDMS Advanced Asynchronous Read
(Data Ref) function. When the number of pending asynchronous reads reaches the maximum
value, the TDMS Advanced Asynchronous Read (Data Ref) function waits as long as the timeout
value for a pending asynchronous read to complete before issuing another asynchronous read. If
you do not wire data to this input, this function sets the value to 5.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
• data reference —
data reference specifies the external data value reference that points to the region of an external
buffer in which you want LabVIEW to store the data this function reads from the .tdms file. This
input accepts an external data value reference containing a 1D or 2D array of integers, floating-
point numbers, Booleans, or timestamps. If the disable buffering? input of the TDMS Advanced
Open function is TRUE, the size of data that you wire to the data reference input must be a
multiple of the sector size.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
auto delete reference? specifies whether you want LabVIEW to delete the data reference
automatically after the asynchronous operation completes. Deleting the data reference notifies
the owner of the external memory that LabVIEW no longer needs access to the external memory.
The default is TRUE. Set this value to FALSE when you want to continue using the reference after
the asynchronous operation completes. For example, you might want to modify the data in
LabVIEW before deleting the reference. If you set the value to FALSE, you must use the Delete
Data Value Reference function to delete the data reference.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
1640 ni.com
Functions
read process finished? indicates whether the reading process is finished or not.
Tip Use this Boolean value as one of the stop conditions for a While Loop. For
example, you can place the TDMS Advanced Asynchronous Read (Data Ref) function
in the While Loop to read data indefinitely until the value of read process finished?
returns TRUE. This value returns TRUE when one of the following conditions occurs:
• The TDMS Advanced Asynchronous Read (Data Ref) function reaches the end
of a .tdms file.
• The TDMS Advanced Asynchronous Read (Data Ref) function finishes reading
the total size of data that you specify for the TDMS Configure Asynchronous
Reads (Data Ref) function.
This function can issue additional asynchronous reads while executing previously-
issued asynchronous reads in the background. When the number of asynchronous
reads in the background reaches the maximum value, this function waits until a
previously-issued asynchronous read completes before issuing an additional
asynchronous read. If the previously-issued asynchronous read does not complete
within the timeout value, this function returns error code –2546. Use the TDMS
Configure Asynchronous Reads (Data Ref) function to configure the maximum number
of asynchronous reads and the timeout value.
Use the TDMS Get Asynchronous Read Status (Data Ref) function to query the number
of pending asynchronous reads.
Tip Use this function when you monitor an application that issues a series of
asynchronous reads over a long period of time. By querying the number of
pending reads and keeping track of the highest value this function returns,
you can choose an appropriate value for the max asynchronous reads input
of the TDMS Configure Asynchronous Reads (Data Ref) function.
Inputs/Outputs
• tdms file —
tdms file specifies a reference number to the .tdms file on which to perform the operation. Use
the TDMS Advanced Open function to open the refnum.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
number of pending reads returns the number of asynchronous reads that have not completed.
You can use this information to monitor a read-from-disk operation.
• error out —
error out contains error information. This output provides standard error out functionality.
TDMS In Memory
Use the TDMS In Memory functions to open, close, read from, and write to .tdms files in
memory.
1642 ni.com
Functions
Use the TDMS In Memory Close function to close the reference to this file.
Inputs/Outputs
• byte array or file path —
byte array or file path specifies the byte array or file path from which to create a .tdms file in
memory. The byte order of the byte array or file on disk, if specified, determines the byte order
of the .tdms file in memory this function creates.
If you do not specify byte array or file path, this function creates an empty .tdms file in
memory that uses the byte order of the host computer.
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Inputs/Outputs
• byte count (-1: all) —
byte count specifies the maximum number of bytes to read from the .tdms file in memory. The
default is -1, which means this function reads all available bytes.
If the value of byte count is out of range, this function automatically sets byte count to equal the
number of bytes in the file minus offset.
• offset (0) —
1644 ni.com
Functions
offset specifies the number of bytes into the .tdms file at which the function begins reading the
.tdms file. The default is 0.
• tdms file —
tdms file specifies a reference number to the .tdms file in memory on which to perform the
operation. Use the TDMS In Memory Open function to open the refnum.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
tdms file out returns a TDMS file reference to the .tdms file on which you performed the
operation.
• data —
data returns the data read from the .tdms file in memory as an unsigned 8-bit integer array
data type.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Inputs/Outputs
• overwrite (F) —
overwrite specifies whether to overwrite the file you specify in file path with the .tdms file in
memory. The default is FALSE, which means that this VI does not overwrite the file.
• file path —
file path specifies the absolute path to the file on disk that you want to write the .tdms file in
memory.
• tdms file —
tdms file specifies a reference number to the .tdms file in memory on which to perform the
operation. Use the TDMS In Memory Open function to open the refnum.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1646 ni.com
Functions
Storage/DataPlugin
Use the Storage/DataPlugin VIs to read measurement data from a variety of file
formats, write data to .tdm or .tdms files, or manage DataPlugins installed on the local
computer. You must download appropriate DataPlugins and register them on the local
computer before you can access the corresponding file formats. Refer to the National
Instruments website at ni.com/dataplugins to download DataPlugins.
Palette
Description
Object
Opens an NI TDM (.tdm) file for reading or writing. You also can use this VI to create a
Open Data
new file or replace an existing file. Use the Close Data Storage VI to close the reference
Storage
to the file.
Adds a channel group or channel to a file you specify. You also can use this VI to
Write Data
define properties for the channel group or channel that you want to add.
Returns an array of refnums that represent channel groups or channels in the file. If
Read Data you select Channel as the Object type to read in the configuration dialog box, this VI
reads waveforms associated with the channel. You also can use this VI to return
Palette
Description
Object
channel groups or channels that meet query conditions you specify.
Closes a data file. You must use this Express VI to close a data file after you finish
Close Data
reading from or writing to the file. Memory leakage might occur if you do not close the
Storage
data file.
Defines the properties of an existing file, channel group, or channel. If you configure
this VI before you wire a refnum to storage refnum, the configuration might change
Set
depending on the refnum you wire. For example, if you configure this VI for a channel
Properties
and then wire a channel group refnum, the VI returns broken wires on the block
diagram because the same properties are not available for a channel group.
Reads property values from a file, channel group, or channel. If you configure this VI
before you wire a refnum to storage refnum, the configuration might change
Get
depending on the refnum you wire. For example, if you configure this VI for a channel
Properties
and then wire a channel group refnum, the VI returns broken wires on the block
diagram because the same properties are not available for a channel group.
Removes a channel group or channel you specify. If you choose to delete a channel
group, this VI deletes all channels associated with that channel group. Wire data to
Delete Data
the storage refnum input to determine the polymorphic instance to use or manually
select the instance.
Data File Opens the data file specified in the file path input and presents the data in the Data
Viewer File Viewer dialog box.
Convert to
TDM or Converts the specified file to the .tdm or .tdms file format.
TDMS
Manage Use the Manage DataPlugins VIs to list, export, register, or unregister DataPlugins
DataPlugins installed on the local computer.
Advanced Use the Advanced Storage VIs to read, write, and query data when object types or
Storage property names are determined at run time.
1648 ni.com
Functions
Opens an NI TDM (.tdm) file for reading or writing. You also can use this VI to create a
new file or replace an existing file. Use the Close Data Storage VI to close the reference
to the file.
Note You must download appropriate DataPlugins and register them on the
local computer before you can access the corresponding data files. Refer to
the National Instruments website at ni.com/dataplugins to download
DataPlugins.
Option Description
Specifies the format of the file you want to access. If you wire a value to the
DataPlugin name block diagram input of this Express VI, LabVIEW ignores the
DataPlugin option. If you wire an empty string to the DataPlugin name block
diagram input, LabVIEW automatically detects the storage format of the data file.
Option Description
Note Only TDM and TDMS files support all the options listed above. If the
DataPlugin you specify in the DataPlugin list is not a .tdms or .tdm file,
LabVIEW uses the open (read only) option by default to open the data file.
To write to the data file, you can wire a create or create or replace control
to the function (open:0) block diagram input.
Install/ Launches the Install/Update DataPlugins dialog box which allows you to search,
Update install, and update DataPlugins from the National Instruments website at ni.com/
DataPlugins dataplugins.
1650 ni.com
Functions
Inputs/Outputs
• file path —
• function (open:0) —
• DataPlugin name —
Specifies the name of the DataPlugin, which determines the storage format of the data file. To
open an external data file, you first must install the correct National Instruments DataPlugins.
Refer to the National Instruments website at ni.com/dataplugins to download DataPlugins. If
you do not wire data to this input, LabVIEW uses the value that you specify in the DataPlugin
dialog box option. If you wire data to this input, LabVIEW ignores the value of the DataPlugin
option. If you wire an empty string to this input, LabVIEW automatically detects the storage
format of the data file.
• additional parameters —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
Returns DataPlugin name unchanged. If you do not wire data to the DataPlugin name input,
DataPlugin name out returns the value that you specify in the DataPlugin dialog box option. If
you wire an empty string to the DataPlugin name input, DataPlugin name out returns the
storage format that LabVIEW automatically detects.
• error out —
error out contains error information. This output provides standard error out functionality.
Write Data
Adds a channel group or channel to a file you specify. You also can use this VI to define
properties for the channel group or channel that you want to add.
You also can use the Write To Measurement File Express VI to write data to a .tdm,
.tdms, or .lvm file.
Option Description
Contains the following options:
• Object type—
When a channel name is repeated, LabVIEW appends an integer to the end of the
names to enforce unique channel names. For example, if you provide the channel
names sine, sine, square, square, and sine, LabVIEW updates these names
to sine, sine 1, square, square 1, and sine 2, respectively.
1652 ni.com
Functions
Option Description
• TDM Properties—Use the TDM Properties tab to edit predefined properties and
create user-defined properties for .tdm and .tdms files. Click the Insert button
to add a new property to configure. Click the Delete button to remove the selected
property. For predefined properties, you can edit only the Source and Value
columns.
◦ Source—Use the Source column to specify the input source of the property
information. The Source column contains the following options:
▪ Terminal—Select this option if you want to specify the property
information on the block diagram.
▪ Ignore—Select this option if you do not want to write any of the property
information on the specified row to the file.
▪ Value—Select this option if you want to specify the property information
on the TDM Properties tab.
◦ Name—Use the Name column to specify the property name. The property
name cannot contain any spaces or special characters. LabVIEW automatically
replaces spaces and special characters with an underscore. This column
contains the following predefined property names:
▪ Name—Specifies the name of the object you select in Object type.
▪ Description—Specifies the description of the object you select in Object
type.
▪ Channel group—Specifies the channel group object for the data channel.
This property appears only if you select Channel in Object type.
▪ Unit—Specifies the unit of the channel values. This property appears only
if you select Channel in Object type.
▪ Waveform length—Specifies the number of samples in the waveform.
This property appears only if you select Channel in Object type
▪ Waveform x dimension—Specifies the name of the x dimension of the
waveform. This property appears only if you select Channel in Object
type.
▪ Waveform x unit—Specifies the unit of the x dimension of the waveform.
This property appears only if you select Channel in Object type.
▪ Waveform timestamp—Specifies the time stamp of the first sample in the
waveform. This property appears only if you select Channel in Object
type.
▪ Waveform offset—Specifies the starting point in the waveform. This
property appears only if you select Channel in Object type.
▪ Waveform increment—Specifies the time interval between every two
adjacent samples in the waveform. This property appears only if you
select Channel in Object type.
Option Description
Options in this section are available only if you select Channel as the Object type.
Contains the following options:
Displays terminals for Signal, append/replace (append data values), and index on
Measured
the block diagram.
data
channel • Append/replace data values—Contains the following options:
◦ Append—Appends new values to the end of existing values.
◦ Replace at index—Replaces all existing values with new values.
◦ Replace all—Replaces values at the index you wire to index on the block
diagram.
Inputs/Outputs
• storage refnum (file) —
Specifies the reference number for the .tdm and .tdms file you want to access. You must wire a
1654 ni.com
Functions
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• index —
Specifies whether you want to append new values to the end of existing values, replace all
existing values with new values, or replace values at the index you wire to the index input. This
input appears only if you place a checkmark in the Show terminals for data channel check box
in the configuration dialog box.
• Signal —
Specifies the signal to add to the an existing channel. This input appears only if you specify
Channel as the Object type in the configuration dialog box.
Note The Storage/DataPlugin VIs do not support strings that contain binary data.
You must first convert the string to an unsigned byte array using the String to Byte
Array function. If you do not convert the string, the Write Data Express VI writes only
the portion of the string before the first NULL character.
Returns a reference number for the .tdm and .tdms file this Express VI accesses. You can wire
this refnum to another VI to complete another operation on the same file.
• error out —
error out contains error information. This output provides standard error out functionality.
Returns an array of refnums that represent the channel groups or channels in the file. If you
select a property from the configuration dialog box and wire a value to compare to the
Comparison input, this refnum returns the channel groups or channels that meet the query
condition. If you do not specify a value to compare, this refnum returns all channel groups or
channels.
Examples
Read Data
Returns an array of refnums that represent channel groups or channels in the file. If
you select Channel as the Object type to read in the configuration dialog box, this VI
reads waveforms associated with the channel. You also can use this VI to return
channel groups or channels that meet query conditions you specify.
Use the Set Properties Express VI to define properties and the Get Properties Express VI
to return properties for the channel groups or channels this Express VI returns.
You also can use the Read From Measurement File Express VI to read data from a .tdm,
.tdms, or .lvm file.
Option Description
Contains the following options:
Read
Settings • Object type to read—
1656 ni.com
Functions
Option Description
• Property to compare—
Specifies the property to compare when performing the query. If you select a
property from this list, a corresponding input and the Comparison input appear on
the block diagram. This Express VI compares the value you wire to the property to
the channels or channel groups the storage refnum identifies and returns channels
or channel groups that meet the comparison condition.
Specifies whether to query all channels in the file or only channels in the channel
group. In order to place a checkmark in this checkbox, the incoming refnum must
be a channel group.
Option Description
available only if you select Channel as the Object type to read and you place a
checkmark in the Show terminals checkbox. Contains the following options:
◦ Dynamic data type—Returns the output signals formatted as dynamic data.
◦ Array of waveforms—Returns the output signals formatted as a 1D array of
waveforms.
◦ Array of strings—Returns the output signals formatted as a 2D array of strings.
◦ Array of doubles—Returns the output signals formatted as a 2D array of
double-precision, floating-point numbers.
◦ Array of singles—Returns the output signals formatted as a 2D array of single-
precision, floating-point numbers.
◦ Array of I32—Returns the output signals formatted as a 2D array of 32-bit
signed integers.
◦ Array of I16—Returns the output signals formatted as a 2D array of 16-bit
signed integers.
◦ Array of U8—Returns the output signals formatted as a 2D array of 8-bit
unsigned integers.
◦ Array of time stamps—Returns the output signals formatted as a 2D array of
time stamp values.
Inputs/Outputs
• storage refnum (file) —
Specifies the reference number for the data object you want to access. After you wire a file
refnum to this input, the label changes from storage refnum to storage refnum (file). After you
wire a channel group refnum to this input, the label changes from storage refnum to storage
refnum (channel group). After you wire a channel refnum to this input, the label changes from
storage refnum to storage refnum (channel).
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• index —
Specifies where this Express VI starts reading values from a channel. This input appears only if
you select Channel as the Object type and if you place a checkmark in the Show terminals for
data channel check box in the configuration dialog box.
1658 ni.com
Functions
• count —
Specifies the number of values for this Express VI to read from a channel. This input appears only
if you select Channel as the Object type and if you place a checkmark in the Show terminals for
data channel check box in the configuration dialog box.
Returns a reference number for the data object this Express VI accesses. You can wire this refnum
to another VI to complete another operation on the same object.
• error out —
error out contains error information. This output provides standard error out functionality.
Returns an array of refnums that represent the channel groups or channels in the file. If you
select a property from the configuration dialog box and wire a value to compare to the
Comparison input, this refnum returns the channel groups or channels that meet the query
condition. If you do not specify a value to compare, this refnum returns all channel groups or
channels.
• Signal —
Returns a signal formatted according to the data type you specified in the configuration dialog
box. This output appears only if you select Channel as the Object type and if you place a
checkmark in the Show terminals for data channel check box in the configuration dialog box.
Examples
Closes a data file. You must use this Express VI to close a data file after you finish
reading from or writing to the file. Memory leakage might occur if you do not close the
data file.
Set Properties
Defines the properties of an existing file, channel group, or channel. If you configure
this VI before you wire a refnum to storage refnum, the configuration might change
depending on the refnum you wire. For example, if you configure this VI for a channel
and then wire a channel group refnum, the VI returns broken wires on the block
diagram because the same properties are not available for a channel group.
1660 ni.com
Functions
Option Description
Contains the following options:
• Object type—
• TDM Properties—Use the TDM Properties tab to edit predefined properties and
create user-defined properties for .tdm and .tdms files. Click the Insert button
to add a new property to configure. Click the Delete button to remove the selected
property. For predefined properties, you can edit only the Source and Value
columns.
◦ Source—Use the Source column to specify the input source of the property
information. The Source column contains the following options:
▪ Terminal—Select this option if you want to specify the property
information on the block diagram.
▪ Ignore—Select this option if you do not want to write any of the property
information on the specified row to the file.
▪ Value—Select this option if you want to specify the property information
Properties on the TDM Properties tab.
◦ Name—Use the Name column to specify the property name. The property
name cannot contain any spaces or special characters. LabVIEW automatically
replaces spaces and special characters with an underscore. This column
contains the following predefined property names:
▪ Name—Specifies the name of the object you select in Object type.
▪ Description—Specifies the description of the object you select in Object
type.
▪ Title—Specifies the title of the data set in the .tdm or .tdms file. This
property appears only if you select File in Object type.
▪ Author—Specifies the author of the data set in the .tdm or .tdms file.
This property appears only if you select File in Object type.
▪ Time stamp—Specifies the time and date information when you last
saved the data set in the .tdm or .tdms file. This property appears only
Option Description
Measured
Options in this section are available only if you select Channel as the Object type.
data
Contains the following options:
channel
1662 ni.com
Functions
Option Description
Displays terminals for Signal, append/replace (append data values), and index on
the block diagram.
Inputs/Outputs
• storage refnum (channel) —
Specifies the reference number for the data object you want to access. After you wire a file
refnum to this input, the label changes from storage refnum to storage refnum (file). After you
wire a channel group refnum to this input, the label changes from storage refnum to storage
refnum (channel group). After you wire a channel refnum to this input, the label changes from
storage refnum to storage refnum (channel).
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• index —
Specifies whether you want to append new values to the end of existing values, replace all
existing values with new values, or replace values at the index you wire to the index input. This
input appears only if you place a checkmark in the Show terminals for data channel check box
in the configuration dialog box.
• Name —
• Description —
• Unit —
Specifies the unit of the channel values. This property appears only if you select Channel in
Object type.
• Signal —
Specifies the signal to add to the an existing channel. This input appears only if you specify
Channel as the Object type in the configuration dialog box.
Note The Storage/DataPlugin VIs do not support strings that contain binary data.
You must first convert the string to an unsigned byte array using the String to Byte
Array function. If you do not convert the string, the Write Data Express VI writes only
the portion of the string before the first NULL character.
Returns a reference number for the data object this Express VI accesses. You can wire this refnum
to another VI to complete another operation on the same object.
• error out —
error out contains error information. This output provides standard error out functionality.
Get Properties
Reads property values from a file, channel group, or channel. If you configure this VI
before you wire a refnum to storage refnum, the configuration might change
depending on the refnum you wire. For example, if you configure this VI for a channel
and then wire a channel group refnum, the VI returns broken wires on the block
diagram because the same properties are not available for a channel group.
1664 ni.com
Functions
Option Description
Contains the following options:
• Object type—
Specifies the type of data for which you want to get properties.
Settings
◦ File—Reads properties from a file.
◦ Channel group—Reads properties from a channel group.
◦ Channel—Reads properties from a channel.
• TDM Properties—Use the TDM Properties tab to edit predefined properties and
create user-defined properties for .tdm and .tdms files. Click the Insert button
to add a new property to configure. Click the Delete button to remove the selected
property. For predefined properties, you can edit only the Source and Value
columns.
◦ Source—Use the Source column to specify the input source of the property
information. The Source column contains the following options:
▪ Terminal—Select this option if you want to specify the property
information on the block diagram.
Properties
▪ Ignore—Select this option if you do not want to write any of the property
information on the specified row to the file.
◦ Name—Use the Name column to specify the property name. The property
name cannot contain any spaces or special characters. LabVIEW automatically
replaces spaces and special characters with an underscore. This column
contains the following predefined property names:
▪ Name—Specifies the name of the object you select in Object type.
▪ Description—Specifies the description of the object you select in Object
type.
▪ Title—Specifies the title of the data set in the .tdm or .tdms file. This
Option Description
1666 ni.com
Functions
Option Description
Displays terminals for Signal, index, and count on the block diagram.
Specifies the data type of the output. This option is available only if you select
Channel as the Object type and if you place a checkmark in the Show terminals
Measured for data channel check box.
data
channel ◦ Dynamic data type—Returns the output signal formatted as dynamic data.
◦ Waveform—Returns the output signal formatted as a waveform.
◦ Array of strings—Returns the output signal formatted as a 1D array of strings.
◦ Array of doubles—Returns the output signal formatted as a 1D array of
double-precision, floating-point numbers.
◦ Array of singles—Returns the output signal formatted as a 1D array of single-
precision, floating-point numbers.
◦ Array of I32—Returns the output signal formatted as a 1D array of 32-bit
signed integers.
◦ Array of I16—Returns the output signal formatted as a 1D array of 16-bit
Option Description
signed integers.
◦ Array of U8—Returns the output signal formatted as a 1D array of 8-bit
unsigned integers.
◦ Array of time stamps—Returns the output signal as a 1D array of time stamp
values.
Inputs/Outputs
• storage refnum (channel) —
Specifies the reference number for the data object you want to access. After you wire a file
refnum to this input, the label changes from storage refnum to storage refnum (file). After you
wire a channel group refnum to this input, the label changes from storage refnum to storage
refnum (channel group). After you wire a channel refnum to this input, the label changes from
storage refnum to storage refnum (channel).
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• index —
Specifies where this Express VI starts reading values from a channel. This input appears only if
you select Channel as the Object type and if you place a checkmark in the Show terminals for
data channel check box in the configuration dialog box.
• count —
Specifies the number of values for this Express VI to read from a channel. This input appears only
if you select Channel as the Object type and if you place a checkmark in the Show terminals for
data channel check box in the configuration dialog box.
Returns a reference number for the data object this Express VI accesses. You can wire this refnum
to another VI to complete another operation on the same object.
• error out —
1668 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
• Name —
• Unit —
Specifies the unit of the channel values. This property appears only if you select Channel in
Object type.
• Signal —
Returns a signal formatted according to the data type you specified in the configuration dialog
box. This output appears only if you select Channel as the Object type and if you place a
checkmark in the Show terminals for data channel check box in the configuration dialog box.
Examples
Delete Data
Removes a channel group or channel you specify. If you choose to delete a channel
group, this VI deletes all channels associated with that channel group. Wire data to the
storage refnum input to determine the polymorphic instance to use or manually select
the instance.
• Delete Channel VI
Delete Channel VI
Removes a channel group or channel you specify. If you choose to delete a channel
group, this VI deletes all channels associated with that channel group. Wire data to the
storage refnum input to determine the polymorphic instance to use or manually select
the instance.
Inputs/Outputs
• storage refnum (channel) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
1670 ni.com
Functions
Inputs/Outputs
• storage refnum (channel group) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Opens the data file specified in the file path input and presents the data in the Data
File Viewer dialog box.
Inputs/Outputs
• file path —
file path is the absolute path to the file you want to open.
• DataPlugin name —
DataPlugin name specifies the name of the DataPlugin that determines the storage format of
the data file. Use the List DataPlugins VI to obtain the names of all DataPlugins installed on the
local computer. If you do not wire data to this input or if you wire an empty string to this input,
this VI automatically detects the storage format of the data file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
DataPlugin name out returns DataPlugin name unchanged. If you do not wire the DataPlugin
name input or if you wire an empty string to this input, DataPlugin name out returns the
DataPlugin name that this VI detects automatically.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• DataPlugin name —
DataPlugin name specifies the name of the DataPlugin that determines the storage format of
the data file. Use the List DataPlugins VI to obtain the names of all DataPlugins installed on the
1672 ni.com
Functions
local computer. If you do not wire data to this input or if you wire an empty string to this input,
this VI automatically detects the storage format of the data file.
source file path specifies the path to the data file you want to convert.
target file path specifies the path to the new .tdm or .tdms file you want to create.
open
0
—Opens a file to configure.
open or create
1
—Opens an existing file or creates a new file to configure.
create or replace
2
—Creates a new file or replaces an existing file.
create
3
(Default)—Creates a new file.
open (read only)
4
—Opens a read-only version of the file.
target file format specifies the target file format to which you want to convert the data file.
TDM
0
—Converts the data file to a .tdm file.
TDMS
1
(Default)—Converts the data file to a .tdms file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
data chunk size specifies the number of values to read into memory at a time until this VI
finishes reading all values. If you have enough system memory, use a higher number than the
default value to achieve better performance. The default is 1E+7.
DataPlugin name out returns DataPlugin name unchanged. If you do not wire the DataPlugin
name input or if you wire an empty string to this input, DataPlugin name out returns the
DataPlugin name that this VI detects automatically.
• error out —
error out contains error information. This output provides standard error out functionality.
Manage DataPlugins
Use the Manage DataPlugins VIs to list, export, register, or unregister DataPlugins
installed on the local computer.
1674 ni.com
Functions
Palette
Description
Object
Export
Exports a DataPlugin that exists on the local computer to a .uri file.
DataPlugin
Register Registers or installs a DataPlugin to the local computer. You must manually select the
DataPlugin polymorphic instance to use.
Unregister Unregisters a DataPlugin from the local computer. This VI does not delete the
DataPlugin corresponding DataPlugin .uri file or installer from the computer.
List DataPlugins
Lists all DataPlugins existing on the National Instruments website at ni.com/
dataplugins or registered on the local computer. You also can use this VI to search for a
DataPlugin that exists on the local computer or the National Instruments website.
Inputs/Outputs
• DataPlugin name —
DataPlugin name specifies the name of the DataPlugin you want to search for. If you do not wire
data to this input or if you wire an empty string to this input, this VI lists all DataPlugins
registered on the local computer or exist on the National Instruments website.
• file extension —
• source —
source specifies the source location where you want to search for the DataPlugins.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• DataPlugin information —
• name —
• version —
• type —
type returns the type of the DataPlugin. This information indicates the programming
language in which the DataPlugin was created.
• read-only? —
1676 ni.com
Functions
• extensions —
extensions returns the file extensions you can use with this DataPlugin.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\File IO\DataPlugins\General\Manage
DataPlugins.vi
Export DataPlugin
Exports a DataPlugin that exists on the local computer to a .uri file.
Note You can export only DataPlugins with a type of VBS or VBCrypt. Use the
List DataPlugins VI to view the type of a DataPlugin.
Inputs/Outputs
• DataPlugin URI path (*.uri) —
DataPlugin URI path (*.uri) specifies the path to which you want to export the DataPlugin.
• DataPlugin name —
DataPlugin name specifies the name of the DataPlugin you want to export.
• encrypt? (F) —
encrypt? specifies whether to encrypt the .uri file when you export the DataPlugin. The
default is FALSE. This VI ignores this input if you export a DataPlugin with a type of VBCrypt.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
DataPlugin URI path out returns DataPlugin URI path (*.uri) unchanged.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\File IO\DataPlugins\General\Manage
DataPlugins.vi
Register DataPlugin
Registers or installs a DataPlugin to the local computer. You must manually select the
polymorphic instance to use.
1678 ni.com
Functions
Examples
• labview\examples\File IO\DataPlugins\General\Manage
DataPlugins.vi
• labview\examples\File IO\DataPlugins\ATML\DataPlugins -
ATML.lvproj
Inputs/Outputs
• DataPlugin URI path (*.uri) —
DataPlugin URI path (*.uri) specifies the path to the DataPlugin .uri file. You can download
DataPlugin .uri files from the National Instruments website at ni.com/dataplugins.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
DataPlugin URI path out returns DataPlugin URI path (*.uri) unchanged.
• DataPlugin information —
DataPlugin information returns information about the DataPlugin that this VI registers on the
local computer.
• name —
• version —
• type —
type returns the type of the DataPlugin. This information indicates the programming
language in which the DataPlugin was created.
• read-only? —
• extensions —
extensions returns the file extensions you can use with this DataPlugin.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1680 ni.com
Functions
• labview\examples\File IO\DataPlugins\General\Manage
DataPlugins.vi
• labview\examples\File IO\DataPlugins\ATML\DataPlugins -
ATML.lvproj
Inputs/Outputs
• DataPlugin name —
DataPlugin name specifies the name of the DataPlugin. You can find the DataPlugin names on
the National Instruments website at ni.com/dataplugins or use the List DataPlugins VI to list all
the DataPlugins existing on the website.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• DataPlugin information —
DataPlugin information returns information about the DataPlugin that this VI installs on the
local computer.
• name —
• version —
• Type —
type returns the type of the DataPlugin. This information indicates the programming
language in which the DataPlugin was created.
• read-only? —
• extensions —
extensions returns the file extensions you can use with this DataPlugin.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\File IO\DataPlugins\General\Manage
DataPlugins.vi
• labview\examples\File IO\DataPlugins\ATML\DataPlugins -
ATML.lvproj
1682 ni.com
Functions
Unregister DataPlugin
Unregisters a DataPlugin from the local computer. This VI does not delete the
corresponding DataPlugin .uri file or installer from the computer.
Inputs/Outputs
• DataPlugin name —
DataPlugin name specifies the name of the DataPlugin you want to unregister.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\File IO\DataPlugins\General\Manage
DataPlugins.vi
Advanced Storage
Use the Advanced Storage VIs to read, write, and query data when object types or
property names are determined at run time.
Palette
Description
Object
Get Object
Returns information about the object you specify.
Info
Get
Property Retrieves the properties of a data file, channel group, or channel.
Info
Set Defines a property for a file, channel group, or channel. Wire data to the Value input to
Property determine the polymorphic instance to use or manually select the instance.
Get Returns the value of a property for a file, channel group, or channel. You must
Property manually select the polymorphic instance you want to use.
Merges two arrays of storage reference numbers into one larger array of refnums. This
Merge
VI works properly only if the two sets of storage refnums are from the same data file.
Storage
Wire data to either of the storage refnums inputs to determine the polymorphic
Refnums
instance to use or manually select the instance.
Create Creates a query expression to use with the Execute Query Expression VI to search for
Query objects that meet the condition you specify. Wire data to the value input to determine
Expression the polymorphic instance to use or manually select the instance.
1684 ni.com
Functions
Palette
Description
Object
Merge
Merges two query expressions. You can use the Create Query Expression VI to create
Query
query expressions that you want to merge.
Expressions
Execute
Query Returns data objects that meet the query expression.
Expression
Refnum to
Returns the ID for a data object.
ID
ID to Returns a refnum for an object you specify. Wire data to the storage refnum input to
Refnum determine the polymorphic instance to use.
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• storage read-only —
storage refnum out returns a reference number for the data object this VI accesses.
• object type —
object type returns the data object type (file, channel group, or channel).
• storage location —
• error out —
error out contains error information. This output provides standard error out functionality.
• DataPlugin name —
DataPlugin name returns the DataPlugin name that the data object contains.
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
1686 ni.com
Functions
storage refnum out returns a reference number for the data object this VI accesses.
• properties —
properties returns the properties of the data file, channel group, or channel.
• object type —
object type returns the type of the storage object that you wire to storage refnum.
• property name —
property name returns the name of the property. Use the Set Property VI to create property
names.
• data type —
• error out —
error out contains error information. This output provides standard error out functionality.
Set Property
Defines a property for a file, channel group, or channel. Wire data to the Value input to
determine the polymorphic instance to use or manually select the instance.
Inputs/Outputs
• Create if not found (no:F) —
Create if not found specifies whether the VI creates a new property with the values you set if the
property specified in Property name does not exist. The default is FALSE, which means the VI
does not create a property and returns an error if the specified property does not exist.
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
• Value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
1688 ni.com
Functions
storage refnum out returns a reference number for the data object this VI accesses.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Create if not found (no:F) —
Create if not found specifies whether the VI creates a new property with the values you set if the
property specified in Property name does not exist. The default is FALSE, which means the VI
does not create a property and returns an error if the specified property does not exist.
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
• Value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Create if not found (no:F) —
Create if not found specifies whether the VI creates a new property with the values you set if the
property specified in Property name does not exist. The default is FALSE, which means the VI
does not create a property and returns an error if the specified property does not exist.
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
• Value —
1690 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Create if not found (no:F) —
Create if not found specifies whether the VI creates a new property with the values you set if the
property specified in Property name does not exist. The default is FALSE, which means the VI
does not create a property and returns an error if the specified property does not exist.
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
• Value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Create if not found (no:F) —
Create if not found specifies whether the VI creates a new property with the values you set if the
property specified in Property name does not exist. The default is FALSE, which means the VI
does not create a property and returns an error if the specified property does not exist.
• storage refnum —
1692 ni.com
Functions
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
• Value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Create if not found (no:F) —
Create if not found specifies whether the VI creates a new property with the values you set if the
property specified in Property name does not exist. The default is FALSE, which means the VI
does not create a property and returns an error if the specified property does not exist.
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
• Value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• error out —
error out contains error information. This output provides standard error out functionality.
1694 ni.com
Functions
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
• Value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Enum values —
enum values specifies the valid string values for the enum.
storage refnum out returns a reference number for the data object this VI accesses.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Create if not found (no:F) —
Create if not found specifies whether the VI creates a new property with the values you set if the
property specified in Property name does not exist. The default is FALSE, which means the VI
does not create a property and returns an error if the specified property does not exist.
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
• Value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• error out —
error out contains error information. This output provides standard error out functionality.
1696 ni.com
Functions
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
• Value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
• Value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• error out —
error out contains error information. This output provides standard error out functionality.
Get Property
Returns the value of a property for a file, channel group, or channel. You must
manually select the polymorphic instance you want to use.
1698 ni.com
Functions
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• Value —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• Value —
1700 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• Value —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• Value —
• error out —
error out contains error information. This output provides standard error out functionality.
1702 ni.com
Functions
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• Value —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• Value —
• error out —
error out contains error information. This output provides standard error out functionality.
1704 ni.com
Functions
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• String —
• Value —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• Value —
• error out —
error out contains error information. This output provides standard error out functionality.
1706 ni.com
Functions
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• Value —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Property name —
Property name specifies the name of the property. Use the Get Property Info VI to obtain the
Property name.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• Value —
• error out —
error out contains error information. This output provides standard error out functionality.
1708 ni.com
Functions
Inputs/Outputs
• storage refnums (channel) 1 —
storage refnums (channel) 1 specifies the channels to merge. Wire the storage refnums output
of the Read Data VI to this input.
storage refnums (channel) 2 specifies the channels to merge. Wire the storage refnums output
of the Read Data VI to this input.
• operation —
operation specifies the condition that joins storage refnums (channel) 1 and storage refnums
(channel) 2.
AND
0 —Combines all channels that are included in both storage refnums (channel) 1 and storage
refnums (channel) 2.
OR
1
—Combines all channels from storage refnums (channel) 1 and storage refnums (channel) 2.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnums (channel) returns the channels that meet the operation condition.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• storage refnums (channel group) 2 —
1710 ni.com
Functions
storage refnums (channel group) 2 specifies the channel groups to merge. Wire the storage
refnums output of the Read Data VI to this input.
storage refnums (channel group) 1 specifies the channel groups to merge. Wire the storage
refnums output of the Read Data VI to this input.
• operation —
operation specifies the condition that joins storage refnums (channel group) 1 and storage
refnums (channel group) 2.
AND—Combines all channel groups that are included in both storage refnums (channel group)
0
1 and storage refnums (channel group) 2.
OR—Combines all channel groups from storage refnums (channel group) 1 and storage
1
refnums (channel group) 2.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnums (channel group) returns the channel groups that meet the operation
condition.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• property name —
property name specifies the name of the property. Use the Get Property Info VI to obtain the
property name.
0 =
1 !=
2 >
3 <
4 >=
5 <=
• value —
1712 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• query expression —
query expression returns a query expression based on what you wired to the inputs.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• property name —
property name specifies the name of the property. Use the Get Property Info VI to obtain the
property name.
0 =
1 !=
2 >
3 <
4 >=
5 <=
• value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• query expression —
query expression returns a query expression based on what you wired to the inputs.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• property name —
property name specifies the name of the property. Use the Get Property Info VI to obtain the
1714 ni.com
Functions
property name.
0 =
1 !=
2 >
3 <
4 >=
5 <=
• value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• query expression —
query expression returns a query expression based on what you wired to the inputs.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• property name —
property name specifies the name of the property. Use the Get Property Info VI to obtain the
property name.
0 =
1 !=
2 >
3 <
4 >=
5 <=
• value —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• query expression —
query expression returns a query expression based on what you wired to the inputs.
• error out —
error out contains error information. This output provides standard error out functionality.
1716 ni.com
Functions
Inputs/Outputs
• query expression 1 —
• query expression 2 —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
combined query expression returns a query expression that merges query expression 1 and
query expression 2. You can wire this output to the Execute Query Expression VI to obtain the
objects that meet the combined query conditions.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• object type —
object type specifies the object type of the storage refnums that this VI returns. Use the Get
Object Info VI to obtain the object type from a storage refnum.
• query expression —
query expression specifies the query condition. Use the Create Query Expression VI to obtain the
query expression.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• storage refnums —
storage refnums returns the data objects that meet the query conditions.
• error out —
error out contains error information. This output provides standard error out functionality.
Refnum to ID
Returns the ID for a data object.
1718 ni.com
Functions
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
storage refnum out returns a reference number for the data object this VI accesses.
• object ID —
object ID returns the object ID, which is a unique string that identifies the object in the file. The
object ID is persistent, so you can reuse it after closing a file and opening the file again.
• error out —
error out contains error information. This output provides standard error out functionality.
ID to Refnum
Returns a refnum for an object you specify. Wire data to the storage refnum input to
determine the polymorphic instance to use.
• GetObjectFromID_Storage VI
• GetObjectFromID_Object VI
GetObjectFromID_Storage VI
Returns a refnum for an object you specify. Wire data to the storage refnum input to
determine the polymorphic instance to use.
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• object ID —
object ID specifies the ID of the object you want to access. The object ID is a unique string that
identifies the object in the file. Use the Refnum to ID VI to obtain the object ID.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
GetObjectFromID_Object VI
Returns a refnum for an object you specify. Wire data to the storage refnum input to
determine the polymorphic instance to use.
1720 ni.com
Functions
Inputs/Outputs
• storage refnum —
storage refnum specifies the reference number for the data object you want to access.
• Object id —
object ID specifies the ID of the object you want to access. The object ID is a unique string that
identifies the object in the file. Use the Refnum to ID VI to obtain the object ID.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Zip
Use the Zip VIs to create new zip files, to add files to zip files, to unzip zip files, and to
close zip files.
Palette
Description
Object
New
Zip Creates a new empty zip file in the path that target specifies. The new file overwrites an
File
Palette
Description
Object
existing file or produces a confirmation dialog based on the value of the confirm
overwrite? control.
Add
Adds the file source file path specifies to a zip file. The destination path in zip control
File to
specifies the zipped path information.
Zip
Close
Zip Closes the zip file zip file in specifies.
File
Unzips the contents of Zip file to the Target directory. Set Preview only? to TRUE to
Unzip preview the list of files in Zip file before you unzip the zip file. This VI cannot unzip a zip file
that is password protected.
Examples
Creates a new empty zip file in the path that target specifies. The new file overwrites
an existing file or produces a confirmation dialog based on the value of the confirm
overwrite? control.
Inputs/Outputs
• target —
target specifies the path to the new or existing zip file. The VI deletes and rewrites the file if it
1722 ni.com
Functions
confirm overwrite? specifies to overwrite the existing zip file. The default is FALSE. If you set
confirm overwrite? to TRUE, the VI prompts you to confirm deleting the existing zip file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
zip file out returns the open zip file. zip file out is analogous to a refnum or task ID.
• cancelled —
cancelled returns TRUE only if a user cancels an overwrite confirmation dialog box.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Adds the file source file path specifies to a zip file. The destination path in zip control
specifies the zipped path information.
Inputs/Outputs
• zip file in —
source file path specifies the path to file to add to the zip file.
destination path in zip specifies the filename and the path to apply to the source file when the
VI encodes the file into the zip file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
zip file out returns the open zip file. zip file out is analogous to a refnum or task ID.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1724 ni.com
Functions
Inputs/Outputs
• zip file in —
• comments —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Unzip
Unzips the contents of Zip file to the Target directory. Set Preview only? to TRUE to
preview the list of files in Zip file before you unzip the zip file. This VI cannot unzip a zip
file that is password protected.
Inputs/Outputs
• Zip file —
Zip file specifies the path to the zip file that you want to unzip.
• Preview only? —
Preview only? specifies whether to display the files in Zip file without unzipping the zip file. If
TRUE, this VI does not unzip Zip file and Preview displays a list of the files in the zip file. The
default is FALSE.
Target directory specifies the directory path to which the VI unzips the files in Zip file. The
default is the directory path that contains the zip file.
If you specify a path that includes a filename, the VI strips the filename from the path and unzips
files to the resulting directory.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Unzipped files —
• Preview —
• error out —
error out contains error information. This output provides standard error out functionality.
XML
1726 ni.com
Functions
LabVIEW Use the LabVIEW Schema VIs and functions to manipulate LabVIEW data in XML
Schema format.
Use the XML Parser VIs and nodes to process XML documents using the XML parser.
XML Parser
The XML parser in LabVIEW is the Xerces 2.7 parser which uses a document object
model (DOM).
LabVIEW Schema
Use the LabVIEW Schema VIs and functions to manipulate LabVIEW data in XML format.
Palette
Description
Object
Flatten
Converts any data type you wire to anything and converts it to an XML string according
To XML
to the LabVIEW XML schema.
Function
Unflatten
From XML Converts an XML string to a LabVIEW data type according to the LabVIEW XML schema.
Function
Writes a text string of XML data with accompanying header tags to a text file. Wire data
Write to
to the XML Input input to determine the polymorphic instance to use or manually select
XML File
the instance. All XML data must follow the standard LabVIEW XML schema.
Reads and parses tags from a LabVIEW XML file. When you place this VI on the block
Read
diagram, the polymorphic VI selector is visible. Use this selector to choose which
From XML
polymorphic instance to use. All XML data must follow the standard LabVIEW XML
File
schema.
Palette
Description
Object
Escape
Converts special characters to XML syntax according to the LabVIEW XML schema.
XML
Unescape Converts the XML syntax for special characters back to the special characters according
XML to the LabVIEW XML schema.
Examples
If anything contains the characters <, >, or &, the function converts those characters to
<, >, or &, respectively. Use the Escape XML VI to convert other
characters, such as ", to XML syntax.
Inputs/Outputs
• anything —
anything is any LabVIEW data you want to convert. This parameter is polymorphic.
• xml string —
1728 ni.com
Functions
xml string is the resulting XML string that represents the LabVIEW data type.
When converting decimal values, this function uses only the period (.) as a decimal separator.
The function does not use localized decimal separators.
Examples
If xml string contains the characters <, >, or &, the function converts
those characters to <, >, or &, respectively. Use the Unescape XML VI to convert other
characters, such as ".
Inputs/Outputs
• xml string —
xml string is the XML string that includes the data you want to convert.
xml string must conform to the LabVIEW XML schema, including the case and order of tags in the
schema. If xml string does not conform to the schema, the function returns an error and value
contains the default value for the data type wired to type. If the VI containing the function
previously completed execution, value contains the value from the previous execution.
In xml string, this function accepts only the period (.) as a decimal separator. The function does
not recognize localized decimal separators. This restriction prevents errors when you use XML
strings on operating systems with different settings for the decimal separator.
• type —
type is the data type to which you want to convert xml string.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• value —
value is the data type you specified in type and the data in xml string.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1730 ni.com
Functions
Inputs/Outputs
• XML File Path —
XML File Path is the path and filename to which you want to write XML data.
The filename must have a .xml extension. When you specify an empty path, a dialog box
prompts the user to specify an XML file.
• XML Input —
• XML Encoding —
XML Encoding specifies the encoding scheme for the XML file. LabVIEW supports ANSI and
Multibyte encoding schemes.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Standalone? (T) —
Standalone? specifies the value for the standalone attribute in the XML declaration.
Standalone? determines whether the document exists entirely on its own (TRUE), or depends on
other files (FALSE).
XML File Path(duplicate) is the path of the file to which the VI writes data.
You can use this output to determine the file path that you selected through a dialog box. XML
File Path(duplicate) has a value of <Not A Path> if you cancelled the dialog box.
• XML String —
XML String contains the XML data that the VI writes to the specified file.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Inputs/Outputs
• XML File Path —
XML File Path is the path of the file to which the VI writes data.
1732 ni.com
Functions
The filename must have a .xml extension. When you specify an empty path, a dialog box
prompts the user to specify an XML file.
• XML Input —
XML Input allows you to write multiple nodes of XML data to an XML file.
• XML Encoding —
XML Encoding specifies the encoding scheme for the XML file. LabVIEW supports ANSI and
Multibyte encoding schemes.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Standalone? (T) —
Standalone? specifies the value for the standalone attribute in the XML declaration.
Standalone? determines whether the document exists entirely on its own (TRUE), or depends on
other files (FALSE).
XML File Path is the path and filename to which you want to write XML data.
You can use this output to determine the file path that you selected through a dialog box. XML
File Path has a value of <Not A Path> if you cancelled the dialog box.
• XML String —
XML String contains the XML data that the VI writes to the specified file.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Examples
1734 ni.com
Functions
Inputs/Outputs
• XML File Path —
XML File Path is the path and filename from which you want to read XML data.
When you specify an empty path, a dialog box prompts the user to specify an XML file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
XML File Path(duplicate) is the path of the file from which the VI reads data.
You can use this output to determine the file path that you selected through a dialog box. XML
File Path(duplicate) has a value of <Not A Path> if you cancelled the dialog box.
• XML Elements —
XML Elements returns the top-level XML tags found between the end of the </Version> and
</LVData> tags in an array of strings. You then can index the array and use the Unflatten From
XML function.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
polymorphic instance to use. All XML data must follow the standard LabVIEW XML
schema.
Inputs/Outputs
• XML File Path —
XML File Path is the path and filename from which you want to read XML data.
When you specify an empty path, a dialog box prompts the user to specify an XML file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
XML File Path(duplicate) is the path of the file from which the VI reads data.
You can use this output to determine the file path that you selected through a dialog box. XML
File Path(duplicate) has a value of <Not A Path> if you cancelled the dialog box.
• XML Elements —
XML Elements returns the top-level XML tags found between the end of the </Version> and
</LVData> tags in a single string. You then can wire this output to the Unflatten From XML
function.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1736 ni.com
Functions
Escape XML
Converts special characters to XML syntax according to the LabVIEW XML schema.
The Flatten To XML function converts the characters <, >, or & to <, >, or
&, respectively, but you must use this VI to convert other characters, such as ", to
XML syntax.
Inputs/Outputs
• XML String In —
XML String In is the XML string for which you want to convert special characters.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
XML String Out is the XML string with special characters converted.
• error out —
error out contains error information. This output provides standard error out functionality.
Unescape XML
Converts the XML syntax for special characters back to the special characters
according to the LabVIEW XML schema.
The Unflatten From XML function converts the characters <, >, or & to <,
>, or &, respectively, but you must use this VI to convert other characters, such as
".
Inputs/Outputs
• XML String In —
XML String In is the XML string that contains the XML-formatted characters you want to convert.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
XML Parser
Use the XML Parser VIs and nodes to process XML documents using the XML parser.
The XML parser in LabVIEW is the Xerces 2.7 parser which uses a document object
model (DOM).
The VIs and nodes on this palette can return XML Parser error codes.
1738 ni.com
Functions
Palette
Description
Object
Returns an XML parser session in LabVIEW. Use this VI each time you create a new XML
New
parser session.
Gets (reads) and/or sets (writes) properties of an XML reference. The node operates in the
Property same way as a standard Property Node.
Node
(XML) National Instruments recommends that you use the Close VI to close all the references
after using the XML parser classes.
Invoke
Invokes a method or action on an XML reference. The node operates in the same way as a
Node
standard Invoke Node.
(XML)
Closes a reference for all XML parser classes. You can use this polymorphic VI to close
Close refnums from the NamedNodeMap class, the NodeList class, the Implementation class,
or the Node class. The Node class encompasses all other XML classes.
Get First
Returns the first node within node in that matches the XPath expression. If this VI does
Matched
not find a match, node result is not a valid refnum.
Node
Get All
Matched Returns all the nodes within node in that match the XPath expression.
Nodes
Get Next
Non-
Returns the first sibling of the node in that is not of type Text_Node.
Text
Sibling
Get First
Non-
Returns the first child of the node in that is not of type Text_Node.
Text
Child
Palette
Description
Object
Get
Node
Returns the combined values of Text_Node children that the node in node owns.
Text
Content
Opens an XML file and allows you to configure the XML parser to validate the file against a
schema or Document Type Definition (DTD).
Load
National Instruments recommends that you use the Close VI to close all the references
after using the XML parser classes.
New
Returns an XML parser session in LabVIEW. Use this VI each time you create a new XML
parser session.
Inputs/Outputs
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
DOM document out returns a reference to the new XML parser session.
• error out —
1740 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
National Instruments recommends that you use the Close VI to close all the references
after using the XML parser classes.
Inputs/Outputs
• reference —
reference is the refnum associated with an XML parser object that is already open.
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• reference out —
reference out returns reference unchanged.
• error out —
error out contains error information. This output provides standard error out functionality.
• Property —
property 1..n are examples of properties you want to get (read).
Examples
Inputs/Outputs
• reference —
reference is the refnum associated with an XML parser object that is already open.
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Method —
input 1..n are example input parameters of a method.
• reference out —
reference out returns reference unchanged.
• error out —
error out contains error information. This output provides standard error out functionality.
• Method —
return value is an example return value of a method.
• param —
Close
Closes a reference for all XML parser classes. You can use this polymorphic VI to close
refnums from the NamedNodeMap class, the NodeList class, the Implementation
class, or the Node class. The Node class encompasses all other XML classes.
1742 ni.com
Functions
• Close Reference(NNMap) VI
• Close Reference(NdList) VI
• Close Reference(Impl) VI
• Close Reference(Node) VI
Close Reference(NNMap) VI
Closes a reference for all XML parser classes. You can use this polymorphic VI to close
refnums from the NamedNodeMap class, the NodeList class, the Implementation
class, or the Node class. The Node class encompasses all other XML classes.
Inputs/Outputs
• named node map —
named node map is the XML Parser NamedNodeMap class refnum that you want to close.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• error out —
error out contains error information. This output provides standard error out functionality.
Close Reference(NdList) VI
Closes a reference for all XML parser classes. You can use this polymorphic VI to close
refnums from the NamedNodeMap class, the NodeList class, the Implementation
class, or the Node class. The Node class encompasses all other XML classes.
Inputs/Outputs
• node list —
node list is the XML Parser NodeList class refnum that you want to close.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• error out —
error out contains error information. This output provides standard error out functionality.
Close Reference(Impl) VI
Closes a reference for all XML parser classes. You can use this polymorphic VI to close
refnums from the NamedNodeMap class, the NodeList class, the Implementation
class, or the Node class. The Node class encompasses all other XML classes.
Inputs/Outputs
• implementation —
implementation is the XML Parser Implementation class refnum that you want to close.
error in describes error conditions that occur before this node runs. With the following
1744 ni.com
Functions
This node runs normally even if an error occurred before this node runs.
• error out —
error out contains error information. This output provides standard error out functionality.
Close Reference(Node) VI
Closes a reference for all XML parser classes. You can use this polymorphic VI to close
refnums from the NamedNodeMap class, the NodeList class, the Implementation
class, or the Node class. The Node class encompasses all other XML classes.
Inputs/Outputs
• node —
node is the XML Parser Node class refnum that you want to close.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• node in —
node in is a reference to an instance of XML Parser class Node. This VI uses node in as the context
node to evaluate the XPath expression.
• XPath expression —
XPath expression specifies the expression this VI uses to query node in for a match. Use XPath
syntax to define the XPath expression.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• node out —
• node result —
node result returns a reference to the first node that matches XPath expression. If this VI does
not find a match, node result is not a valid refnum. You can use the Not a Number/Path/Refnum?
function to establish whether this VI finds a match.
• error out —
error out contains error information. This output provides standard error out functionality.
1746 ni.com
Functions
Inputs/Outputs
• node in —
node in is a reference to an instance of XML Parser class Node. This VI uses node in as the context
node to evaluate the XPath expression.
• XPath expression —
XPath expression specifies the expression this VI uses to query node in for a match. Use XPath
syntax to define the XPath expression.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• node out —
node result array returns an array of references to each node that matches XPath expression. If
this VI does not find a match, node result array is empty.
If you use a For Loop to process each node from node result array, consider using shift registers
instead of tunnels for other data you pass through the loop. Doing so avoids surprising behaviors
in case node result array is empty.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Inputs/Outputs
• node in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• node out —
• sibling node —
• error out —
1748 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• node in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• node out —
• child node —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• node in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• node out —
• node text —
• error out —
error out contains error information. This output provides standard error out functionality.
Load
Opens an XML file and allows you to configure the XML parser to validate the file
against a schema or Document Type Definition (DTD).
National Instruments recommends that you use the Close VI to close all the references
after using the XML parser classes.
1750 ni.com
Functions
The VI contains information about errors that the XML parser encounters while parsing
the document.
National Instruments recommends that you use the Close VI to close all the references
after using the XML parser classes.
The VI contains information about errors that the XML parser encounters while parsing
the document.
Inputs/Outputs
• validate on load (Auto) —
validate on load specifies the validation scheme that the XML parser uses. The default is Auto,
which turns on validation only if the parser detects an internal or external DTD subset.
You also can select Always, which turns on validation, or Never, which turns off validation.
If you select FALSE, the parser discards ignorable whitespaces and does not add Text Nodes to
the DOM tree. If you select FALSE, you must provide a valid DTD definition for the Preserve
Whitespace option to correctly discard ignorable whitespaces. If the XML document is invalid or
has no schema, the Preserve Whitespace option is ignored.
path to XML document contains the location of the XML document you want to load into the
XML parser.
Note The XML document must include an XML prolog with a valid encoding value. If
the encoding value is incorrect or missing, this function might fail to parse the XML
document.
process namespaces disables namespace processing for the XML parser when set to FALSE, the
default. When set to TRUE, the XML parser enforces the constraints and rules that the
NameSpace specification contains.
process schema disables schema processing for the XML parser when set to FALSE, the default. If
you set the control to TRUE, you must set process namespaces to TRUE.
load external DTD specifies whether the XML parser can load external DTDs. The default is TRUE.
LabVIEW loads the schema specified in the metadata of the XML file. If you set validate on load
to Always or Auto, the parser ignores this input and always loads the DTD.
In the XML file, specify the external schema you want to use in one of the following metadata
attributes:
• xsi:schemaLocation—Use this attribute if you define the targetNamespace attribute in the
metadata of the XML file.
• xsi:noNamespaceSchemaLocation—Use this attribute if you do not define the
targetNamespace attribute in the metadata of the XML file.
Refer to TestConfiguration.xml in the examples\File IO\XML\Parse XML\
support directory for an example of specifying a schema in an XML file.
1752 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
schema full checking specifies whether the XML parser runs full or partial schema constraint
checking. The default is FALSE, which configures the XML parser to run partial constraint
checking.
DOM document out returns a reference to the new XML parser session.
• parse errors —
parse errors contains information on errors the XML parser found when it parsed the document,
including problems the parser encountered when validating the document against the schema.
• error out —
error out contains error information. This output provides standard error out functionality.
National Instruments recommends that you use the Close VI to close all the references
after using the XML parser classes.
The VI contains information about errors that the XML parser encounters while parsing
the document.
Inputs/Outputs
• validate on load (Auto) —
validate on load specifies the validation scheme that the XML parser uses. The default is Auto,
which turns on validation only if the parser detects an internal or external DTD subset.
You also can select Always, which turns on validation, or Never, which turns off validation.
If you select FALSE, the parser discards ignorable whitespaces and does not add Text Nodes to
the DOM tree. If you select FALSE, you must provide a valid DTD definition for the Preserve
Whitespace option to correctly discard ignorable whitespaces. If the XML document is invalid or
has no schema, the Preserve Whitespace option is ignored.
• XML string —
XML string is the XML string that includes the data you want to parse.
Note The XML string must include an XML prolog with a valid encoding value. If the
encoding value is incorrect or missing, this function might fail to parse the XML string.
process namespaces disables namespace processing for the XML parser when set to FALSE, the
default. When set to TRUE, the XML parser enforces the constraints and rules that the
NameSpace specification contains.
process schema disables schema processing for the XML parser when set to FALSE, the default. If
you set the control to TRUE, you must set process namespaces to TRUE.
1754 ni.com
Functions
load external DTD specifies whether the XML parser can load external DTDs. The default is TRUE.
LabVIEW loads the schema specified in the metadata of the XML file. If you set validate on load
to Always or Auto, the parser ignores this input and always loads the DTD.
In the XML file, specify the external schema you want to use in one of the following metadata
attributes:
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
schema full checking specifies whether the XML parser runs full or partial schema constraint
checking. The default is FALSE, which configures the XML parser to run partial constraint
checking.
DOM document out returns a reference to the new XML parser session.
• parse errors —
parse errors contains information on errors the XML parser found when it parsed the document,
including problems the parser encountered when validating the document against the schema.
• error out —
error out contains error information. This output provides standard error out functionality.
Save
Saves an XML document.
Inputs/Outputs
• DOM document in —
DOM document in contains a reference to the XML parser session you want to save.
XML file path specifies the path where you want to save the file.
overwrite file specifies whether you want the VI to overwrite an existing file with the same
name. The default is TRUE, which overwrites an existing file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
DOM document out contains the same reference as DOM document in.
XML file path out contains the path where the VI saved the file.
• error out —
error out contains error information. This output provides standard error out functionality.
1756 ni.com
Functions
Use the Waveform File I/O VIs to write waveform data to and read waveform data from
files.
Palette
Description
Object
Creates a new file or appends to an existing file, writes the specified number of
Write
records to the file, then closes the file and checks for errors. Each record is an array of
Waveforms
waveforms. Wire data to the Waveform input to determine the polymorphic instance
to File
to use or manually select the instance.
Read Opens a file created with the Write Waveforms to File VI and reads one record of the
Waveforms file. Each record might contain one or more separate waveforms. To retrieve all
from File records in the file, call this VI in a loop until the end of the file is reached.
Export
Waveforms Converts a waveform to a text string and writes the string to a new byte stream file or
to appends the string to an existing file. Wire data to the waveforms input to determine
Spreadsheet the polymorphic instance to use or manually select the instance.
File
Examples
Use the Advanced File VIs and functions to manipulate files, directories, and paths.
Palette
Description
Object
Get File
Returns the position of the current file mark of the file identified by refnum relative
Position
to the beginning of the file.
Function
Get File Size
Gets the file size of file. This function does not work for files inside an LLB.
Function
Get
Returns the owner, group, and permissions of the file or directory specified by path.
Permissions
This function does not work for files inside an LLB.
Function
Get Type and
Reads the type and creator of the file specified by path. type and creator are four-
Creator
character strings. This function does not work for files inside an LLB.
Function
Preallocated
Reads binary data from a file and places the data into an array that you have already
Read from
allocated without incurring a copy of the data. Unlike the Read from Binary File
Binary File
function, this function avoids run-time memory allocations.
Function
File Dialog Displays a dialog box with which you can specify the path to a file or directory.
Set File
Moves the position of the current file mark of the file identified by refnum to the
Position
position indicated by offset (in bytes) according to the mode in from.
Function
Set File Size Sets the file size of file by setting the end-of-file marker to size bytes from the
Function beginning of the file. This function does not work for files inside an LLB.
Set
Sets the owner, group, and permissions of the file or directory specified by path.
Permissions
This function does not work for files inside an LLB.
Function
Set Type and Sets the type and creator of the file specified by path. type and creator are four-
1758 ni.com
Functions
Palette
Description
Object
Creator character strings. This function does not work for files inside an LLB. Only macOS
Function supports setting the type and creator of files.
Create File
Creates a file and appends an incrementing number suffix to the filename if the file
with
already exists at a specified path. If the file does not exist, this VI creates the file
Incrementing
without appending an incrementing number suffix to the filename.
Suffix
Moves the file or directory that you specify in source path to the location that you
Move specify in target path. If you move a directory, this function moves all the contents
Function of the directory recursively to the new location. You cannot use this function to
move files into or out of an LLB.
Copies the file or directory that you specify in source path to the location that you
Copy specify in target path. If you copy a directory, this function copies all its contents
Function recursively to the new location. You cannot use this function to copy files into or out
of an LLB.
Delete Deletes the file or directory specified by path. This function does not work for files
Function inside an LLB.
Flush File Writes all buffers of the file identified by refnum to disk and updates the directory
Function entry of the file associated with refnum.
Deny Access Reopens the instance of the file specified by refnum to temporarily change what
Function read or write access is denied to other refnums, VIs, or applications.
Returns information about the file or directory specified by path, including its size,
File/Directory
its last modification date, whether it is a directory, whether it is a shortcut, and the
Info Function
resolved path if the file or directory is a shortcut. This function does not work for
Palette
Description
Object
files inside an LLB.
Returns information about the volume containing the file or directory specified by
Get Volume
path, including the total storage space provided by the volume and the amount free
Info Function
in bytes.
Create Folder
Creates the appropriate folder specified by path.
Function
Returns two arrays of strings listing the names of all files and folders found in path,
List Folder
filtering both arrays based upon pattern and filtering the filenames array based
Function
upon the specified datalog type.
Check if File
Checks whether a file or folder exists on disk at a specified path. This VI works with
or Folder
standard files and folders as well as files in LLB files.
Exists
Recursive File
Lists the contents of a folder or LLB.
List
Path To
String Converts path into a string describing a path in the standard format of the platform.
Function
String To
Converts a string, describing a path in the standard format for the current platform,
Path
to a path.
Function
Path to Array
of Strings Converts a path into an array of strings and indicates whether the path is relative.
Function
Array of
Strings to
Converts an array of strings into a relative or absolute path.
Path
Function
Refnum to
Path Returns the path associated with the specified refnum.
Function
Path Type Returns the type of the specified path, indicating whether it is an absolute, relative,
Function or <Not A Path>.
1760 ni.com
Functions
Palette
Description
Object
Compares Path 1 to Path 2 and returns a relative path between the two paths, the
Compare
common path between the two paths, and a Boolean that indicates whether the
Two Paths
paths are on the same path hierarchy level.
Get File
Returns the file extension, without the period (.), of a file you specify.
Extension
File Computes the message digest on the contents of a file. You must manually select
Checksum the polymorphic instance you want to use.
Generate
Returns a unique file path to the temporary directory. This VI only returns a path. It
Temporary
does not create the temporary file.
File Path
Use the Datalog functions to open and close datalog files, read from and write to
Datalog datalog files, get and set datalog file positions, and get and set the number of
datalog records.
Packed
Use the Packed Library VIs to get and return data from a packed project library.
Library
Create
Directory Creates a directory and any parent directories it requires to exist.
Recursive
Create File
and
Creates a file at a specified path and any folders within that path that do not exist.
Containing
Folders
Returns the position of the current file mark of the file identified by refnum relative to
the beginning of the file.
Inputs/Outputs
• refnum —
refnum is the file refnum associated with the file whose file mark you want to move.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
offset (in bytes) indicates the new location of the file mark relative to the beginning of the file
(zero-based).
• error out —
error out contains error information. This output provides standard error out functionality.
Gets the file size of file. This function does not work for files inside an LLB.
Inputs/Outputs
• file —
1762 ni.com
Functions
If it is a file path, this node opens the file specified by the file path.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
refnum out is the refnum of the file that the function read. You can wire this output to another
file function, depending on what you want to do with the file. The default is to close the file if it is
referenced by a file path. If file is a refnum or if you wire refnum out to another function,
LabVIEW assumes that the file is still in use until you close it.
• error out —
error out contains error information. This output provides standard error out functionality.
Returns the owner, group, and permissions of the file or directory specified by path.
This function does not work for files inside an LLB.
Inputs/Outputs
• path —
path specifies the file or directory whose access rights you want to change.
• error in —
error in describes error conditions that occur before this node runs. This input provides
• permissions —
permissions contains the current permissions setting for the file or directory after this function
executes.
• path out —
• owner —
owner contains the current owner setting for the file or directory after this function executes.
• group —
group contains the current group setting for the file or directory after this function executes.
• error out —
error out contains error information. This output provides standard error out functionality.
Refer to Setting Permissions for more information about the permissions parameter.
(Windows) This function returns empty strings for owner and group because Windows
does not support owners and groups.
(macOS) If path refers to a file, this function returns empty strings for owner and group
because macOS does not support owners or groups for files.
Reads the type and creator of the file specified by path. type and creator are four-
character strings. This function does not work for files inside an LLB.
If the specified file has a name ending with characters that LabVIEW recognizes, such
as .vi for the LVIN file type and .llb for the LVAR file type, this function returns that
type in type and LBVW in creator. If the specified file is not a known LabVIEW file type,
this function returns ???? in type and creator.
1764 ni.com
Functions
Inputs/Outputs
• path —
path specifies the file or directory whose type or creator you want to read.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• path out —
• type —
type contains the current type of the file after this function executes.
If no error occurs, this function returns the type of the specified file in type. If an error occurs,
error indicates the type of error and type is an empty string.
• creator —
creator contains the current creator of the file after this function executes.
If no error occurs, this function returns the creator of the specified file in creator. If an error
occurs, error indicates the type of error and creator is an empty string.
• error out —
error out contains error information. This output provides standard error out functionality.
type can return the values for LabVIEW files listed in the table below.
Reads binary data from a file and places the data into an array that you have already
allocated without incurring a copy of the data. Unlike the Read from Binary File
function, this function avoids run-time memory allocations.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• refnum in —
refnum in specifies the file refnum associated with the file you want to read.
• data in —
1766 ni.com
Functions
data in specifies the array in which to place data. This function attempts to read as many data
elements as the array holds. Refer to the support table for information about the arrays and data
types this function supports.
byte order sets the endian form of the resulting data. Byte order, or endian form, indicates
whether integers are represented in memory from most-significant byte to least-significant byte
or vice versa. The function must read the data in the same byte order that the data was written.
Note This function requires that you set the byte order parameter to match the
native byte order of the host computer running LabVIEW. If the computer is big
endian, choose either native, host order or big-endian, network order> endian form.
If the computer is little endian, choose either native, host order or little-endian
endian form.
big-endian, network order (default)—The most-significant byte occupies the lowest memory
0 address. This endian form is used on PowerPC platforms such as VxWorks. This endian-form
also is used when reading data written on a different platform.
native, host order—Uses the byte-ordering format of the host computer. This endian form
1
increases read and write speed.
little-endian—The least-significant byte occupies the lowest memory address. This endian
2
form is used on Windows, macOS, and Linux.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
refnum out is the refnum of the file that the function read. You can wire this output to another
file function.
• data out —
data out contains the data read from the file. This output does not resize to include only valid
data. If LabVIEW reaches the end of the file before the data in array is full, then the array contains
some invalid elements. Use the num elements read output to determine the exact amount of
valid data in data out. If LabVIEW does not reach the end of the file before the data in array is
full, LabVIEW leaves the file pointer where the read finished so that the next read starts where
num elements read returns the total number of elements in the data in array replaced with data
from the file.
• error out —
error out contains error information. This output provides standard error out functionality.
The following block diagram shows an example of how this function works with a pre-
allocated array. Each time the Preallocated Read from Binary File function executes,
LabVIEW places the data from file in the same array.
This function provides different levels of support for arrays you wire to place data from
file:
Fully supported. Because the function does not require a new allocation, it is
probably faster than the Read from Binary File function.
Supported. Because the function requires a new allocation and copy, it is probably
slower than the Read from Binary File function.
The following table describes support when the array you wire to data in is a particular
array or array slice that contains a particular data type.
1768 ni.com
Functions
Note
This function also fully supports each of the data types from the table as scalar values
that are not contained in arrays.
File Dialog
Displays a dialog box with which you can specify the path to a file or directory.
You can use this dialog box to select existing files or directories or to select a location
and name for a new file or directory.
(macOS) This VI does not recognize macOS-specific means of specifying the default
application for a file. However, you can use the pattern input to specify a file type for
files that include an extension to the filename.
Option Description
The user can select one or more files. When you de-select this option, the options for the
types of files or folders the user can select appear dimmed.
• files or folders—
Contains the following options:
Limit ◦ File—The user can select only a file.
selection ◦ Folder—The user can select only a folder.
to single ◦ File or folder—The user can select either a file or a folder.
item • new or existing—
Contains the following options:
◦ Existing—The user can select only an existing file or folder.
◦ New—The user only can enter the name of a new file or folder.
◦ New or existing—The user can select an existing file or folder or create a new
file or folder.
Allow
selection Specifies that you can select a file from an LLB or a packed library. If this checkbox does
of files in
1770 ni.com
Functions
Option Description
not contain a checkmark, you can select an LLB or a packed library but you cannot
select a file in an LLB or a packed library.
LLBs and Note To select an LLB or packed library using the File Dialog Express VI, you
packed can remove the checkmark from the Allow selection of files in LLBs and
project packed project libraries checkbox and select the LLB or packed library from
libraries the file dialog box. You also can place a checkmark in the Allow selection of
files in LLBs and packed project libraries checkbox, select the Files or
Folders option button, choose an LLB or packed library from the file dialog
box, and select the second folder icon from the file list in the second file
dialog box that appears.
Inputs/Outputs
• button label —
Label to display on the OK or Current Directory button in the file dialog box. If you configure the
Express VI to allow the user to select directories, use this input to specify a label for the Current
Directory button. If the configuration does not allow the user to select directories, use this input
to specify a label for the OK button.
For example, if you select Files only in the configure dialog box, the user must select an existing
file to which to append data, so you might want to wire Append to button label.
If button label is longer than the width of the button, the file dialog box does not display the
entire label. For example, in an English version of Windows, the button is approximately 11
characters wide.
Restricts the files displayed in the dialog box to those whose name matches pattern (all files).
pattern (all files) does not restrict the directories displayed.
The pattern matching in this VI is similar to the matching used in matching wildcards in Windows
and Linux filenames. If you specify characters other than the question mark character (?) or the
asterisk character (*), the VI displays only files or directories that contain those characters. You
can use the question mark character (?) to match any single character. You can use the asterisk
character (*) to match any sequence of zero or more characters.
For example, a pattern (all files) of *.vi;test*.llb returns matches for any file with a .vi
extension and any file whose filename begins with test and has a .llb extension.
To match multiple patterns, use a semicolon ( ; ) to separate the patterns. White space, such as
blanks, tabs, and carriage returns, are taken literally. Avoid using white spaces unless they are
part of the extension pattern. For example, if you use *.html;*.doc, the dialog box displays
all files that end with .html and .doc. If you use *.html; *.doc, the dialog box displays
only files that end with .html.
• start path —
Path of the directory whose contents LabVIEW initially displays in the dialog box.
If start path is valid, but does not refer to an existing directory, LabVIEW strips names from the
end of the path until the path is a valid directory path or an empty path. If start path is invalid or
unwired, the last directory viewed in a file dialog box initially appears in the dialog box.
• default name —
Name you want to appear as the initial file or directory name in the dialog box.
• error in —
• prompt —
Custom message that appears as the title of the file dialog box. (Windows and Linux) The default
dialog box title is Choose or Enter Path of File. (macOS) The default dialog box title is Select File
or Create New File.
• pattern label —
Label to display in the file dialog box next to the custom pattern.
If you do not wire this input or it contains an empty string, the default label next to any custom
pattern is Custom Pattern. If you do not wire a string to pattern, LabVIEW ignores this input.
• error out —
Contains error information. This output provides standard error out functionality.
1772 ni.com
Functions
• selected path —
Full path to the file or directory selected using this dialog box.
If you cancel the dialog box, this VI sets selected path to <Not A Path>. This output is
available if you place a checkmark in the Limit selection to single item checkbox in the
Configure File Dialog dialog box.
• exists —
• cancelled —
• selected paths —
Contains the full path names to the files or directories selected using this dialog box. This output
is available if you do not place a checkmark in the Limit selection to single item in the
Configure File Dialog dialog box.
Components
Specifies that you can select a file from an LLB or a packed library. If this checkbox
does not contain a checkmark, you can select an LLB or a packed library but you
cannot select a file in an LLB or a packed library.
The user can select one or more files. When you de-select this option, the options for
the types of files or folders the user can select appear dimmed.
Moves the position of the current file mark of the file identified by refnum to the
position indicated by offset (in bytes) according to the mode in from.
Inputs/Outputs
• refnum —
refnum is the file refnum associated with the file whose file mark you want to move.
offset (in bytes) specifies how far from the location specified by from to set the file mark.
• from (0:start) —
from, together with offset (in bytes), specifies where to set the file mark. If you wire offset (in
bytes), from defaults to 0, and the offset is relative to the beginning of the file. If you do not wire
offset (in bytes), offset (in bytes) defaults to 0, from defaults to 2, and the operation starts at the
current file mark.
start—Sets the file mark offset (in bytes) bytes from the beginning of the file. If from is 0, offset
0
(in bytes) should be positive or 0, which sets the file mark at the beginning of the file.
end—Sets the file mark offset (in bytes) bytes from the end of the file. If from is 1, offset (in
1
bytes) should be negative or 0, which sets the file mark at the end of the file.
2 current—Sets the file mark offset (in bytes) bytes from the current file mark.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
1774 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Sets the file size of file by setting the end-of-file marker to size bytes from the
beginning of the file. This function does not work for files inside an LLB.
Inputs/Outputs
• file —
If it is a file path, this node opens the file specified by the file path.
• size (in bytes) —
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
refnum out is the refnum of the file that the function read. You can wire this output to another
file function, depending on what you want to do with the file. The default is to close the file if it is
referenced by a file path. If file is a refnum or if you wire refnum out to another function,
LabVIEW assumes that the file is still in use until you close it.
• error out —
error out contains error information. This output provides standard error out functionality.
Sets the owner, group, and permissions of the file or directory specified by path. This
function does not work for files inside an LLB.
Inputs/Outputs
• permissions —
permissions specifies the new permissions setting for the file or directory.
Refer to Setting Permissions for more information about how to define the permissions you
want to set.
• path —
path specifies the file or directory whose access rights you want to change.
• new owner —
new owner specifies the new owner for the file or directory.
If new owner is an empty string, the VI does not set the owner.
• new group —
new group specifies the new group for the file or directory.
If new group is an empty string, the VI does not set the group.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• path out —
1776 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
If you do not specify new owner, new group, or permissions, this function returns the
current settings unchanged.
(Windows) This function ignores new owner and new group because Windows does
not support owners and groups.
(macOS) If path refers to a file, this function ignores new owner and new group
because macOS does not support owners or groups for files.
Sets the type and creator of the file specified by path. type and creator are four-
character strings. This function does not work for files inside an LLB. Only macOS
supports setting the type and creator of files.
Inputs/Outputs
• path —
path specifies the file or directory whose type or creator you want to read.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• path out —
• error out —
error out contains error information. This output provides standard error out functionality.
Opens a path to a file or directory in (Windows) Windows Explorer, (macOS) the Finder,
or (Linux) a file system browser depending on the current platform. If you specify a
path to a file that is inside an LLB or a packed project library, this VI opens the path to
the LLB or the packed project library.
Inputs/Outputs
• file or directory path —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
1778 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Is Name Multiplatform
Inputs/Outputs
• filename —
filename must be valid on all platforms specifies whether to check if the specified filename is
valid on all possible platforms. If this input is TRUE, the VI checks the filename against all
possible platforms. If this input is FALSE, the VI checks the filename against only the current
platform. The default is FALSE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• suggested filename —
suggested filename returns the filename that you specified if the filename is valid. If the
specified filename is invalid, this output transforms the specified filename into a valid filename
by replacing invalid characters with hyphens or removing ending periods.
filename had conflict returns whether the specified filename is valid on any possible platform or
the current platform. If filename must be valid on all platforms is TRUE, this output returns
TRUE if the specified filename is invalid on any possible platform. If filename must be valid on
all platforms is FALSE, this output returns TRUE if the specified filename is invalid on the current
platform.
filename not crossplatform returns whether the specified filename is invalid on any possible
platform. This output returns TRUE if the specified filename is invalid on any possible platform.
• error out —
error out contains error information. This output provides standard error out functionality.
• problem description —
problem description returns the problem details if the specified filename is invalid on any
possible platform. This output lists reasons why the specified filename is considered invalid on
one or multiple platforms.
• (Windows) The following characters are invalid: \, /, :, *, ?, ", <, >, and |.
• (Windows) Filenames cannot end with a period (.).
• (macOS) The colon (:) is an invalid character.
• (Linux) The slash (/) is an invalid character.
Creates a file and appends an incrementing number suffix to the filename if the file
already exists at a specified path. If the file does not exist, this VI creates the file
without appending an incrementing number suffix to the filename.
1780 ni.com
Functions
Inputs/Outputs
• format string (" (%d)") —
format string specifies how to convert the file path into a string. format string must contain
exactly one decimal format code (%d). The default is " (%d)".
• file path —
file path specifies the path to the file you want to create. You must specify an absolute path. If
you specify an empty or relative path, this VI returns an error.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
disable buffering specifies if the file opens without buffering. The default is FALSE.
If you want to read or write a data file to a Redundant Array of Independent Disks (RAID),
consider opening the file without buffering to speed up data transfers. To disable buffering, wire
a TRUE value to the disable buffering input.
Note If you have a small amount of data to transfer, you might not notice a
difference if you disable buffering.
• refnum out —
refnum out returns the reference number of the file this VI creates.
• actual path —
• error out —
error out contains error information. This output provides standard error out functionality.
The following table displays examples of how this VI uses format string to convert file
path and to return actual path.
Format
File Path Actual Path Description
String
The %d in format string specifies that the VI appends an
" (%d)" C:\test.txt C:\test (1).txt incrementing number starting with 1 to the filename before the
period (.).
The 4 in format string specifies that the suffix after the filename
"%4d" C:\test.txt C:\test 1.txt
and before the period (.) has a width of 4.
Move Function
Moves the file or directory that you specify in source path to the location that you
specify in target path. If you move a directory, this function moves all the contents of
the directory recursively to the new location. You cannot use this function to move files
into or out of an LLB.
Inputs/Outputs
• prompt (Choose or enter target path for move) —
prompt is the message that appears above the list of files and directories, or folder, in the file
dialog box.
• source path —
source path specifies an absolute path to the file or directory on which you want to operate.
1782 ni.com
Functions
target path is the new absolute path for the file or folder on which you want to operate,
including the new file or folder name.
You must have write permission for the file or directory that you specify in target path;
otherwise, this function does not move the file or directory and returns an error.
Tip Use the Set Permissions function to set the permissions for a file or directory.
You must ensure the target path exists before running this function. If the last component of the
target path does not exist, this function renames the file or folder you specified in the source
path to this component name and moves the file or folder to the target location. See the
examples below for details. If target path is empty (default), the function displays a dialog box
from which you can select a file or folder. If you specify an empty or relative path, this function
returns an error.
Example: moving the source folder on C drive to the dest folder on D drive.
Input/
Value Notes
Output
source
C:\source —
path
target
D:\dest —
path
new D:\dest\ If the dest folder in target path exists, this function moves the source
path source folder to the dest folder.
If the dest folder in target path does not exist, this function renames the
new
D:\dest source folder to dest and then moves all the source folder contents to
path
the dest folder.
Example: moving the test.txt file under C:\source to the dest folder on D drive.
Input/
Value Notes
Output
source C:\source\
—
path test.txt
target
D:\dest —
path
new D:\dest\ If the dest folder in target path exists, this function moves the
Input/
Value Notes
Output
path test.txt test.txt file to the dest folder.
new If the dest folder in target path does not exist, this function renames the
D:\dest
path test.txt file to dest and then moves this file to D drive.
• overwrite (F) —
overwrite determines whether the function replaces existing files or folders in the target path. If
you overwrite a folder that contains unique files, LabVIEW moves those files to the new folder.
(macOS and Linux) LabVIEW does not overwrite read-only files, even if you set this parameter to
TRUE.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• new path —
new path specifies the new location of the file or directory. If the operation is unsuccessful, this
function sets new path to <Not A Path>.
• cancelled —
error out contains error information. This output provides standard error out functionality.
Copy Function
Copies the file or directory that you specify in source path to the location that you
specify in target path. If you copy a directory, this function copies all its contents
recursively to the new location. You cannot use this function to copy files into or out of
an LLB.
1784 ni.com
Functions
Inputs/Outputs
• prompt (Choose or enter target path for copy) —
prompt is the message that appears above the list of files and directories, or folder, in the file
dialog box.
• source path —
source path specifies an absolute path to the file or directory on which you want to operate. If
you specify an empty or relative path, this function returns an error.
target path is the new absolute path for the file or folder on which you want to operate,
including the new file or folder name.
If target path is empty (default), the function displays a dialog box from which you can select a
file or folder. If you specify an empty or relative path, this function returns an error. cancelled is
TRUE if you cancel the dialog box.
• overwrite (F) —
overwrite determines whether the function replaces existing files or folders in the target path. If
you overwrite a folder that contains unique files, LabVIEW moves those files to the new folder.
(macOS and Linux) LabVIEW does not overwrite read-only files, even if you set this parameter to
TRUE.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• new path —
If the operation is unsuccessful, this function sets new path to <Not A Path>.
• cancelled —
• error out —
error out contains error information. This output provides standard error out functionality.
This function copies the original file or directory and renames the copy with the name
that you specify in the last element of the target path. If target path is the path to an
existing file, this function returns a Duplicate Path error. If target path is the path to an
existing directory, the function places the new file or directory inside the existing
directory using the original file or directory name.
For example, if you copy the directory c:\app to d:\app2, the function creates a
new directory d:\app2 with the same contents as c:\app. The second time you
copy the directory, the function creates a new subdirectory d:\app2\app and places
the contents of app there. The third time you copy the directory, the function returns a
Duplicate Path error.
This function also returns an error if the target path is an invalid path, such as if the
specified parent directory is not valid.
Note This function does not automatically append file extensions, such as
.txt, to filenames when it copies or moves files. You must explicitly include
the extension as a part of the new filename that you specify in target path.
If you do not have write permission for the file or directory that you specify in target
path, this function does not copy the file or directory and returns an error. Use the Set
Permissions function to set the permissions for a file or directory.
Delete Function
Deletes the file or directory specified by path. This function does not work for files
inside an LLB.
1786 ni.com
Functions
Inputs/Outputs
• prompt (Delete) —
prompt is the message that appears above the list of files and directories, or folder, in the file
dialog box.
path specifies the absolute path to the file or directory you want to delete. If path is empty
(default), the function displays a dialog box from which you can select a file or directory. If you
specify an empty or relative path, this function returns an error. cancelled is TRUE if you cancel
the dialog box.
entire hierarchy determines whether this function deletes all contents in the folder. The default
is FALSE. If entire hierarchy is TRUE, this function deletes all files and folders within the
specified path.
• confirm (F) —
If confirm is TRUE, the function displays a dialog box and asks you to confirm the delete
operation. The default is FALSE.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• deleted path —
deleted path is the path of the deleted file or folder.deleted path returns <Not A Path> if an
error occurred.
• cancelled —
cancelled is TRUE if you cancel the file dialog box. Otherwise, cancelled is FALSE, even if this
• error out —
error out contains error information. This output provides standard error out functionality.
If path specifies a directory that is not empty or if you do not have write permission for
the file or directory specified by path and its parent directory, this function does not
remove the directory and returns an error. Set entire hierarchy to TRUE to set the
function to delete non-empty directories. Use the Set Permissions function to set the
permissions for a file or directory.
Writes all buffers of the file identified by refnum to disk and updates the directory
entry of the file associated with refnum.
The file remains open, and refnum remains valid. Data written to a file often resides in
a buffer until the buffer fills up or until you close the file. This function forces the
operating system to write any buffer data to the file.
Inputs/Outputs
• refnum —
refnum is the file refnum associated with the file you want to flush.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
1788 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Reopens the instance of the file specified by refnum to temporarily change what read
or write access is denied to other refnums, VIs, or applications.
Inputs/Outputs
• refnum —
refnum is the file refnum associated with the file you want to deny access to.
0 deny read/write—Deny both read and write access to the file (default).
1 deny write-only—Permit read access but deny write access to the file.
2 deny none—Permit both read and write access to the file.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• error out —
error out contains error information. This output provides standard error out functionality.
This function temporarily overrides permissions for a specific instance of the file. This
function does not modify permissions for the file itself. When you grant access to an
instance of a file, LabVIEW removes the override caused by denying access to the file so
that the file permissions and the deny mode associated with refnum determine
whether other refnums, VIs, or applications can read from or write to that instance of
the file. After the file refnum is closed, the permissions for that instance of the file are
no longer overridden.
Returns information about the file or directory specified by path, including its size, its
last modification date, whether it is a directory, whether it is a shortcut, and the
resolved path if the file or directory is a shortcut. This function does not work for files
inside an LLB.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• path —
path specifies the absolute path to the file or directory whose attributes you want to determine.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• directory —
1790 ni.com
Functions
• size —
If path specifies a directory, size indicates the number of items in the directory. (Windows) If
path is an empty path, size indicates the number of drives on the computer. (macOS and Linux)
If path is an empty path, size indicates the number of volumes on the computer. Otherwise, size
indicates the length in bytes of the specified file, whether the file is a datalog file or a byte
stream file.
• last mod —
last mod indicates the date and time at which the file or directory was last modified. The
number is a time zone-independent number of seconds that have elapsed since 12:00 a.m.,
Friday, January 1, 1904, Universal Time [01-01-1904 00:00:00].
• error out —
error out contains error information. This output provides standard error out functionality.
• resolved path —
• shortcut —
Returns information about the volume containing the file or directory specified by
path, including the total storage space provided by the volume and the amount free in
bytes.
Inputs/Outputs
• path —
path specifies the absolute path to the file or directory whose volume attributes you want to
determine.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• volume path —
volume path is a new path that specifies the volume on which the specified file or directory
resides.
• path out —
• size (bytes) —
size (bytes) indicates the amount of storage, in bytes, provided by the specified volume.
• free (bytes) —
free (bytes) indicates the amount of storage, in bytes, available on the specified volume.
• error out —
error out contains error information. This output provides standard error out functionality.
sector size (bytes) indicates the size, in bytes, of the smallest physical storage unit on disk. If you
open a file without buffering, you must make the size of the data in that file a multiple of the
1792 ni.com
Functions
The volume where the file is located determines the sector size.
This function creates all folders that do not already exist in the specified path. If a file
or folder already exists at the specified location, the function returns an error instead
of overwriting the existing file or folder.
Inputs/Outputs
• prompt (Create Folder) —
prompt (Create Folder) is the message that appears above the list of files and directories, or
folder, in the file dialog box.
If you do not wire data to path, the function displays a dialog box from which you can select a
folder. If you specify an empty or relative path, this function returns an error.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• created path —
If the operation is unsuccessful, this function sets created path to <Not A Path>.
• cancelled —
cancelled is TRUE if you cancel the file dialog box. Otherwise, cancelled is FALSE, even if this
function returns an error.
• error out —
error out contains error information. This output provides standard error out functionality.
Returns two arrays of strings listing the names of all files and folders found in path,
filtering both arrays based upon pattern and filtering the filenames array based upon
the specified datalog type.
Inputs/Outputs
• datalog type —
datalog type can be any data type and restricts the filenames returned to only datalog files
containing records of the specified data type. Datalog records contain a time stamp cluster and a
cluster of the front panel data.
• path —
path identifies the folder whose contents you want to determine. If this is not an existing folder,
this function sets filenames and folder names to empty arrays and returns an error. If path
points to a VI library (*.llb), filenames returns the contents of the VI library and folder names
returns an empty array.
• error in —
1794 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• pattern —
pattern restricts the files and directories returned to those whose names match pattern.
The pattern matching in this function is similar to the matching used in matching wildcards in
Windows and Linux filenames and is not like the regular expression matching performed by the
Match Pattern function and the Match Regular Expression function. If you specify characters
other than the question mark character (?) or the asterisk character (*), the function displays
only files or directories that contain those characters. You can use the question mark character
(?) to match any single character. You can use the asterisk character (*) to match any sequence of
zero or more characters.
• path out —
• filenames —
filenames contains the names of the files found in the specified directory. This function does not
return the names of files found in folders within the directory. This function sorts the returned
filenames alphabetically.
• folder names —
folder names contains the names of the folders found in the specified directory. This function
sorts the folder names alphabetically. If path is an empty path, folder names contains the names
of the drives on the computer.
• error out —
error out contains error information. This output provides standard error out functionality.
Note Front panel controls might not update while the function lists files and
folders found in the specified directory. The controls update when the
function finishes listing the files and folders.
Checks whether a file or folder exists on disk at a specified path. This VI works with
standard files and folders as well as files in LLB files.
Inputs/Outputs
• path —
path specifies the path to the file or folder you want LabVIEW to look for.
If you use this VI to check the validity of a network path, make sure that you connect to the
network first.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• dup path —
file or folder exists? is TRUE if the file or folder you specify in path exists on disk and FALSE if the
file or folder you specify in path does not exist on disk. If you wire an empty path to path, file or
folder exists? returns TRUE because the empty path refers to the list of drives mapped to the
computer. (macOS) The empty path refers to the mounted volumes. (Linux) The empty path
refers to the root directory.
• error out —
error out contains error information. This output provides standard error out functionality.
1796 ni.com
Functions
Inputs/Outputs
• Folder Path —
Folder Path specifies the path to the folder or LLB whose contents you want LabVIEW to return.
Note This VI does not support shortcuts and symbolic links to folders or LLB files.
Specify a path to the target folder or LLB instead of its shortcut or symbolic link.
Treat LLBs as Folders? specifies whether to list LLBs as files or folders. If Treat LLBs as Folders?
is TRUE, this VI includes LLBs in the list of folders. If Treat LLBs as Folders? is FALSE, this VI
includes LLBs in the list of files. The default is FALSE.
If Folder Path specifies the path to an LLB, this VI ignores this input and returns all files,
including LLBs, in All Files in Dir.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• pattern —
pattern specifies the pattern for files for which you want to search in Folder Path.
You can use the question mark character (?) to match any single character. You can use the
asterisk character (*) to match any sequence of zero or more characters. For example, if you
want this VI to find a list of the VIs in a folder, specify *.vi for pattern.
• Folders to Exclude —
Folders to Exclude specifies folder names you want to exclude during the recursion. Any folder
you exclude does not appear in the All Folders array. This input is case insensitive.
• All Folders —
All Folders returns a list of all subfolders, and shortcuts to folders in Folder Path.
All Files in Dir returns a list of all files in Folder Path. If Treat LLBs as Folders? is set to TRUE, the
list of files includes LLBs. The list also includes shortcuts to files.
• Number of Files —
Number of Files returns the number of files in the All Files in Dir array.
• error out —
error out contains error information. This output provides standard error out functionality.
Converts path into a string describing a path in the standard format of the platform.
The connector pane displays the default data types for this polymorphic function.
1798 ni.com
Functions
Inputs/Outputs
• path —
path is the path, array of paths, cluster of paths, or array of clusters of paths you want to convert
to a string.
string is the path descriptor(s) represented by path in the standard format for the current
platform. string is of the same data type structure as path.
Converts a string, describing a path in the standard format for the current platform, to
a path.
The connector pane displays the default data types for this polymorphic function.
Inputs/Outputs
• string —
string can be a string or any data structure that contains only strings, such as an array or clusters
of strings.
• path —
If string is not a valid path descriptor on the current platform, the function sets path to <Not a
Path>. path is of the same data type structure as string.
Note If string is <Not a Path>, the function returns a path to <Not a Path>. If
you attempt to use the path, LabVIEW cannot find the file and throws an error.
Converts a path into an array of strings and indicates whether the path is relative.
Inputs/Outputs
• path —
If path is <Not A Path>, the array of strings is empty and relative is FALSE.
• relative —
relative indicates whether the path you converted is a relative path or an absolute path.
The first element is the first step of the path hierarchy. For file systems that support multiple
volumes, the first element is the volume name. If path is a network path, the first element of
array of strings includes the name of the server in addition to the first step of the path hierarchy.
The last element of array of strings is the file or directory specified by the path.
If you have an empty string in the array, the directory location before the empty string
is deleted in the path output. This behavior is similar to moving up a level in directory
hierarchy.
1800 ni.com
Functions
Inputs/Outputs
• relative —
relative indicates whether you want to create a relative path or an absolute path.
If TRUE, the function creates a relative path. If FALSE (default), the function creates an absolute
path. If FALSE and the path specified is not valid as an absolute path (for example, the path
means go up a level), the function sets path to <Not A Path>.
• array of strings —
array of strings contains the names of the components of the path you want to build.
The first element is the highest level of the path hierarchy (the volume name, for file systems
that support multiple volumes), and the last element is the last element of the hierarchy. An
element that contains an empty string tells LabVIEW to go up a level in the hierarchy.
Note Each string in the array of strings must represent a single element of the
complete path. Partial paths, such as test\subtest, are not valid as array
elements because they might produce invalid paths on platforms that use different
directory separators.
• path —
Suppose the path to the VI containing this function is c:\dir1\main.vi. To use this
function to build a relative path to another VI such as c:\dir1\dir2\called.vi,
wire TRUE to relative. In array of strings, enter dir2 as the first element and
called.vi as the second element. The function returns a relative path of dir2\
called.vi. You can use the Build Path function to append the relative path to the
output of the Current VI's Path function.
Inputs/Outputs
• refnum —
refnum is the refnum of an open file whose associated path you want to determine.
If refnum is not a valid refnum, this function sets path to <Not A Path>, meaning refnum is
not associated with any open file. You can wire only file refnums to refnum. You cannot wire
configuration file refnums to refnum.
• path —
Returns the type of the specified path, indicating whether it is an absolute, relative, or
<Not A Path>.
This function does not verify that the path exists on the computer. It checks only the
syntax of the path. Use the File/Directory Info function to verify that a file or directory
exists on the computer.
Inputs/Outputs
• path —
• type —
1802 ni.com
Functions
UNC file paths are absolute file paths. Use two leading backslashes (\\) to represent UNC file
paths. type returns <Not A Path> only when you wire the Not A Path constant to this
function.
0 Absolute path
1 Relative path
2 <Not A Path>
Compares Path 1 to Path 2 and returns a relative path between the two paths, the
common path between the two paths, and a Boolean that indicates whether the paths
are on the same path hierarchy level.
Inputs/Outputs
• Path 1 —
• Path 2 —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
Relative Path from 1 to 2 returns the relative path you have to take on disk to get from Path 1 to
Path 2.
• Common Path —
Common Path returns the part of the absolute path that Path 1 shares with Path 2.
Path 2 Relative to Path 1? is TRUE if Path 1 is on the same directory level as Path 2. Otherwise,
this output is FALSE.
• error out —
error out contains error information. This output provides standard error out functionality.
Returns the file extension, without the period (.), of a file you specify.
Inputs/Outputs
• file —
file specifies the path to the file whose extension you want LabVIEW to return.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
1804 ni.com
Functions
• dup file —
lowercase file extension returns the extension of the file, without the period (.). LabVIEW always
returns a lowercase file extension, even if file contains uppercase letters.
filename without extension returns the name of the file you specify in file without the directory
path, period (.), or file extension. Unlike lowercase file extension, filename without extension
matches the case of the original filename.
• error out —
error out contains error information. This output provides standard error out functionality.
unmodified file extension returns the extension of the file you specify in file, without the period
(.). Unlike lowercase file extension, unmodified file extension matches the case of the original
file extension.
File Checksum
Computes the message digest on the contents of a file. You must manually select the
polymorphic instance you want to use.
Inputs/Outputs
• path —
path specifies the path to the file for which you want to compute the message digest.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digest —
digest returns the SHA-256 message digest of the contents of the file as a hexadecimal string.
• error out —
error out contains error information. This output provides standard error out functionality.
1806 ni.com
Functions
Inputs/Outputs
• path —
path specifies the path to the file for which you want to compute the message digest.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digest —
digest returns the SHA-224 message digest of the contents of the file as a hexadecimal string.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• path —
path specifies the path to the file for which you want to compute the message digest.
• error in —
error in describes error conditions that occur before this node runs. This input provides
• digest —
digest returns the SHA-512 message digest of the contents of the file as a hexadecimal string.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• path —
path specifies the path to the file for which you want to compute the message digest.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digest —
digest returns the SHA-384 message digest of the contents of the file as a hexadecimal string.
• error out —
error out contains error information. This output provides standard error out functionality.
1808 ni.com
Functions
Inputs/Outputs
• path —
path specifies the path to the file for which you want to compute the message digest.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digest —
digest returns the SHA-512/256 message digest of the contents of the file as a hexadecimal
string.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• path —
path specifies the path to the file for which you want to compute the message digest.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digest —
digest returns the SHA-512/224 message digest of the contents of the file as a hexadecimal
string.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• path —
path specifies the path to the file for which you want to compute the message digest.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digest —
1810 ni.com
Functions
digest returns the SHA3-224 message digest of the contents of the file as a hexadecimal string.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• path —
path specifies the path to the file for which you want to compute the message digest.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digest —
digest returns the SHA3-256 message digest of the contents of the file as a hexadecimal string.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• path —
path specifies the path to the file for which you want to compute the message digest.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digest —
digest returns the SHA3-384 message digest of the contents of the file as a hexadecimal string.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• path —
path specifies the path to the file for which you want to compute the message digest.
• error in —
1812 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• digest —
digest returns the SHA3-512 message digest of the contents of the file as a hexadecimal string.
• error out —
error out contains error information. This output provides standard error out functionality.
Returns a unique file path to the temporary directory. This VI only returns a path. It
does not create the temporary file.
Inputs/Outputs
• Temporary File Extension (tmp) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
Unique Temporary File Path returns a unique path to a non-existent file in the temporary
directory. You can use this path with other VIs when you want to create a file in the temporary
directory.
• error out —
error out contains error information. This output provides standard error out functionality.
Datalog
Use the Datalog functions to open and close datalog files, read from and write to
datalog files, get and set datalog file positions, and get and set the number of datalog
records.
Palette
Description
Object
Open/Create/
Opens an existing datalog file, creates a new datalog file, or replaces an existing
Replace
datalog file, programmatically or interactively using a file dialog box. This function
Datalog
does not work for files inside an LLB.
Function
Close File Closes an open file specified by refnum and returns the path to the file associated
Function with the refnum.
Reads records from an open datalog file specified by refnum and returns it in
Read Datalog
record(s). Reading begins at the current datalog position. Use the Set Datalog
Function
Position function to move the current datalog position of the file.
Set Datalog
Moves the current datalog position of the file identified by refnum to the datalog
Position
position indicated by offset (in records) according to the mode in from.
Function
Set Number
of Records Sets the size in records of the datalog file identified by refnum.
Function
Write Datalog Writes record(s) to an open datalog file specified by refnum. Sets the current
Function datalog position to the end of the file before writing.
Get Datalog
Position Returns the current datalog position of the datalog file specified by refnum.
Function
Get Number
of Records Returns the size in records of the datalog file identified by refnum.
Function
1814 ni.com
Functions
You can optionally specify a dialog prompt or default filename. Use this function with
the intermediate Write Datalog or Read Datalog functions. Use the Close File function
to close the reference to the file.
Inputs/Outputs
• record type —
record type can be any data type. Wire a cluster matching the record data type and cluster order
to this input when creating datalog files.
• prompt —
prompt is the message that appears above the list of files and directories or folder in the file
dialog box.
If you do not wire datalog path, the function displays a dialog box from which you can select a
file. If you specify an empty or relative path, this function returns an error.
• operation (0:open) —
operation is the operation to perform. Error 43 occurs if you cancel the dialog box.
0 open (default)—Opens an existing file. Error 7 occurs if the file cannot be found.
1 replace—Replaces an existing file by opening the file and setting its end of file to 0.
2 create—Creates a new file. Error 10 occurs if the file already exists.
3 open or create—Opens an existing file or creates a new file if one does not exist.
replace or create—Creates a new file or replaces a file if it exists. This VI replaces a file by
4
opening the file and setting its end of file to 0.
replace or create with confirmation—Creates a new file or replaces a file if it exists and you
5
give permission. This VI replaces a file by opening the file and setting its end of file to 0.
• access (0:read/write) —
read/write
0
(default)
1 read-only
2 write-only
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• cancelled —
cancelled is TRUE if you cancel the file dialog box or if you do not select the replacement in an
advisory dialog box.
• error out —
error out contains error information. This output provides standard error out functionality.
1816 ni.com
Functions
Error I/O operates uniquely in this function, which closes the file regardless of whether
an error occurred in a preceding operation. This ensures that files are closed correctly.
Inputs/Outputs
• refnum —
refnum is the file refnum associated with the file you want to close.
• error in —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• path —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Inputs/Outputs
• refnum —
refnum is the file refnum associated with the file you want to read. If you want to read more than
one element at a time, wire the count parameter.
• count (1) —
The function returns count data elements in record(s), or if it reaches the end of the file, it
returns all the complete data elements read thus far and an end-of-file error. By default, the
function returns a single data element. If count is –1, the function reads the entire file. If count is
less than –1, the function returns an error.
If count calls for an array of elements and the record(s) data type is an array, the function
automatically returns a cluster of arrays or cluster array because LabVIEW does not allow arrays
of arrays.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• record(s) —
1818 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
The Write Datalog function changes the current datalog position to the end of the file.
You cannot use this function to write to a different position in the file.
Inputs/Outputs
• refnum —
refnum is the file refnum associated with the datalog file whose datalog position you want to
set.
offset (in records) specifies how many records from the location specified by from to set the
datalog position.
• from (0:start) —
from, together with offset (in records), specifies where to set the datalog position. If you wire
offset (in records), from defaults to 0, and the offset is relative to the beginning of the file. If you
do not wire offset (in records), offset (in records) defaults to 0, from defaults to 2, and the
operation starts at the current datalog position.
start—Sets the datalog position offset (in records) from the beginning of the file. If from is 0,
0
offset (in records) should be positive.
end—Sets the datalog position offset (in records) from the end of the file. If from is 1, offset (in
1
records) should be negative.
2 current—Sets the datalog position offset (in records) from the current datalog position.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• error out —
error out contains error information. This output provides standard error out functionality.
LabVIEW reduces the number of records in a datalog file by deleting the last records in
the file until the records equal the number you enter. The number of records you enter
must be smaller than the number of records the datalog file holds. This function is not
a permanent limit, but an operation that affects the records already in the datalog file
one time. For example, if a datalog file contains 10 records and you set the number of
records to 5, then LabVIEW deletes the last 5 records. However, if you add 5 records,
the file then contains 10 records.
Inputs/Outputs
• refnum —
1820 ni.com
Functions
refnum identifies the datalog file whose size you want to set.
• # of records —
# of records is the size in records of the datalog file you want to set.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• refnum —
refnum is the file refnum associated with the file to which you want to write.
• record(s) —
record(s) must be either a data type that matches the record type specified when you open or
create the file or an array of such record types. In the former case, this function writes record(s)
as a single record in the datalog file. If necessary, the function coerces numeric data to the
representation of the record type of this parameter. In the latter case, this function writes each
record in the array separately in the datalog file in row-major order.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• refnum —
refnum is the file refnum associated with the datalog file whose datalog position you want to
get.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
1822 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• refnum —
refnum identifies the datalog file whose size you want to get.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• refnum out —
• # of records —
• error out —
error out contains error information. This output provides standard error out functionality.
Packed Library
Use the Packed Library VIs to get and return data from a packed project library.
Returns the path to a packed project library for the VI you specify in vi
Packed Library Path
reference.
Inputs/Outputs
• packed library path —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• qualified names —
1824 ni.com
Functions
qualified names returns an array of strings with the qualified names of the exported files in the
packed library.
• paths —
paths returns an array with the paths to the exported files in the packed library.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• packed library path —
• qualified name —
qualified name specifies the qualified name of the exported file in the packed library.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• path —
path returns the path to the exported file in the packed library.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• vi reference —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• vi reference out —
packed library path returns a path to the packed library that contains the VI you specify in vi
reference. If the referenced VI is not in a packed library, packed library path returns an empty
path.
• error out —
error out contains error information. This output provides standard error out functionality.
1826 ni.com
Functions
Inputs/Outputs
• directory —
directory specifies the path to the directory to create. If you specify a directory that already
exists, this VI does nothing.
maximum path length specifies the maximum number of characters allowed in the path. The
default is 252.
• permissions —
permissions specifies the permissions setting for the file or directory. The default is 111101101,
which is rwx r-x r-x in common file notation, and means the current user has permission to read,
write, and execute files in this directory; the current user's group members have permission only
to read and execute; all system users have permission only to read and execute.
Refer to Setting Permissions for more information about how to define the permissions you
want to set.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• directory copy —
• directories created —
directories created returns the path to the directory and paths to any parent directories this VI
creates.
• error out —
error out contains error information. This output provides standard error out functionality.
Creates a file at a specified path and any folders within that path that do not exist.
Inputs/Outputs
• file path —
file path specifies the path to the file you want to create. You must specify an absolute path. If
you specify an empty or relative path, this VI returns an error.
• access —
0 read/write
1 read-only
2 write-only
• permissions —
permissions specifies the permissions setting for the file or directory. The default is 111101101,
which is rwx r-x r-x in common file notation, and means the current user has permission to read,
write, and execute files in this directory; the current user's group members have permission only
to read and execute; all system users have permission only to read and execute.
Refer to Setting Permissions for more information about how to define the permissions you
want to set.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
1828 ni.com
Functions
disable buffering specifies if the file opens without buffering. The default is FALSE.
If you want to read or write a data file to a Redundant Array of Independent Disks (RAID),
consider opening the file without buffering to speed up data transfers. To disable buffering, wire
a TRUE value to the disable buffering input.
Note If you have a small amount of data to transfer, you might not notice a
difference if you disable buffering.
• refnum out —
refnum out returns the reference number of the file this VI creates.
• error out —
error out contains error information. This output provides standard error out functionality.
To optimize performance, LabVIEW sometimes creates array slices from the arrays you
wire to certain Array functions. An array slice is an array created from another array,
and it contains some of the elements from the original array. LabVIEW expresses an
array slice as a (sub)array in the Context Help window when you move the cursor
over the wire for the resulting array. For example, (1-D (sub)array of) indicates that
the function creates an array slice, while (1-D array of) indicates the resulting array
contains all of the resulting elements.
Note The Context Help window only differentiates between arrays and
array slices if you allow debugging for the VI on the Execution page of the VI
Properties dialog box.
If LabVIEW creates an array slice, it may create a contiguous array slice, which stores
data adjacently, or a noncontiguous array slice, which stores data nonadjacently. If you
wire an array slice to the Preallocated Read from Binary File function, you might need
to know whether the array slice is contiguous or noncontiguous, because the function
provides different levels of support that depend on the array you use.
Array functions in LabVIEW access data in row-major order. If you arrange the elements
of an array in row-major order, then LabVIEW represents that array in memory
contiguously. LabVIEW represents the following 2D array in memory contiguously as a
1D line from 0 to 15:
If you wire the previous array to the Index Array function and set the index (row) input
to 0, LabVIEW may return an array or a contiguous array slice. The array slice is
contiguous because LabVIEW represents the values in adjacent memory offsets 0, 1, 2,
3.
If you wire the previous array to the Index Array function and set the index (col) input
to 0, LabVIEW may return an array or a noncontiguous array slice. The array slice is
noncontiguous because LabVIEW represents the values in nonadjacent memory offsets
0, 4, 8, 12.
The following functions might return an array slice. If one of these functions returns an
array slice, use the following guidelines to determine whether LabVIEW creates a
contiguous or noncontiguous array slice:
• Array Subset—If LabVIEW represents the output from this function contiguously in
memory, it creates a contiguous array slice.
• Reverse 1D Array—If you wire an array to this function, it creates a noncontiguous
array slice. If you wire an already reversed array slice to this function, it creates a
contiguous array slice.
• Split 1D Array—If you wire an array to this function, it creates a contiguous array
slice. If you wire a noncontiguous array slice to this function, the resulting array
slice is either contiguous or noncontiguous based on how LabVIEW represents the
array slice in memory.
• Transpose 2D Array—This function creates a noncontiguous array slice unless you
wire an already transposed array to the function.
• Cluster to Array—This function creates a contiguous array slice.
• Index Array—This function creates a contiguous array slice unless you specify to
index the array column-wise.
1830 ni.com
Functions
Setting Permissions
The Set Permissions function includes a permissions input that allows you to control
access to files and directories that you create. To define the permissions you want to
set, you can wire the permissions output of the Get Permissions function to the
permissions input of the Set Permissions function, or you can wire a constant or a
control.
The 9 bits that the permissions parameter uses are divided into three sets: user, group,
and others. Each set is divided into three permission categories: read, write, and
execute. Read determines if members of a set can read a file or directory. Write
determines if members of a set can write data to a file or directory. Execute determines
if members of a set can execute the file. A 1 in the bit grants permission.
For example, the following illustration shows how to grant a user permission to read
from, write to, and execute a file, and deny permission from the other two sets.
This structure is based on the Linux permission bits that govern read, write, and
execute permissions for users, groups, and others.
(macOS) The read, write, and execute categories correspond to the See Files, Make
Changes, and See Folders access rights, respectively.
You can enter the value for permissions in any numeric format. For example, you can
change the numeric format to octal format to shorten the binary number with which
you set the file or directory permissions. Octal format shortens each three-bit group
within the parameter to a single octal value. (Windows) For example, to make a file
writable, enter the octal value 200, which corresponds to the binary representation
10000000. (Linux) To grant users read, write, and execute permissions, enter the
octal value 700, which corresponds to the binary value 111000000.
UNC filenames provide the primary means for specifying the location of a file or
directory in a networked environment. In LabVIEW, you can enter and view UNC
filenames in path controls, indicators, and constants in a file dialog box. UNC
filenames use the following path form.
where <machine> is the name of the computer that you want to access on the
network, <share name> is the name of a shared drive on that machine, <dir>\...
consists of the name of the directory and subdirectories in which you want to store the
file, and <file> consists of the name that you want to call the file.
Timing
Use the Timing VIs and Functions to manipulate the speed at which an operation
executes and to retrieve time and date information from the computer clock.
1832 ni.com
Functions
Palette
Description
Object
Tick Count
(ms) Returns the value of the millisecond timer.
Function
Returns the relative current time in seconds. Use the difference between two
High
successive values to measure the elapsed time between the calls. Use this VI to
Resolution
measure time spans with much higher resolution than you can obtain from the Tick
Relative
Count (ms) function. The time resolution of this VI may vary with different operating
Seconds
systems and CPU types.
Waits the specified number of milliseconds and returns the value of the millisecond
Wait (ms)
timer. (Windows) The actual wait time may be up to 1 ms shorter than the requested
Function
wait time.
Waits until the value of the millisecond timer becomes a multiple of the specified
Wait Until
millisecond multiple. Use this function to synchronize activities. You can call this
Next ms
function in a loop to control the loop execution rate. However, it is possible that the
Multiple
first loop period might be short. Wiring a value of 0 to the milliseconds multiple input
Function
forces the current thread to yield control of the CPU.
Stall Data
Delays the data flow of the wire for a specified period of time.
Flow
Get Date/ Converts a timestamp value or a numeric value to a date and time string in the time
Time zone configured for the computer. The function interprets timestamp and numeric
String values as the time-zone-independent number of seconds that have elapsed since 12:00
Function a.m., Friday, January 1, 1904, Universal Time.
Get Date/
Time In Returns a timestamp of the current time. LabVIEW calculates this timestamp using the
Seconds number of seconds elapsed since 12:00 a.m., Friday, January 1, 1904, Universal Time.
Function
Date/Time
To
Creates a timestamp from a set of individual values that specify a date and time.
Seconds
Function
Seconds Converts a timestamp value or a numeric value to a cluster of time values. This
To Date/ function loses fractional seconds of precision when converting the timestamp. If you
Time convert date time rec back into a time stamp, the timestamp may not display the
Palette
Description
Object
Function exactly correct value.
To Time
Stamp Converts a number to a timestamp.
Function
Time
Inserts a time delay into the calling VI.
Delay
Elapsed
Indicates the amount of time that has elapsed since the specified start time.
Time
Waits the specified number of seconds with higher resolution than you can obtain with
the Wait (ms) function. For example, use this VI in applications that require waiting
with sub-millisecond resolution between steps. The resolution of the timer this VI uses
High
varies with different operating systems and CPU types.
Resolution
Polling
Unlike the Wait (ms) function, if the number of seconds you specify is 0, this VI does not
Wait
force the current thread to yield control of the CPU. Use this VI with caution if you are
concerned about high CPU loads: this VI may use polling to achieve high timing
resolution for all or a portion of the wait time.
Format
Date/Time Displays a timestamp value or a numeric value as time in the format you specify using
String time format codes.
Function
Time
Stamp Use the time stamp constant to pass a time and date value to the block diagram.
Constant
The base reference time (millisecond zero) is undefined. That is, you cannot convert
millisecond timer value to a real-world time or date. Be careful when you use this
function in comparisons because the value of the millisecond timer wraps from
1834 ni.com
Functions
(2^32)–1 to 0.
Inputs/Outputs
• millisecond timer value —
Returns the relative current time in seconds. Use the difference between two
successive values to measure the elapsed time between the calls. Use this VI to
measure time spans with much higher resolution than you can obtain from the Tick
Count (ms) function. The time resolution of this VI may vary with different operating
systems and CPU types.
Note The operating system clock this VI uses is not tied to any absolute time
reference and may drift over time when compared to absolute time sources.
Avoid using this VI across long periods of time.
Inputs/Outputs
• relative seconds —
Waits the specified number of milliseconds and returns the value of the millisecond
timer. (Windows) The actual wait time may be up to 1 ms shorter than the requested
wait time.
This function makes asynchronous system calls, but the nodes on the block diagram
execute synchronously. Therefore, this function does not complete execution until the
specified time has elapsed.
Inputs/Outputs
• milliseconds to wait —
milliseconds to wait specifies the number of milliseconds to wait. This function does not wait
longer than 0x7ffffff or 2,147,483,647 ms or about 25 days. To wait for a longer period, execute
the function multiple times or use the High Resolution Polling Wait function. Wiring a value of 0
to this parameter forces the current thread to yield control of the CPU.
millisecond timer value returns the value of the millisecond timer after the wait.
When LabVIEW calls a VI for example, if millisecond timer value is 112 ms and
milliseconds to wait is 10 ms, the VI finishes when millisecond timer value is greater
than or equal to 122 ms.
Use the Wait For Front Panel Activity function to eliminate the need for continually
polling the front panel to determine if the value of a front panel object changes.
Timer resolution is system dependent and might be less accurate than one
millisecond, depending on your platform. Use the Wait Until Next ms Multiple function
or the High Resolution Polling Wait VI to improve resolution.
Note The Wait (ms) function behaves differently on Windows and the
LabVIEW Real-Time Module. (Windows) The Wait (ms) function waits at least
the value specified by the following formula: milliseconds to wait minus 1
1836 ni.com
Functions
ms. For example, if milliseconds to wait is 3 ms, the Wait (ms) function waits
at least 2 ms. If milliseconds to wait is 1 ms, the Wait (ms) function may
return without waiting at all. (Real-Time Module) The Wait (ms) function
waits at least the value specified in the milliseconds to wait input.
Waits until the value of the millisecond timer becomes a multiple of the specified
millisecond multiple. Use this function to synchronize activities. You can call this
function in a loop to control the loop execution rate. However, it is possible that the
first loop period might be short. Wiring a value of 0 to the milliseconds multiple input
forces the current thread to yield control of the CPU.
This function makes asynchronous system calls, but the nodes themselves function
synchronously. Therefore, it does not complete execution until the specified time has
elapsed.
Inputs/Outputs
• millisecond multiple —
millisecond multiple is the input that specifies how many milliseconds lapse when the VI runs.
Wiring a value of 0 to this parameter forces the current thread to yield control of the CPU.
millisecond timer value returns the value of the millisecond timer after the wait.
Delays the data flow of the wire for a specified period of time.
Inputs/Outputs
• milliseconds to wait —
milliseconds to wait specifies the number of milliseconds that this VI waits to continue the data
flow.
• value in —
value in specifies the input value before the delay occurs. This input accepts any data type.
millisecond timer value returns the LabVIEW system time when the delay finishes.
• value out —
Examples
Converts a timestamp value or a numeric value to a date and time string in the time
zone configured for the computer. The function interprets timestamp and numeric
values as the time-zone-independent number of seconds that have elapsed since
1838 ni.com
Functions
Inputs/Outputs
• date format (0) —
Date formats vary with your system configuration. To use a different date format, use the Format
Date/Time String function.
0 short—1/21/94
1 long—Friday, January 21, 1994
2 abbreviated—Fri, Jan 21, 1994
• time stamp —
time stamp can be a timestamp or a numeric. If numeric, this number is the time-zone-
independent number of seconds that have elapsed since 12:00 a.m., Friday, January 1, 1904,
Universal Time [01-01-1904 00:00:00]. The default is the current date and time.
• date string —
date string is the string returned by the function according to the specified date format.
• time string —
time string returns the string formatted according to the configured time zone for your
computer. want seconds? controls whether the string includes seconds.
Returns a timestamp of the current time. LabVIEW calculates this timestamp using the
number of seconds elapsed since 12:00 a.m., Friday, January 1, 1904, Universal Time.
Use the To Double Precision Float function to convert the timestamp value to a lower
precision, floating-point number.
Inputs/Outputs
• current time —
current time returns a timestamp of the LabVIEW system time. LabVIEW calculates this
timestamp using the number of seconds elapsed since 12:00 a.m., Friday, January 1, 1904,
Universal Time [01-01-1904 00:00:00].
Timer resolution is system dependent and might be less accurate than one
millisecond, depending on your platform. When you perform timing, use the Tick
Count (ms) function to improve resolution.
Creates a timestamp from a set of individual values that specify a date and time.
Use the To Double Precision Float function to convert the timestamp value to a lower
precision, floating-point number. The number is measured as the number of seconds
that have elapsed since 12:00 a.m., Friday, January 1, 1904, Universal Time, assuming
DST is set to 1.
1840 ni.com
Functions
Inputs/Outputs
• date time rec —
date time rec is the date and time to convert. If is UTC is TRUE, date time rec is in Universal
Time. If is UTC is FALSE, date time rec is in the configured time zone for the computer.
• fractional second —
• second —
• minute —
• hour —
• day of month —
• month —
• year —
• day of week —
day of week can be from 1 to 7, which correspond to Sunday and Saturday, respectively.
Note This function ignores day of week when building the timestamp.
• day of year —
Note This function ignores day of year when building the timestamp.
• DST —
DST indicates whether the time is standard (0) or daylight savings time (1). You also can set
DST to -1 to have the VI determine the correct time automatically each time you run the VI.
If is UTC is TRUE, the function ignores the DST setting and uses Universal Time.
• is UTC (F) —
is UTC specifies if date time rec is in Universal Time or in the configured time zone for the
computer. If TRUE, date time rec is in Universal Time. The default is FALSE.
• time stamp —
time stamp is the time that represents the date and time specified by the individual values in
date time rec.
If year and month are out of range, the results are unpredictable.
Inputs/Outputs
• time stamp —
1842 ni.com
Functions
time stamp can be a timestamp or a numeric. If numeric, this number is the time-zone-
independent number of seconds that have elapsed since 12:00 a.m., Friday, January 1, 1904,
Universal Time [01-01-1904 00:00:00]. The default is the current date and time.
to UTC specifies if date time rec is in Universal Time or in the configured time zone for the
computer. If TRUE, date time rec is in Universal Time.
date time rec returns the date and time. If to UTC is TRUE, date time rec is in Universal Time. If
to UTC is FALSE, date time rec is in the configured time zone for the computer.
• fractional second —
fractional second is the fractions of a second since the start of the second. Values must be
greater than or equal to 0 and less than 1.
• second —
second is the number of complete seconds since the start of the minute. Values can be 0 to
59.
• minute —
minute is the number of complete minutes since the start of the hour. Values can be 0 to 59.
• hour —
hour is the number of complete hours since midnight. Values can be 0 to 23.
• day of month —
• month —
• year —
• day of week —
• day of year —
• DST —
is DST returns a value for standard (0) or daylight saving time (1). If to UTC is TRUE, is DST is
standard (0).
Inputs/Outputs
• number —
number can be a scalar number, array or cluster of numbers, array of clusters of numbers, and
so on, that represents the amount of seconds from the epoch time of 12 a.m., January 1, 1904
[01-01-1904 00:00:00].
• time stamp —
time stamp is a time-zone-independent number of seconds that have elapsed since 12:00 a.m.,
Friday, January 1, 1904, Universal Time [01-01-1904 00:00:00].
1844 ni.com
Functions
Time Delay
Option Description
Time delay Specifies how many seconds to delay running the calling VI. The default is
(seconds) 1.000.
Inputs/Outputs
• Delay Time (s) —
Specifies how many seconds to wait. The value you wire to this input overrides the value you set
in the configuration dialog box.
• error out —
Contains error information. This output provides standard error out functionality.
Components
Specifies how many seconds to delay running the calling VI. The default is 1.000.
Tick Count
Returns the value of a free running counter in the units specified. The output and
internal counter are both of the configured width.
If you do not have the FPGA, Real-Time, or DSP modules, you can use the Tick Count
(ms) function instead.
Option Description
• Ticks—Sets the counter units to a single clock cycle, the length of which is
determined by the clock rate for which the VI is compiled.
• µSec—Sets the counter units to microseconds.
• mSec—Sets the counter units to milliseconds.
Size of
Specifies the maximum time a timer can track. To save space on the FPGA, use the
Internal
smallest Size of Internal Counter possible for the FPGA VI.
Counter
Inputs/Outputs
• Tick Count(Ticks) —
Returns the value of a free running counter at the time the VI wakes up. A free running counter
rolls over when the counter reaches the maximum of Size of Internal Counter specified in the
configuration dialog box.
1846 ni.com
Functions
Components
Specifies the maximum time a timer can track. To save space on the FPGA, use the
smallest Size of Internal Counter possible for the FPGA VI.
Wait
Delays for a certain time interval before the output data dependence becomes valid.
(Real-Time Module) The Wait Express VI waits the specified count time and then
returns the value of a free running counter. When the Wait Express VI executes, it sleeps
and blocks the execution of other code running in the same thread.
Option Description
• Ticks—Sets the counter units to a single clock cycle, the length of which is
determined by the clock rate for which the VI is compiled.
• µSec—Sets the counter units to microseconds.
• mSec—Sets the counter units to milliseconds.
Option Description
Size of
Specifies the maximum time a timer can track. To save space on the FPGA, use the
Internal
smallest Size of Internal Counter possible for the FPGA VI.
Counter
Inputs/Outputs
• Count(Ticks) —
• Tick Count(Ticks) —
Returns the value of a free running counter at the time the VI wakes up. A free running counter
rolls over when the counter reaches the maximum of Size of Internal Counter specified in the
configuration dialog box.
If you do not have the FPGA, Real-Time, or DSP modules, you can use the Wait (ms)
function instead.
Note (Real-Time Module, Windows) When the Wait Express VI runs inside a
timed structure or a VI set to time-critical priority, it blocks the execution of
all other code in the same timed structure or VI because timed structures and
time-critical VIs are single-threaded. In all other cases, the Wait Express VI
sleeps while other code in the calling VI runs in parallel on separate threads.
Components
Specifies the maximum time a timer can track. To save space on the FPGA, use the
smallest Size of Internal Counter possible for the FPGA VI.
Elapsed Time
Indicates the amount of time that has elapsed since the specified start time.
1848 ni.com
Functions
Option Description
Specifies how much time must elapse before the Time has Elapsed
Elapsed time (seconds)
Boolean is set to TRUE. The default is 1.000.
Automatically reset
Resets the elapsed time marker.
after time target
Inputs/Outputs
• Reset —
Controls the initialization of the internal state of the VI. The default is FALSE.
Specifies how much time must elapse before the Time has Elapsed Boolean is set to TRUE. The
default is 1.
• Auto Reset —
Resets the start time to the value in Present (s) when the Express VI reaches the Time Target (s).
Uses the current time or a time offset from 12:00 a.m., Friday, January 1, 1904 [01-01-1904
00:00:00] as the start time instead of the time this VI first ran.
If the value is 0, the Express VI uses the current time as the start time. The Express VI uses any
other value as the number of seconds offset from 12:00 a.m., Friday, January 1, 1904 [01-01-1904
00:00:00]. For example if the value is 1, the Express VI measures the elapsed time since 12:00:01
a.m., Friday, January 1, 1904 [01-01-1904 00:00:01]. You can wire this input to the Present (s)
output of another Elapsed Time Express VI to get this value.
• Present (s) —
Displays the present time in seconds since 12:00 a.m., Friday, January 1, 1904, Universal Time
[01-01-1904 00:00:00].
If Automatically reset after time target is FALSE, displays (in text format) the date and time the
VI first ran or the time you wire to the Set Start Time (s) input. Otherwise displays the date and
time of the last reset.
• Present Text —
Indicates if the Elapsed Time (s) is greater than the start time plus Time Target (s).
If Automatically reset after time target is FALSE, displays the date and time the VI first ran or the
time you wire to the Set Start Time (s) input. Otherwise displays the date and time of the last
reset.
• error out —
Contains error information. This output provides standard error out functionality.
Displays the amount of time in seconds that has elapsed since the start time and the Present (s)
time.
1850 ni.com
Functions
Displays the amount of time in seconds that has elapsed since the start time.
Components
Specifies how much time must elapse before the Time has Elapsed Boolean is set to
TRUE. The default is 1.000.
Waits the specified number of seconds with higher resolution than you can obtain with
the Wait (ms) function. For example, use this VI in applications that require waiting
with sub-millisecond resolution between steps. The resolution of the timer this VI uses
varies with different operating systems and CPU types.
Unlike the Wait (ms) function, if the number of seconds you specify is 0, this VI does
not force the current thread to yield control of the CPU. Use this VI with caution if you
are concerned about high CPU loads: this VI may use polling to achieve high timing
resolution for all or a portion of the wait time.
Inputs/Outputs
• seconds to wait —
If seconds to wait is equal to or less than 0, the VI does not wait at all. If seconds to wait is 0, this
VI also does not force the current thread to yield control of the CPU.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Displays a timestamp value or a numeric value as time in the format you specify using
time format codes.
Inputs/Outputs
• time format string (%c) —
Time format codes (beginning with %) not recognized by the function as a format code return the
character literally. The default code is %c, which corresponds to the date/time representation
appropriate for the configured time zone for the computer. If time format string is an empty
string, the function uses the default.
• time stamp —
time stamp can be a timestamp or a numeric. If numeric, this number is the time-zone-
independent number of seconds that have elapsed since 12:00 a.m., Friday, January 1, 1904,
Universal Time [01-01-1904 00:00:00]. The default is the current date and time.
UTC format specifies if the output string is in Universal Time or in the configured time zone for
the computer. If TRUE, date/time string is in Universal Time.
1852 ni.com
Functions
This function calculates date/time string by copying time format string and replacing
each of the time format codes with the corresponding values. For example, the time
format string %y%m%d displays timestamp in the format yymmdd. The time format
string %y%m%d displays the date January 30, 2014 as 140130.
The following list describes some of the caveats to consider when you use this
function:
• LabVIEW returns abbreviated weekday and month names as numeric values for
systems that do not support abbreviated names, such as Chinese and Korean.
• The %c, %u, %x, %X, %z, and %Z format codes depend on operating system locale
support. The output of these codes is platform dependent. Interpretation of the
Daylight Saving Time rule also can vary by platform.
• The %p format code only takes effect at locales that use the 12-hour time system.
• Time format codes have leading zeros as necessary to ensure a constant field
width. An optional # modifier before the format code letter removes the leading
zeros from the following format codes: %#d, %#H, %#I, %#j, %#m, %#M,
%#s, %#S, %#U, %#w, %#W, %#X, %#y, %#Y. The # modifier does not
modify the behavior of any other format codes.
Related Information
Use the time stamp constant to pass a time and date value to the block diagram.
The default value is zero seconds since 12:00 a.m., Friday, January 1, 1904, Universal
Time [01-01-1904 00:00:00]. To change the time and date, right-click the constant and
select Data Operations»Set Time and Date from the shortcut menu to display the Set
Time and Date dialog box. You also can right-click the constant and select Data
Operations»Set Time to Now from the shortcut menu to set the time and date value to
the current time and date.
Note If you convert a time stamp to a variant, the variant indicator displays
the current value of the time stamp that you wired to it.
Palette
Description
Object
One
Button
Displays a dialog box that contains a message and a single button.
Dialog
Function
Two
Button
Displays a dialog box that contains a message and two buttons.
Dialog
Function
Three
Button Displays a dialog box that contains a message and three buttons.
Dialog
Simple
Indicates whether an error occurred. If an error occurred, this VI returns a description of
Error
the error and optionally displays a dialog box.
Handler
General
Indicates whether an error occurred. If an error occurred, this VI returns a description of
Error
the error and optionally displays a dialog box.
Handler
Resets the error status to no error, code to 0, and source to an empty string. Use this VI
Clear
when you want to ignore an error. By default, this VI ignores all errors. Wire an error code
Errors
value to specific error code to clear if you only want to ignore a specific error.
1854 ni.com
Functions
Palette
Description
Object
Error Use the Error Ring to quickly select and pass NI or custom error codes throughout your
Ring VI.
Merge
Merges error I/O clusters from different VIs and functions.
Errors
Error Converts an error or warning code to an error cluster. This VI is useful when you receive a
Cluster return value from a shared library call or when you return user-defined error codes.
From
Error Passing error code 0 means that no error occurred and the VI does not modify the error
Code cluster.
Find
Tests the error status of one or more low-level functions or subVIs that produce a
First
numeric error code as output.
Error
Error Use the error cluster constant to pass an error cluster value to the block diagram. Set this
Cluster value by clicking inside the constant with the Operating tool and specifying values for
Constant the status, code, and source elements.
Multiple Use the Multiple Errors VIs to convert an error cluster into different formats or to
Errors manipulate the attributes of an error cluster.
Prompt
Displays a standard dialog box that prompts users to enter information, such as a user
User for
name and password.
Input
Display
Message Displays a standard dialog box that contains an alert or a message for users.
to User
Write to
System Writes a message to the nierrlog system log for storage and subsequent viewing.
Log
Wait For Pauses the execution of the calling VI block diagram in run mode until the function
Palette
Description
Object
Front
Panel
detects front panel activity in the front panel you want to monitor.
Activity
Function
Generate
Front Programmatically generates front panel activity so any VI execution halted by the Wait
Panel on Front Panel Activity function continues executing. No actual changes occur on the
Activity front panel.
Function
Color
Box Use the color box constant to supply a constant color value to the block diagram.
Constant
Listbox
Symbol
Use the listbox symbol ring constant to assign symbols to items in a listbox control.
Ring
Constant
Events Use the Events functions to register events dynamically and to create user events.
Use the Menu functions to modify the menus in LabVIEW applications. Use the functions
Menu
located on the top row of the palette to handle menu selections.
Use the Cursor VIs to change the appearance of the cursor on the front panel of a VI. For
example, if the VI is acquiring or analyzing data and can accept no user input, you might
Cursor want to change the cursor to an hourglass or watch cursor. After the VI finishes acquiring
or analyzing data and can accept user input, you can change the cursor back to the
default cursor.
Help Use the Help VI and functions to link from VIs to HTML files or compiled help files.
1856 ni.com
Functions
Inputs/Outputs
• message —
message is the text to display in the dialog box. The dialog box expands when you add more
text. This function automatically wraps the text based on the size of the dialog box. The dialog
box can display as much text as your computer screen can display. If you want a scrollbar to
show when the size of the dialog box exceeds your desired size, use the Three Button Dialog VI.
With this VI, you can convert a three button dialog box to a one or two button dialog box by
wiring an empty string to a button text input to hide that button.
button name is the name displayed in the dialog box button. The default is OK.
• true —
true returns a value of TRUE when this dialog box closes, regardless of whether you close the
dialog by using the dialog box button or by using the close window button. You may use this
output to provide execution ordering control for downstream functions.
Inputs/Outputs
• message —
message is the text to display in the dialog box. The dialog box expands when you add more
text. This function automatically wraps the text based on the size of the dialog box. The dialog
box can display as much text as your computer screen can display. If you want a scrollbar to
show when the size of the dialog box exceeds your desired size, use the Three Button Dialog VI.
With this VI, you can convert a three button dialog box to a one or two button dialog box by
wiring an empty string to a button text input to hide that button.
T button name is the name displayed on one of the dialog box buttons. The default is OK.
F button name is the name displayed on one of the dialog box buttons. The default is Cancel.
• T button? —
T button? returns a value of TRUE if you click the dialog box button named T button name. If
you click the dialog box button named F button name or click the close window button, T
button? returns a value of FALSE.
Inputs/Outputs
• Justify Message (Left) —
1858 ni.com
Functions
Window Title is the text to display in the title bar of the dialog box.
• message —
message is the text to display in the dialog box. The dialog box has a maximum size based on
your computer screen resolution and system font size. If the text exceeds the maximum size of
the dialog box, a vertical scrollbar appears on the right side. Scroll to display the text beyond the
maximum size.
Left Button Text is the text to display on the left button. The default is Yes.
Center Button Text is the text to display on the center button. The default is No.
Right Button Text is the text to display on the right button. The default is Cancel.
Keyboard Shortcuts specifies keyboard shortcuts for each button in the dialog box.
For example, you can specify a shortcut of <F1> for a Help button in the dialog box. The default is
a shortcut of <Enter> for the left button and no shortcuts for the center and right buttons.
Left Button Key Shortcut specifies a keyboard shortcut for the left button.
• Control —
• Shift —
• Key —
Key must match a key name on the Key Navigation page of the Properties dialog box.
Center Button Key Shortcut specifies a keyboard shortcut for the center button.
• Control —
• Shift —
• Key —
Key must match a key name on the Key Navigation page of the Properties dialog box.
Right Button Key Shortcut specifies a keyboard shortcut for the right button.
• Control —
1860 ni.com
Functions
• Shift —
• Key —
Key must match a key name on the Key Navigation page of the Properties dialog box.
If Allow user to close window? is TRUE (default), the operating system window close button
appears in the dialog box, and the user can close the dialog box without clicking the left, center,
or right buttons.
In most operating systems, the window close button appears in the upper right corner of the
window.
• Which Button? —
0 Left Button
1 Center Button
2 Right Button
Window Close—The user closed the dialog box without clicking the left, center, or right
3
buttons.
If you wire an empty string to a button text input, this VI hides that button. This allows
you to convert a three button dialog box to a one or two button dialog box. For
example, you could use this functionality to hide a Help button when no help is
available. If you wire an empty string to all three button text inputs, this VI displays a
dialog box with a single default OK button.
This VI calls the General Error Handler VI and has the same basic functionality as
General Error Handler but with fewer options.
Inputs/Outputs
• error code (no error:0) —
If error in indicates an error, the VI ignores error code. If not, the VI tests it. A nonzero value
signifies an error.
error source is an optional string you can use to describe the source of error code.
Regardless of its value, the VI outputs the error information and message describing the error.
no dialog—Displays no dialog box. This is useful if you want to have programmatic control over
0
handling errors.
OK message (default)—Displays a dialog box with a single Continue button. After the user
1
acknowledges the dialog box, the VI returns control to the main VI.
continue or stop message—Displays a dialog box with buttons, which the user can use to
2
either continue or stop. If the user selects Stop, the VI calls the Stop function to halt execution.
OK message + warnings—Displays a dialog box with any warnings and a single Continue
3
button. After the user acknowledges the dialog box, the VI returns control to the main VI.
1862 ni.com
Functions
continue/stop + warnings—Displays a dialog box with any warnings and buttons, which the
4 user can use to either continue or stop. If the user selects Stop, the VI calls the Stop function to
halt execution.
error in describes error conditions that occur before this node runs.
This input contains status, code, and source, which provide standard error in cluster element
functionality.
• error? —
error? returns TRUE if an error occurs. If this VI finds an error, it sets the parameters in the error
cluster.
• code out —
• source out —
The source out string is a more descriptive string than the source string in the error in input.
• error out —
error out contains error information. This output provides standard error out functionality.
• message —
message describes the error code that occurred, the source of the error, and a description of the
error.
If the VI does not return a description of the error, you can take several actions to find the error
code description. If more than one description exists for the same error code, the VI displays all
the descriptions, separated by or.
Inputs/Outputs
• [user-defined descriptions] —
If an incoming error matches one in user-defined codes, the VI returns the corresponding
description from user-defined descriptions in message.
• [user-defined codes] —
[user-defined codes] is an array of numeric error codes you can use to define error codes and
messages for your own VIs.
The VI searches this array after searching an internal database of error codes. Error codes -8999
through -8000, 5000 through 9999, and 500,000 through 599,999 are reserved for you to define
your own error messages.
If error in indicates an error, the VI ignores error code. If not, the VI tests it. A nonzero value
signifies an error.
[error source] is an optional string you can use to describe the source of error code.
1864 ni.com
Functions
search ni.com link visible? determines whether the Search ni.com for error hyperlink
appears in the dialog box. Set to TRUE to display the hyperlink. Clicking the hyperlink opens
search results for the error code on ni.com in the default web browser. The hyperlink appears
only for LabVIEW-defined error codes in the development environment. The default is TRUE.
Regardless of its value, the VI outputs the error information and message describing the error.
no dialog—Displays no dialog box. This is useful if you want to have programmatic control over
0
handling errors.
OK message (default)—Displays a dialog box with a single Continue button. After the user
1
acknowledges the dialog box, the VI returns control to the main VI.
continue or stop message—Displays a dialog box with buttons, which the user can use to
2
either continue or stop. If the user selects Stop, the VI calls the Stop function to halt execution.
OK message + warnings—Displays a dialog box with any warnings and a single Continue
3
button. After the user acknowledges the dialog box, the VI returns control to the main VI.
continue/stop + warnings—Displays a dialog box with any warnings and buttons, which the
4 user can use to either continue or stop. If the user selects Stop, the VI calls the Stop function to
halt execution.
error in describes error conditions that occur before this node runs.
This input contains status, code, and source, which provide standard error in cluster element
functionality.
The VI performs the exception action if the error code and error source match the exception
code and exception source. If you use the default value for an exception source, only the
exception code must match for the VI to perform the exception action.
• [exception code] —
[exception code] is the error code that you want to treat as an exception. The default is 0.
• [exception source] —
[exception source] is the error message that you want to use to test for an exception. The default
is an empty string.
• error? —
error? returns TRUE if an error occurs. If this VI finds an error, it sets the parameters in the error
cluster.
• code out —
• source out —
The source out string is a more descriptive string than the source string in the error in input.
• message —
message describes the error code that occurred, the source of the error, and a description of the
error.
If the VI does not return a description of the error, you can take several actions to find the error
code description. If more than one description exists for the same error code, the VI displays all
the descriptions, separated by or.
• error out —
error out contains error information. This output provides standard error out functionality.
1866 ni.com
Functions
Clear Errors
Resets the error status to no error, code to 0, and source to an empty string. Use this VI
when you want to ignore an error. By default, this VI ignores all errors. Wire an error
code value to specific error code to clear if you only want to ignore a specific error.
Inputs/Outputs
• specific error code to clear (0: all) —
specific error code to clear ignores only the specific error code wired to this input. The default
value is 0, which means the VI will ignore all errors.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
The default is no error. If you do not wire a value to specific error code to clear, this node
does not pass the error in input to the error out output.
specific error cleared? indicates whether the error referenced by specific error code to clear has
been cleared.
• error out —
error out contains error information. This output provides standard error out functionality. error
out returns no error by default. If you wire a value to specific error code to clear and error in
contains errors that do not match the error code you wired, error out will return an error.
Error Ring
Use the Error Ring to quickly select and pass NI or custom error codes throughout your
VI.
You can configure the ring to return a built-in error message or you can create a
custom error message for a one-time use. By default, the source string of the error
cluster contains the call chain from the top-level VI to the current VI.
Note To reduce unnecessary execution time in your VIs, place Error Rings
inside a case structure that executes only when the error condition the Error
Ring reports is met.
(Real-Time Module) Exclude the call chain to reduce jitter in real-time applications. You
cannot use the Error Ring in VIs that run on RT targets.
Inputs/Outputs
• error out —
Section Description
Toggles between error and warning.
Indicates if the error includes the call chain.
Description of the error. Right-click the Error Ring and select Visible Items»Error
Explanation Text from the shortcut menu to show or hide the error description.
6:LabVIEW Note You can include format specifiers, such as %s and %T, in the
description. Refer to Defining a Custom Error Code from the Error Ring for
more details.
1868 ni.com
Functions
Section Description
Launches the Select Error dialog box.
After you select the error, you can change the type (Error or Warning) and whether to
include the call chain by clicking the icons on the ring. You also can toggle the error
type and call chain options by right-clicking the Error Ring and selecting Generate
Error, Generate Warning, Include Call Chain, or Exclude Call Chain from the shortcut
menu.
Merge Errors
By default, this function looks for errors beginning with the error in 0 parameter and
reports the first error found. If the function finds no errors, it looks for warnings and
returns the first warning found. If the function finds no warnings, it returns no error.
Use exception control to treat what is normally an error as no error or to treat a
warning as an error.
To configure the function to return an error cluster that combines all the specified
errors/warnings, right-click the function and select Retain All Errors.
Inputs/Outputs
• error in —
• error in —
• error out —
error out returns the first error/warning in the specified inputs or an error cluster that combines
all the specified errors/warnings.
When you place this function on the block diagram, it has two inputs available. You
can add additional inputs to the node by right-clicking an input and selecting Add
Input from the shortcut menu or by resizing the node. To remove inputs, right-click an
input and select Remove Input from the shortcut menu or use resizing handles to
resize the node.
Converts an error or warning code to an error cluster. This VI is useful when you receive
a return value from a shared library call or when you return user-defined error codes.
Passing error code 0 means that no error occurred and the VI does not modify the
error cluster.
Inputs/Outputs
• is warning? (False) —
If is warning? is TRUE, status returns FALSE to indicate that a warning occurred. The default is
FALSE.
If show call chain? is TRUE, source includes the chain of callers from the VI that produced the
error or warning to the top-level VI. The default is FALSE, which indicates to include only the
calling VI.
This VI uses the Call Chain function to obtain the chain of callers.
1870 ni.com
Functions
error code is the code you want to convert to an error cluster. The default is 0, which indicates
that no error occurred.
error message is the error description to appear in the error out cluster.
LabVIEW displays the description in error message when the General Error Handler VI receives
this error out cluster. If error message is empty, LabVIEW uses error code to determine the error
description from existing LabVIEW error codes.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. With the following exception, this output provides
standard error out functionality.
If the value of error in is no error, this VI contains error information that corresponds to the
error code input.
Tests the error status of one or more low-level functions or subVIs that produce a
numeric error code as output.
Inputs/Outputs
• error codes —
error codes is an array of the numeric error codes assembled from local subVIs or functions. If
there is no error indicated in the error in cluster, the VI tests these codes in ascending order for
nonzero values. If the VI finds a nonzero value, error out reflects the error status of that input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• source messages —
source messages contains the source message you want to appear in the error out cluster if the
VI finds an error in error codes. Place each message on a separate line in a string constant or
control. Use of this input is optional.
• error? —
error? is TRUE if the error in cluster or any of the error codes reflects an error.
• error out —
error out contains error information. This output provides standard error out functionality.
If this VI finds an error, it sets the parameters in the error out cluster. You can wire this
cluster to the Simple Error Handler or General Error Handler to identify the error and
describe it to the user.
Use the error cluster constant to pass an error cluster value to the block diagram. Set
this value by clicking inside the constant with the Operating tool and specifying values
for the status, code, and source elements.
Multiple Errors
Use the Multiple Errors VIs to convert an error cluster into different formats or to
manipulate the attributes of an error cluster.
1872 ni.com
Functions
Error Cluster to Converts a cluster of errors into an array of encoded errors. This VI returns an
Array of Errors empty array if the error cluster does not include any errors.
Convert to
Legacy Error Converts an error cluster from JSON encoded format to legacy format.
Cluster
Convert to
Encoded Error Converts an error cluster from legacy format to JSON encoded format.
Cluster
Remove Error
Cluster Removes an attribute from an error cluster.
Attribute
List Error
Returns the names of all attributes stored in an error cluster. For a single cluster
Cluster
that stores multiple errors, this VI lists only the attribute names of the first error.
Attributes
Read Error
Returns the value of an attribute stored in an error cluster. If the attribute is not
Cluster
found, this VI returns an empty string.
Attribute
Converts a cluster of errors into an array of encoded errors. This VI returns an empty
array if the error cluster does not include any errors.
To create a cluster of errors from multiple VIs or functions, use the Merge Errors
function.
Inputs/Outputs
• error —
error specifies an error cluster that you use to check for errors or warnings.
• array of errors —
array of errors returns an array of all the error clusters, encoded in either JSON or legacy format.
Inputs/Outputs
• error in —
error in specifies an error cluster that you use to check for errors or warnings.
• error out —
error out returns the error from error in, encoded in legacy format.
1874 ni.com
Functions
Inputs/Outputs
• error in —
error in specifies an error cluster that you use to check for errors or warnings.
• error out —
error out returns the error from error in, encoded in JSON format.
Updates the value of an attribute stored in an error cluster. If the specified attribute
name is not found, this VI adds the attribute with the specified value to the error
cluster.
For a single cluster that stores multiple errors, this VI updates only the first error.
Inputs/Outputs
• error in —
error in specifies an error cluster that you use to check for errors or warnings.
• attribute name —
attribute name specifies the name of the attribute that you want to update.
• JSON value —
JSON value specifies the value, in JSON format, to set for the attribute.
• error out —
error out returns an error cluster with the value of the specified attribute updated or with the
specified attribute added.
• created? —
created? returns TRUE if the VI added the specified attribute and value to the error cluster. This
output returns FALSE if the VI found the specified attribute name in the error cluster and
updated the value.
Inputs/Outputs
• error in —
error in specifies an error cluster that you use to check for errors or warnings.
• attribute name —
attribute name specifies the name of the attribute that you want to remove.
• error out —
error out returns an error cluster with the attribute removed. If the attribute is not found, this
output returns the same error as error in.
• deleted? —
Returns the names of all attributes stored in an error cluster. For a single cluster that
stores multiple errors, this VI lists only the attribute names of the first error.
1876 ni.com
Functions
Inputs/Outputs
• error —
error specifies an error cluster that you use to check for errors or warnings.
• attribute names —
attribute names returns the names of all attributes stored in the error cluster.
Returns the value of an attribute stored in an error cluster. If the attribute is not found,
this VI returns an empty string.
Inputs/Outputs
• error —
error specifies an error cluster that you use to check for errors or warnings.
• attribute name —
attribute name specifies the name of the attribute that you want to read.
JSON object string returns the JSON objects stored in the error cluster.
• value string —
• found? —
Displays a standard dialog box that prompts users to enter information, such as a user
name and password.
Option Description
Message
to Contains the text to display in the dialog box.
Display
Contains the following options:
Specifies the text that appears on the first button. By default, the text on the first
button is OK.
Specifies the name and data type of the controls that appear in the dialog box. The
Inputs you list here are returned as outputs on the block diagram.
Inputs
Input Name is the name of the control and instructs users what to enter into the control.
Input Data Type is the type of control you want to use in the dialog box. You can choose
from the following options: Number, Checkbox, or Text Entry Box.
1878 ni.com
Functions
Option Description
Contains the following options:
• Delete—
Inserts a new row in the Inputs list above the selected row.
Window
Contains the text to display in the title bar of the dialog box.
Title
Inputs/Outputs
• error in (no error) —
• Enable —
• OK —
Returns TRUE when you click the first button in the dialog box and FALSE when you click the
second button.
• error out —
Contains error information. This output provides standard error out functionality.
Note The behavior of this VI changes depending upon the target. If the
current target does not or might not have a host computer connected, the
configuration dialog box displays warnings next to options that are invalid
without a host. If you configure this VI to prompt for input and run the VI on a
target with no user interface, such as the Real-Time Module with no host
computer connected, this VI returns an error.
Components
Inserts a new row in the Inputs list above the selected row.
Contains the text to display in the title bar of the dialog box.
Specifies the text that appears on the second button. By default, the text on the second
button is Cancel. This option is available only when you place a checkmark in the
Display second button checkbox.
Specifies the text that appears on the first button. By default, the text on the first
button is OK.
Specifies the name and data type of the controls that appear in the dialog box. The
Inputs you list here are returned as outputs on the block diagram.
Displays a standard dialog box that contains an alert or a message for users.
Option Description
Message
to Contains the text to display in the dialog box.
Display
Buttons Contains the following options:
1880 ni.com
Functions
Option Description
Specifies the text that appears on the first button. By default, the text on the first
button is OK.
Inputs/Outputs
• error in (no error) —
• Enable —
• Message —
• OK? —
Returns TRUE when you click the first button in the dialog box and FALSE when you click the
second button.
• error out —
Contains error information. This output provides standard error out functionality.
Components
Specifies the text that appears on the first button. By default, the text on the first
button is OK.
Specifies the text that appears on the second button. By default, the text on the second
button is Cancel. This option is available only when you place a checkmark in the
Display second button checkbox.
Writes a message to the nierrlog system log for storage and subsequent viewing.
Inputs/Outputs
• message —
• severity (Error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
1882 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
You can view the messages this VI writes using the system log viewer for your
operating system.
(NI Linux Real-Time) Open the System Log Viewer page of NI Web-based Configuration
& Monitoring.
(Phar Lap ETS, VxWorks) Open the console. The messages display alongside other
console output.
Pauses the execution of the calling VI block diagram in run mode until the function
detects front panel activity in the front panel you want to monitor.
Inputs/Outputs
• do not wait! (False) —
front panel is a reference to the VI you want to monitor for front panel activity.
You can wire a VI, front panel, or control reference to this input. If you wire a control reference,
the function monitors the activity of the front panel containing the control. If you do not specify
a reference, the function monitors the front panel activity of the VI in which you place the
function.
You must wire a reference to a VI or object in a local application instance. You cannot wire a
reference to a VI or object in a remote application instance.
timeout ms specifies the time, in milliseconds, that the function waits before it lets the VI
continue execution. The default value is –1, which indicates to wait indefinitely.
This function is similar to the Occurrences functions. Use this function if you want a
block diagram to execute only after a user changes the value of a front panel object,
such as when the user clicks a button, turns a knob, or enters data. This function
activates that block diagram if the function detects user activity on the front panel. Use
this function to eliminate the need for continually polling the front panel to determine
if the value of a front panel object changes. You also can use this function to monitor
activity on a remote front panel.
Note You cannot use this function to handle front panel events such as
mouse clicks or keystrokes programmatically. Use the Event structure to
handle front panel events programmatically.
Continual polling can cause a VI to run millions of times and use up system resources
before a user interacts with the front panel. If you use this function, the loop runs only
twice to respond to user input—once to engage the function and a second time when
the user changes the value of a front panel object.
The VI in the following example pauses at the Wait For Front Panel Activity Node until a
user enters a user name or password or clicks the OK button.
1884 ni.com
Functions
The OK button wired to the While Loop passes the user name and password to the
Validate Password VI and to the do not wait! parameter of the Wait For Front Panel
Activity function. If the button were not wired to the function, clicking the OK button
would execute the subdiagram in the While Loop including the Wait For Front Panel
Activity function, which defaults to wait on front panel activity when executed. The
user would have to click the OK button twice to send the user name and password to
the Validate Password VI—one time to wake up the VI and execute the loop and a
second time to wake up the VI and send the user name and password out of the loop
to the Validate Password VI.
Programmatically generates front panel activity so any VI execution halted by the Wait
on Front Panel Activity function continues executing. No actual changes occur on the
front panel.
Inputs/Outputs
• front panel (this VI's panel) —
front panel specifies which VI the function generates front panel activity for. If you do not specify
a reference to a VI, the function generates front panel activity of the VI in which you place the
function.
You must wire a reference to a VI in a local application instance. You cannot wire a reference to a
VI in a remote application instance.
Use the color box constant to supply a constant color value to the block diagram.
Use the color picker to set the color in the color box constant.
You cannot change the value of the color box constant while the VI runs. You can assign
a label to this constant.
Use the listbox symbol ring constant to assign symbols to items in a listbox control.
You typically wire the listbox symbol ring constant to the Item Symbols property in a
Property Node for a listbox.
Events
Use the Events functions to register events dynamically and to create user events.
1886 ni.com
Functions
Palette
Description
Object
Register Dynamically registers events. The events for which you can register depend on the type
For of the reference you wire to each event source input. Wire the event reg refnum out
Events output to an Event structure or to another Register For Events function.
Waits until an event occurs, then executes the appropriate case to handle that event.
The Event structure has one or more subdiagrams, or event cases, exactly one of which
Event executes when the structure executes to handle an event. This structure can time out
Structure while waiting for notification of an event. Wire a value to the Timeout terminal at the
top left of the Event structure to specify the number of milliseconds the Event structure
waits for an event. The default is -1, which indicates never to time out.
Unregister
For
Unregisters all events associated with an event registration refnum.
Events
Function
Flush Discards the least recent notify events from one or more event queues. If the event
Event queue that you want to discard includes filter events, this function stops at the first
Queue filter event in the queue and discards only the events that occurred previous to the
Function stop.
Returns a reference to a user event. LabVIEW uses the user event data type you wire to
Create
determine the event name and data type of the event. Wire the user event out output
User
to a Register For Events function to register for the event. Wire the user event out
Event
output to a Generate User Event function to send the event and associated data to all
Function
Event structures registered for the event.
Generate
User Broadcasts the user event you wire to the user event input and sends the user event
Event and associated event data to each Event structure registered to handle the event.
Function
Destroy
User Releases a user event reference by destroying its associated user event refnum. Any
Event Event structures registered for this user event no longer receive the event.
Function
Examples
Events.lvproj
• labview\examples\Structures\Event Structure\Event
Structure.lvproj
Dynamically registers events. The events for which you can register depend on the
type of the reference you wire to each event source input. Wire the event reg refnum
out output to an Event structure or to another Register For Events function.
Inputs/Outputs
• event registration refnum —
event registration refnum is a reference to an existing event registration a Register For Events
function created.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• event source —
event source 1..n is a reference to an application, VI, control, or user event. References must be
to local objects. You cannot wire a reference to a remote object.
If you wire an array or cluster of refnums to this input, LabVIEW registers all elements of the array
or cluster for the event.
• event registration refnum —
event reg refnum out returns the reference to a new or existing event registration.
• error out —
1888 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
When using dynamic registration, make sure you have a Register For Events function
for each Event structure.
Each event source input is a reference to an application, VI, control, or user event.
Each kind of event source can produce a variety of events. To specify which event you
want LabVIEW to begin detecting for a particular event source, right-click the data
item for the event source and select the event to detect. After this function executes,
LabVIEW detects, or registers, every repetition of that event that occurs. LabVIEW
stores these events in a queue so that an Event structure can handle the events later in
the VI.
You can wire the event reg refnum out terminal of the Register For Events function to
the dynamic event terminals on the Event structure border, to the Unregister For
Events function, or to the top left input of another Register For Events function. If you
wire the top left input of the Register For Events function, the function modifies the
existing registration information associated with that refnum instead of registering the
event again.
Registered events stay registered until you explicitly unregister them or until the VI that
registered the events finishes running or you abort the VI. If the VI which registered for
events was a subVI, events are unregistered when that VI's top-level VI finishes
execution or is aborted. If you use the Run VI method to execute a subVI that registered
for events, events are unregistered when the subVI finishes execution or is aborted.
Note LabVIEW does not include an event registration refnum on the Controls
palette because the event registration refnum is strictly typed and a generic
version does not exist. You can create an event registration refnum by
configuring a Register For Events function or right-clicking the function and
creating a control or indicator from the shortcut menu. You also can select
the part of the application that includes the event registration refnum and
selecting Edit»Create SubVI to create a subVI from the selection. If you later
modify the Register For Events function and change the type of the event
registration refnum, you must recreate the control or indicator to match.
Examples
Event structures that use this event registration refnum no longer receive any dynamic
events. National Instruments recommends that you unregister for events when you no
longer need to handle them. If you do not unregister for events, LabVIEW continues to
generate and queue the events as long as the VI runs, even if no Event structure is
waiting to handle them, which consumes memory and can hang the VI if you enable
front panel locking for the events.
Inputs/Outputs
• event registration refnum —
event registration refnum is a reference to an existing event registration a Register For Events
function created.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• error out —
error out contains error information. This output provides standard error out functionality.
1890 ni.com
Functions
Discards the least recent notify events from one or more event queues. If the event
queue that you want to discard includes filter events, this function stops at the first
filter event in the queue and discards only the events that occurred previous to the
stop.
Inputs/Outputs
• oldest event time —
oldest event time is the event timestamp, in milliseconds, when you want to start keeping
events. This function discards all events previous to the event time you specify. This millisecond
timer can accept the value returned by the Tick Count (ms) function.
event registration refnum is a reference to an event registration refnum associated with the
queue you want to flush.
include static events? specifies whether you want to include the enqueued static events
associated with an Event structure in the flush operation. The default is TRUE if you place the
Flush Event Queue function in an event case of an Event structure. Otherwise, the default is
FALSE.
Note If you wire include static events?, you must place this function inside the Event
structure that handles the static events you want to include or omit from the flush
operation.
event type or object specifies which notify events you want to discard within the criteria set by
oldest event time and keep most recent.
Refer to the Details section for more information about how to specify which events you want to
discard.
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
keep most recent specifies the number of most recent events to keep in the event queue. If you
wire the event type or object parameter, keep most recent affects only the events of the type
you specify. If you flush more than one event queue, keep most recent includes the total
number of events to keep from all specified event queues.
Note If you leave both oldest event time and keep most recent unwired, the
function discards all events in all queues that meet any criteria set by event type or
object. If you wire both oldest event time and keep most recent, this function keeps
all events starting at the event time you specify and all events within the number of
most recent events you specify.
event reg refnum out returns the event registration refnum associated with the flushed event
queue.
• error out —
error out contains error information. This output provides standard error out functionality.
For applications where events occur in rapid succession but the application only needs
the most recent events, such as Mouse Move or Panel Resize events, you can discard
the older events so the application can respond to the newer event data more quickly.
The following examples show how you can wire data to the event type or object
1892 ni.com
Functions
parameter to specify the way the Flush Event Queue function discards events.
If you want to discard more than one event type, such as Mouse Down and Mouse Up,
you can wire an array or cluster of event type enums to the event type or object input,
as shown in the following example.
Flush Event Queue discards both the Mouse Down and the Mouse Up events regardless
of the event source. However, because a constant value of 1 is wired to the keep most
recent parameter, the function keeps one of the most recent Mouse Down or Mouse Up
events in the event queue. Furthermore, the function keeps only one event total rather
than one event for each event type.
You can wire a VI Server reference that points to an object that generates an event, a
user event refnum, and any refnum with associated events to the event type or object
input to discard only the events generated by a specific objects. To discard events from
multiple objects, use an array or cluster of refnums, as shown in the following
example.
Flush Event Queue discards any type of event generated by the objects linked to the
If you want to discard an event only when a specific object generates that event, you
can bundle an enum that contains the event type you want to discard with a refnum
that points to the object that generates that event. You also can create a cluster or
array of event type enum/object pairs to discard multiple events associated with
multiple objects, as shown in the following example.
• —The function discards the Mouse Up or Mouse Down events only when the
Boolean generates those events.
• —The function discards the Mouse Move event only when the 2D Picture control
generates that event.
• — Because the event is not paired with a specific object, the function discards
the Key Up event when any event source generates that event.
Returns a reference to a user event. LabVIEW uses the user event data type you wire to
determine the event name and data type of the event. Wire the user event out output
to a Register For Events function to register for the event. Wire the user event out
output to a Generate User Event function to send the event and associated data to all
Event structures registered for the event.
1894 ni.com
Functions
Inputs/Outputs
• user event data type —
user event data type is a cluster of elements or an individual element whose data type and label
define the data type and name of the user event.
Note LabVIEW uses owned labels to identify data the user event carries, so label
each element of the input with a descriptive owned label. If you do not add a label,
the user event will not appear in the Event Data Node of an Event structure when
added.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
user event out returns the strictly typed user event refnum.
• error out —
error out contains error information. This output provides standard error out functionality.
The user event data type is a cluster of elements or an individual element. If you wire
a cluster to the user event data type input, LabVIEW uses the type name of the cluster
as the name of the user event. The names and data types of the cluster elements
define the event data the user event carries. If you wire an individual data element to
the user event data type input, LabVIEW uses the type name of the element as the
name of the user event and as the name of the single data item it carries, which is the
same data type as the element. The actual value you wire to the function is not
important because LabVIEW uses only the name and data type to define the user
event. The user event out output is a strictly typed refnum that includes the user
event name and event data type.
You can wire the user event out output to the Generate User Event function and the
Destroy User Event function. Wire the user event out output to the Register For Events
function to dynamically register for notification when the user event occurs. When you
handle a user event in an Event structure, the name of the user event appears in the
event selector label at the top of the Event structure, and the user event data fields
appear in the Event Data Node inside the left border of the event case.
Note If you obtain a user event reference in one application instance, you
cannot use that user event reference in another application instance. If you
attempt to use a user event reference in another application instance,
LabVIEW returns error 1500.
Examples
Broadcasts the user event you wire to the user event input and sends the user event
and associated event data to each Event structure registered to handle the event.
Inputs/Outputs
• priority (normal) —
priority specifies the priority of the user event. If you specify high priority, the Generate
User Event function enqueues the user event and associated event data into the event queue in
front of any previously generated normal priority events. The default is normal priority.
0 high priority
1 normal priority (default)
• user event —
1896 ni.com
Functions
user event is a user event refnum the Create User Event function created.
• event data —
event data is the type of data you defined in the user event data type input of the Create User
Event function.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
user event out returns the strictly typed user event refnum.
• error out —
error out contains error information. This output provides standard error out functionality.
The user event input accepts a user event refnum the Create User Event function
created. The data type of the event data input must match the data type of the user
event. For example, if the data type of the user event input is a string, the data type of
the event data input must also be a string. The event data is the type of data you
defined in the user event data type input of the Create User Event function. If the
event is not registered, the Generate User Event function has no effect.
Releases a user event reference by destroying its associated user event refnum. Any
Event structures registered for this user event no longer receive the event.
Inputs/Outputs
• user event —
user event is a user event refnum the Create User Event function created.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• error out —
error out contains error information. This output provides standard error out functionality.
Menu
Use the Menu functions to modify the menus in LabVIEW applications. Use the
functions located on the top row of the palette to handle menu selections.
(Real-Time Module) You cannot use these functions in VIs that run on RT targets.
1898 ni.com
Functions
Examples
Use the menu reference refnum in conjunction with other Menu functions to
programmatically modify the run-time menu of a VI.
(Real-Time Module) You cannot use this function in VIs that run on RT targets.
Inputs/Outputs
• menu reference —
Returns the item tag of the last selected menu item, optionally waiting ms timeout
milliseconds.
If you use this function with an Event structure configured to handle the same menu
item, the Event structure takes precedence and LabVIEW ignores the Get Menu
Selection function. In any given VI, use the Event structure or the Get Menu Selection
function.
(Real-Time Module) You cannot use this function in VIs that run on RT targets.
Inputs/Outputs
• menu reference —
You can obtain this refnum with the Current VI's Menubar function.
• ms timeout (200) —
ms timeout is the maximum amount of time this function checks for a menu selection.
If block menu is TRUE, LabVIEW disables menu tracking after reading an item tag.
After you process the menu selection, you must use the Enable Menu Tracking function to enable
menu tracking. The default is FALSE.
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timed out —
If timed out is TRUE, a user selection was not made within the time specified by ms timeout.
1900 ni.com
Functions
• item tag —
Wire this value to a Case structure selector terminal to handle the menu selection. When you
create a case to handle each menu item, enter application item tags in the case selector label to
handle application menu items.
• item path —
item path describes the position of the item in the menu hierarchy, which is in the format of a
list of menu tags separated by a colon (:).
For example, if you choose the Open menu item from the File menu, the item path is
File:Open.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
If you use the Get Menu Selection function to block a menu, you must use this function
to enable the menu.
(Real-Time Module) You cannot use this function in VIs that run on RT targets.
Inputs/Outputs
• menu reference —
You can obtain this refnum with the Current VI's Menubar function.
• enable (T) —
enable allows you to perform menu tracking if enable is TRUE (default). If enable is FALSE, menu
tracking is disabled.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Inserts menu items specified by item names or item tags into a menu or a submenu
within the menu.
(Real-Time Module) You cannot use this function in VIs that run on RT targets.
Inputs/Outputs
• menu tag —
1902 ni.com
Functions
If you do not specify menu tag, the function inserts the items at the top level of the menu.
• menu reference —
menu reference is the reference to a menu bar in a VI or to a shortcut menu of a control. You can
obtain this refnum with the Current VI's Menubar function or with the MenuRef event data field
of menu events.
• item names —
item names identifies the items to insert in the menu. item names is the string that appears in
the menu. You can wire either item names or item tags, in which case both names and tags have
the same values. If you want to insert only one item, wire a string to item names.
• item tags —
item tags identifies the items to insert in the menu. item tags is the string that is returned if the
menu item is selected. You can wire either item names or item tags, in which case both names
and tags have the same values. If you want to insert only one item, wire a string to item tags.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• after item —
after item specifies the position where the items are inserted. after item can be a tag (string) of
an existing item or a position index (zero based integer) in the menu. To insert at the beginning
of the menu, wire a number less than 0 to after item. To insert at the end of the menu, wire a
number larger than the number of items in the menu. You can insert application items using
application tags. You can insert a separator using the application tag APP_SEPARATOR. The
function always ensures that the tags of all the inserted menu items are unique to the menu
hierarchy by appending numbers to the supplied tags, if necessary.
item tags out returns the actual tags of the inserted items. If the function does not find menu
tag or after item (tag), the function returns an error.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Deletes menu items from the menu or a submenu within the menu.
(Real-Time Module) You cannot use this function in VIs that run on RT targets.
Inputs/Outputs
• menu reference —
You can obtain this refnum with the Current VI's Menubar function or with the MenuRef event
data field of menu events.
• menu tag —
If you do not specify menu tag, the function deletes all items from the menu.
1904 ni.com
Functions
• items —
items can be a tag (string) of an existing item, an array of tags of existing items, a position index
(zero-based integer) of an item in the menu, or an array of position indexes of items in the menu.
The default is to delete all the items in the menu or submenu specified by menu tag. If any of the
specified items have a submenu, the function deletes the submenu and all its contents. Use
application item tags for menus or shortcut menus to delete application menu items. Because
separators do not have unique tags, you can delete them using their positional indexes.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Real-Time Module) You cannot use this function in VIs that run on RT targets.
Inputs/Outputs
• item tag —
item tag identifies the menu item you want to set attributes for.
If item tag is not valid, the function returns an error. Use application item tags to set attributes
for application menu items.
• menu reference —
You can obtain this refnum with the Current VI's Menubar function or with the MenuRef event
data field of menu events.
• item name —
• enabled —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• checked —
• short cut —
short cut is the keyboard equivalent of selecting the menu item with a mouse.
1906 ni.com
Functions
If include Shift key? is TRUE, the shortcut includes the <Shift> key, in addition to the
shortcut key.
If include Ctrl key? is TRUE, the shortcut includes the <Ctrl> key, in addition to the shortcut
key. You can set include Ctrl key? to FALSE only if you select a function key, such as <F1>,
<F2>, and so on, as the shortcut key.
(macOS) The key included is <Command>. (Linux) The key included is <Alt>.
• shortcut key —
• error out —
error out contains error information. This output provides standard error out functionality.
(Real-Time Module) You cannot use this function in VIs that run on RT targets.
Inputs/Outputs
• item tag —
item tag identifies the item whose attributes you want to return.
• menu reference —
You can obtain this refnum with the Current VI's Menubar function or with the MenuRef event
data field of menu events.
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• submenu tags —
submenu tags are the submenu item tags if the item has a submenu.
• item name —
• enabled —
• error out —
error out contains error information. This output provides standard error out functionality.
• checked —
• short cut —
short cut is the keyboard equivalent of selecting this menu item with a mouse.
1908 ni.com
Functions
If include Shift key? is TRUE, the shortcut includes the <Shift> key, in addition to the
shortcut key.
If include Ctrl key? is TRUE, the shortcut includes the <Ctrl> key, in addition to the shortcut
key. You can set include Ctrl key? to FALSE only if you select a function key, such as <F1>,
<F2>, and so on, as the shortcut key. On macOS, the key included is <Command>. On Linux,
the key included is <Alt>.
• shortcut key —
(Real-Time Module) You cannot use this function in VIs that run on RT targets.
Inputs/Outputs
• menu reference —
You can obtain this refnum with the Current VI's Menubar function.
• short cut —
short cut is the keyboard equivalent of selecting the menu item with a mouse.
If include Shift key? is TRUE, the shortcut includes the <Shift> key, in addition to the
shortcut key.
If include Ctrl key? is TRUE, the shortcut includes the <Ctrl> key, in addition to the shortcut
key. You can set include Ctrl key? to FALSE only if you select a function key, such as <F1>,
<F2>, and so on, as the shortcut key. (macOS) The key included is <Command>. (Linux) The
key included is <Alt>.
• shortcut key —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• item tag —
item tag is the tag of the menu item that matches the shortcut.
• item path —
item path describes the position of the item in the menu hierarchy, which is in the format of a
list of menu tags separated by a colon (:).
For example, on Windows, if you do not change the default shortcuts and you pass in <Ctrl-O>
from the menu bar reference of a VI, item path returns File:Open.
• error out —
error out contains error information. This output provides standard error out functionality.
1910 ni.com
Functions
Cursor
Use the Cursor VIs to change the appearance of the cursor on the front panel of a VI.
For example, if the VI is acquiring or analyzing data and can accept no user input, you
might want to change the cursor to an hourglass or watch cursor. After the VI finishes
acquiring or analyzing data and can accept user input, you can change the cursor back
to the default cursor.
(Real-Time Module) You cannot use these VIs in VIs that run on RT targets.
Palette
Description
Object
Create
Cursor Returns a reference to a cursor in a cursor file.
From File
Changes the appearance of the cursor on the front panel of a VI. Wire data to the icon
Set Cursor
input to determine the polymorphic instance to use or manually select the instance.
Destroy Closes a reference to a cursor and changes the cursor to the default cursor in any VIs
Cursor using the reference.
Changes the appearance of the cursor on the front panel of a VI to the system busy
Set Busy
cursor. You also can use this VI to disable the mouse and keyboard on the front panel.
Changes the appearance of the cursor on the front panel of a VI from a busy cursor to
Unset Busy
the default LabVIEW cursor and enables the mouse on the front panel.
Examples
(Real-Time Module) You cannot use this VI in VIs that run on RT targets.
Inputs/Outputs
• cursor file —
cursor file is the path to the file that contains the cursor for which you want a reference.
If the file does not exist or if the file is not a valid cursor file, LabVIEW returns error code 7.
(macOS) The file must be a resource file. You also must wire the ID of the cursor you want to use
to the cursor resource ID input. If the cursor image is larger than 16 × 16 pixels, the VI crops the
image to that size.
(Linux) The file must have a .png extension. You cannot use animated cursors. Cursors are
monochrome, and the shape of the cursor is determined by the how you set the transparency
around the .png file.
• cursor resource ID —
(macOS) cursor resource ID is the ID for a cursor in the resource file wired to cursor file.
If the cursor is animated, cursor resource ID must be less than 128. If the cursor is not
1912 ni.com
Functions
• hotspot —
hotspot contains the coordinates of the cursor hot spot starting from the upper left corner. You
cannot set the hot spot for animated cursors.
National Instruments recommends that you set the hot spot only on Linux. Windows and macOS
cursors already have hot spots, but you must set the hot spot for cursors on Linux.
• x—
x is the horizontal coordinate of the hot spot, which increases to the right. The default is –1,
which means the VI sets the horizontal coordinate of the hot spot to the horizontal
coordinate of the default hot spot for the cursor.
• y—
y is the vertical coordinate of the hot spot, which increases to the bottom. The default is –1,
which means the VI sets the vertical coordinate of the hot spot to the vertical coordinate of
the default hot spot for the cursor.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• cursor ID —
cursor ID is a reference to the cursor in the cursor file. If a reference to the cursor already exists,
the VI returns the existing reference.
Wire this reference to the Set Cursor or Set Busy VIs to change the appearance of the cursor on
the front panel of the VI.
Use the Destroy Cursor VI to close the cursor reference after you set the cursor.
• error out —
error out contains error information. This output provides standard error out functionality.
Set Cursor
Changes the appearance of the cursor on the front panel of a VI. Wire data to the icon
input to determine the polymorphic instance to use or manually select the instance.
(Real-Time Module) You cannot use this VI in VIs that run on RT targets.
Examples
(Real-Time Module) You cannot use this VI in VIs that run on RT targets.
Inputs/Outputs
• icon —
icon is the system or LabVIEW cursor you want to use on the front panel of the VI.
1914 ni.com
Functions
Uses the default LabVIEW cursor. For example, if automatic tool selection is enabled and you
0 move the cursor over a ring control, LabVIEW uses the cursor of the Operating tool. If you
move the cursor over a string control, LabVIEW uses the cursor of the Labeling tool.
(Windows) LabVIEW uses this system cursor. (macOS and Linux) LabVIEW uses the system
1
cursor that corresponds to this Windows cursor.
(Windows) LabVIEW uses this system cursor. (macOS and Linux) LabVIEW uses the system
2
cursor that corresponds to this Windows cursor.
(Windows) LabVIEW uses this system cursor. (macOS and Linux) LabVIEW uses the system
3
cursor that corresponds to this Windows cursor.
(Windows) LabVIEW uses this system cursor. (macOS and Linux) LabVIEW uses the system
4
cursor that corresponds to this Windows cursor.
(Windows) LabVIEW uses this system cursor. (macOS and Linux) LabVIEW uses the system
5
cursor that corresponds to this Windows cursor.
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
VI reference is a reference to the VI for which you want to change the cursor. The default is a
reference to the current VI.
You can use the Open VI Reference function to obtain a reference to another VI.
This input is useful if multiple front panels are open, but you want to change the cursor in only
one front panel. If the front panel of the VI for which you want to change the cursor is not open,
this VI returns an error.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• previous cursor ID —
previous cursor ID is a reference to the cursor on the front panel before this VI ran.
Wire this output to another instance of the Set Cursor VI to change the cursor back to the
previous cursor.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1916 ni.com
Functions
input to determine the polymorphic instance to use or manually select the instance.
(Real-Time Module) You cannot use this VI in VIs that run on RT targets.
Inputs/Outputs
• cursor ID —
cursor ID is a reference to the cursor you want to use on the front panel of the VI.
If the cursor reference is invalid, LabVIEW changes the cursor to the default LabVIEW cursor and
returns control of the cursor to LabVIEW.
VI reference is a reference to the VI for which you want to change the cursor. The default is a
reference to the current VI.
You can use the Open VI Reference function to obtain a reference to another VI.
This input is useful if multiple front panels are open, but you want to change the cursor in only
one front panel. If the front panel of the VI for which you want to change the cursor is not open,
this VI returns an error.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• previous cursor ID —
previous cursor ID is a reference to the cursor on the front panel before this VI ran.
Wire this output to another instance of the Set Cursor VI to change the cursor back to the
previous cursor.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Destroy Cursor
Closes a reference to a cursor and changes the cursor to the default cursor in any VIs
using the reference.
(Real-Time Module) You cannot use this VI in VIs that run on RT targets.
Inputs/Outputs
• cursor ID —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
1918 ni.com
Functions
Examples
Set Busy
Changes the appearance of the cursor on the front panel of a VI to the system busy
cursor. You also can use this VI to disable the mouse and keyboard on the front panel.
Use the Unset Busy VI to change the cursor back to the default LabVIEW cursor and to
enable the mouse and keyboard again. Using the Set Busy VI is similar to using the Set
Cursor VI and wiring 1 to the icon input.
(Real-Time Module) You cannot use this VI in VIs that run on RT targets.
Inputs/Outputs
• cursor ID —
cursor ID is a reference to the cursor you want to use on the front panel of the VI. The default is
the system busy cursor.
If the cursor reference is invalid, LabVIEW changes the cursor to the default LabVIEW cursor and
returns control of the cursor to LabVIEW.
VI reference is a reference to the VI for which you want to change the cursor. The default is a
reference to the current VI.
You can use the Open VI Reference function to obtain a reference to another VI.
This input is useful if multiple front panels are open, but you want to change the cursor in only
one front panel. If the front panel of the VI for which you want to change the cursor is not open,
this VI returns an error.
If disable click? is TRUE (default), the VI disables the mouse and keyboard on the front panel.
You must use the Unset Busy VI to enable the mouse and keyboard again.
If you disable the mouse and keyboard on the front panel, the user still can click the Abort
Execution button on the toolbar.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• previous cursor ID —
previous cursor ID is a reference to the cursor on the front panel before this VI ran.
Wire this output to the Set Cursor VI to change the cursor back to the previous cursor.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Unset Busy
Changes the appearance of the cursor on the front panel of a VI from a busy cursor to
the default LabVIEW cursor and enables the mouse on the front panel.
1920 ni.com
Functions
Use this VI only after you use the Set Busy VI.
(Real-Time Module) You cannot use this VI in VIs that run on RT targets.
Inputs/Outputs
• VI reference (current VI) —
VI reference is a reference to the VI for which you want to change the cursor. The default is a
reference to the current VI.
You can use the Open VI Reference function to obtain a reference to another VI.
This input is useful if multiple front panels are open, but you want to change the cursor in only
one front panel. If the front panel of the VI for which you want to change the cursor is not open,
this VI returns an error.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Help
Use the Help VI and functions to link from VIs to HTML files or compiled help files.
(Real-Time Module) You cannot use the objects on this palette in VIs that run on RT
targets.
Palette
Description
Object
Control
Help
Modifies the Context Help window by showing, hiding, or by repositioning the window.
Window
Function
Get Help
Window
Returns the status and the position of the Context Help window.
Status
Function
Control
Online Controls a compiled help file by displaying the table of contents, jumping to a specific
Help topic in the file, or closing the help file.
Function
Open Displays a URL or HTML file in the default Web browser. If the URL or path you wire to this
URL in VI contains a space character, the VI encodes the space as %20 before displaying the URL
Default or HTML file in the Web browser. Wire data to the URL input to determine the
Browser polymorphic instance to use or manually select the instance.
Modifies the Context Help window by showing, hiding, or by repositioning the window.
(Real-Time Module) You cannot use this function in VIs that run on RT targets.
1922 ni.com
Functions
Inputs/Outputs
• Show —
If Show is TRUE, LabVIEW displays the Context Help window. If FALSE, LabVIEW hides the
Context Help window. The default is to maintain the current visibility of the Context Help
window.
Top Left Corner indicates the new position of the Context Help window and contains numbers
that represent points offset from the upper left corner of the screen.
• Horizontal —
Horizontal is the number of points to place the Context Help window to the right of the
upper left corner of the screen.
• Vertical —
Vertical is the number of points to place the Context Help window below the upper left
corner of the screen.
Returns the status and the position of the Context Help window.
(Real-Time Module) You cannot use this function in VIs that run on RT targets.
Inputs/Outputs
• Show —
Top Left Corner indicates the position of the Context Help window and contains numbers that
represent points offset from the upper left corner of the screen.
• Horizontal —
Horizontal is the number of points that the Context Help window is to the right of the upper
left corner of the screen.
• Vertical —
Vertical is the number of points that the Context Help window is below the upper left corner
of the screen.
Controls a compiled help file by displaying the table of contents, jumping to a specific
topic in the file, or closing the help file.
You can create a compiled help file and use this function to link from a VI to the help
file. You also can use this function to display an HTML file in the default browser.
(Real-Time Module) You cannot use this function in VIs that run on RT targets.
Inputs/Outputs
• Operation —
1924 ni.com
Functions
Contents—Displays the table of contents of the help file. If you use this function to control a
0 .chm file, setting this input to 0 displays the table of contents, index, or search tab, depending
on which tab was visible the last time you closed the .chm file.
Key—Displays a specific topic in the help file using a keyword in the help file index or using the
1
name of an individual HTML file in the compiled help file.
2 Close—Closes the help file.
String to search for is the index keyword or HTML filename for the topic in the help file that you
want to display.
If this string contains an index keyword, the string must match the index keyword as it appears in
the help file index. To jump to a topic with a multi-level index keyword, enter the first-level index
keyword, a colon, and the second-level index keyword. Do not separate the elements with
spaces. For example, a error codes:GPIB string jumps to a topic with a first-level index
keyword of error codes and a second-level index keyword of GPIB.
If Path to the help file contains a path to an HTML Help (.chm) file, this string can contain the
filename (.htm or .html) of an individual HTML file in the HTML Help project.
Path to the help file is the path or symbolic path to the compiled help file you want to control.
The help file can have a .chm or .hlp extension. (macOS and Linux) If this input contains a
path to a .chm file and the file does not exist, LabVIEW ignores this input. However, if String to
search for contains an HTML filename and that HTML file is in the help\html\help.chm
directory where help.chm is the filename you wire to this input, LabVIEW displays that HTML
file in the default browser. If this input contains a path to a .chm file and String to search for
contains an index keyword, this function does not display an HTML file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Displays a URL or HTML file in the default Web browser. If the URL or path you wire to
this VI contains a space character, the VI encodes the space as %20 before displaying
the URL or HTML file in the Web browser. Wire data to the URL input to determine the
polymorphic instance to use or manually select the instance.
(Real-Time Module) You cannot use this VI in VIs that run on RT targets.
(Real-Time Module) You cannot use this VI in VIs that run on RT targets.
Inputs/Outputs
• URL —
URL is the URL you want to display in the default Web browser.
1926 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• URL out —
• error out —
error out contains error information. This output provides standard error out functionality.
(Real-Time Module) You cannot use this VI in VIs that run on RT targets.
Inputs/Outputs
• path —
path is the path to the HTML file you want to display in the default Web browser.
If the path is relative, the VI interprets the path as relative to the application directory, such as
the labview directory or the directory containing the stand-alone application.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• URL out —
• error out —
error out contains error information. This output provides standard error out functionality.
Synchronization
Use the Synchronization VIs and functions to synchronize tasks executing in parallel
and to pass data between parallel tasks.
Palette
Description
Object
Use the Notifier Operations functions to suspend the execution of a block diagram
Notifier
until you receive data from another section of the block diagram or from another VI
Operations
running in the same application instance.
Queue Use the Queue Operations functions to create a queue for communicating data
Operations between sections of a block diagram or from another VI.
Use the Semaphore VIs to limit the number of tasks that can simultaneously operate
on a shared (protected) resource. A protected resource or critical section of code
Semaphore
might include writing to global variables or communicating with external
instruments.
Use the Rendezvous VIs to synchronize two or more separate, parallel tasks at
specific points of execution. Each task that reaches the rendezvous waits until the
Rendezvous
specified number of tasks are waiting, at which point all tasks proceed with
execution.
1928 ni.com
Functions
Palette
Description
Object
Indicates that a subVI or section of a block diagram is running for the first time. The
First Call?
First Call? function returns TRUE only the first time you call it after you click the Run
Function
button.
Passes through the values of the input wires after the upstream code executes.
Synchronize
Data Flow Use this VI to synchronize multiple parallel code paths at a single point of data flow to
ensure a certain execution order.
Notifier Operations
Use the Notifier Operations functions to suspend the execution of a block diagram
until you receive data from another section of the block diagram or from another VI
running in the same application instance.
You cannot use notifiers to communicate with VIs on other computers. For example,
you cannot use notifiers to communicate across a network or the VI Server.
Unlike the Queue Operations functions, the Notifier Operations functions do not buffer
sent messages. If no nodes are waiting on a message when it is sent, the data is lost if
another message is sent. Notifiers behave like single-element, bounded, lossy queues.
When using a Notifier Operation function in a While Loop, the stop condition should be
connected to the execution of the function.
Inputs/Outputs
• name (unnamed) —
name contains the name of the notifier that you want to obtain or create.
1930 ni.com
Functions
element data type is the type of data that you want the notifier to contain.
create if not found? specifies whether you want to create a new notifier if one with the same
name as name does not exist.
If TRUE (default), the function creates a notifier if one with the same name does not exist.
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• notifier out —
notifier out is a reference to the existing named notifier or the new notifier created by this
function.
• created new? —
• error out —
error out contains error information. This output provides standard error out functionality.
Use named notifiers to pass data between two sections of a block diagram or between
two VIs. If you do not wire name, the function creates a new, unnamed notifier
reference. If you wire name, the function first searches for an existing notifier with the
same name and returns a new reference to the existing notifier. If a notifier with the
same name does not already exist and create if not found? is TRUE, the function
creates a new, named notifier reference.
If you use the Obtain Notifier function to return a reference to a named notifier inside a
loop, LabVIEW creates a new reference to the named notifier each time the loop
iterates. If you use Obtain Notifier in a tight loop, LabVIEW slowly increases how much
memory it uses because each new reference uses an additional four bytes. These bytes
are released automatically when the VI stops running. However, in a long-running
application it may appear as if LabVIEW is leaking memory since the memory usage
keeps increasing. To prevent this unintended memory allocation, use the Release
Notifier function in the loop to release the notifier reference for each iteration.
All Wait on Notification and Wait on Notification from Multiple functions currently
waiting on the notifier stop waiting and continue to execute.
Inputs/Outputs
• notifier —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• notifier out —
1932 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Synchronization\Notifier\Simple
Notifier.vi
Erases any message currently in a notifier and returns the cancelled message.
Inputs/Outputs
• notifier —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• notifier out —
• canceled notification —
• error out —
error out contains error information. This output provides standard error out functionality.
If any Wait on Notification or Wait on Notification from Multiple functions received the
message before the call to this function, those functions continue to execute. This
function does not recall or reset any wait functions. After you cancel a notification, any
subsequent wait functions wait until the notifier receives another message. Canceling
a notification before the notifier has a message does not result in an error.
Returns information about the current state of a notifier, such as the last uncancelled
notification sent to the notifier.
Inputs/Outputs
• notifier —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• notifier name —
1934 ni.com
Functions
• notifier out —
• latest notification —
latest notification is the most recent uncancelled notification sent to the notifier.
If no notification is available, the function returns the zero value for the element data type you
wired in the Obtain Notifier function.
• # waiting —
These functions include Wait on Notification and Wait on Notification from Multiple.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• notifier —
If FALSE (default) and you want to destroy the notifier, call the Release Notifier function a
number of times equal to the number of times you obtained a reference to the notifier or stop all
VIs using the notifier reference. If TRUE, the function destroys the notifier and you do not have to
call the function multiple times or stop all VIs using the notifier reference.
• error in (no error) —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• notifier name —
• last notification —
If no notification is available, the function returns the zero value for the element data type you
wired in the Obtain Notifier function.
• error out —
error out contains error information. This output provides standard error out functionality.
You can use the Obtain Notifier function to obtain a reference to the same notifier with
the same name multiple times. To destroy a notifier, call the Release Notifier function a
number of times equal to the number of times you obtained a reference to the notifier
or stop all VIs using the notifier reference.
If force destroy? is TRUE, this function releases all references to the notifier and
destroys the notifier.
Any Wait on Notification or Wait on Notification from Multiple functions waiting on the
notifier time out and return error code 1122.
1936 ni.com
Functions
When the notifier receives a message, this function continues to execute. Use the Send
Notification function to send the message. If a notifier reference becomes invalid such
as when another function closes it, the function stops waiting and returns error code
1122. If the notifier does not contain a message, this function waits until the notifier
receives a message.
Inputs/Outputs
• notifier —
ignore previous indicates whether to ignore messages that LabVIEW sends to the notifier before
it calls this function.
If TRUE and the notifier contains a message before you call this function, this function waits until
the notifier receives another message. If FALSE (default) and the notifier contains a message
before you call this function, this function continues to execute.
• timeout in ms (-1) —
timeout in ms specifies the time, in milliseconds, that the function waits for the notifier to
receive a message.
If the function waits timeout in ms and the notifier does not receive a message, timed out? is
TRUE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• notifier out —
• notification —
timed out? is TRUE if the notifier does not receive a message before the function times out or if
an error occurs.
• error out —
error out contains error information. This output provides standard error out functionality.
Each unique instance of this function remembers the timestamp of the last message it
receives.
If ignore previous is FALSE, each instance of the Wait on Notification function waits if
the message in the notifier has a time stamp for the same time that the instance of the
function last executed. If the message is new, then the function returns the message.
When ignore previous is TRUE, the Wait on Notification function always waits for a
new message, even if the message currently in the notifier is one it has never seen
before.
If you experience deadlock when you use this function repeatedly with different
notifiers, use the Wait on Notification with Notifier History function to store
timestamps for each individual notifier. This function prevents deadlock.
This function does not remove the message from the notifier. Although a specific
instance of the function returns a message only once, other instances of the function
or to the Wait on Notification from Multiple function repeat the message until you call
the Send Notification function with a new message.
1938 ni.com
Functions
Waits until at least one of the notifiers you specify receives a message.
When one of the notifiers receives a message, this function continues to execute. Use
the Send Notification function to send the message. If a notifier reference becomes
invalid, such as when another function closes it, this function stops waiting and
returns error code 1122. If the notifier does not contain a message, this function waits
until the notifier receives a message.
Inputs/Outputs
• notifiers —
ignore previous indicates whether to ignore messages that LabVIEW sends to the notifier before
it calls this function.
If TRUE and the notifier contains a message before you call this function, this function waits until
the notifier receives another message. If FALSE (default) and the notifier contains a message
before you call this function, this function continues to execute.
• timeout in ms (-1) —
timeout in ms specifies the time, in milliseconds, that the function waits for the notifier to
receive a message.
If the function waits timeout in ms and the notifier does not receive a message, timed out? is
TRUE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• notifiers out —
notifiers out returns an array of the notifier references from which messages were received.
• notifications —
This data type changes to match the subtype of notifiers, unless the subtype is an array. If the
subtype is an array, the data type becomes a cluster of arrays.
• timed out? —
timed out? is TRUE if the notifier does not receive a message before the function times out or if
an error occurs.
• error out —
error out contains error information. This output provides standard error out functionality.
Each unique instance of this function remembers the time stamp of the last message it
receives. If this function receives only one message, the function stops remembering
which message the time stamp refers to, and the only item filled in the notifiers array is
the first element.
If you experience deadlock when you use this function repeatedly with different
notifiers, use the Wait on Notification from Multiple with Notifier History function to
store time stamps for each individual notifier. This function prevents deadlock.
If ignore previous is FALSE, each instance of the Wait on Notification from Multiple
function determines if one or more notifier has a message newer than the time stamp
most recently received by this function. If one or more of the notifiers has new
messages, all messages are returned.
When ignore previous is TRUE, this function always waits for a new message, even if
the message currently in the notifier is one it has never seen before.
1940 ni.com
Functions
This function does not remove the message from the notifier. Although a specific
instance of the function returns a message only once, other instances of the function
or to the Wait on Notification function repeat the message until you call the Send
Notification function with a new message.
Examples
• labview\examples\Synchronization\Notifier\Wait on
Multiple Notifiers.vi
Use the Advanced Notifier Waiting functions to prevent dropped messages and other
problems when you use the functions repeatedly with different notifiers.
Inputs/Outputs
• notifier —
ignore previous indicates whether to ignore messages that LabVIEW sends to the notifier before
it calls this function.
If TRUE and the notifier contains a message before you call this function, this function waits until
the notifier receives another message. If FALSE (default) and the notifier contains a message
before you call this function, this function continues to execute.
• timeout in ms (-1) —
timeout in ms specifies the time, in milliseconds, that the function waits for the notifier to
receive a message.
If the function waits timeout in ms and the notifier does not receive a message, timed out? is
TRUE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• notifier out —
• notification —
1942 ni.com
Functions
timed out? is TRUE if the notifier does not receive a message before the function times out or if
an error occurs.
• error out —
error out contains error information. This output provides standard error out functionality.
Each unique instance of this function remembers the timestamp of the most recent
message that each individual notifier receives.
Maintaining notifier history prevents dropped messages and other problems when you
use this function repeatedly with different notifiers. When the notifier receives a
message, this function continues to execute. Use the Send Notification function to
send the message. If a notifier reference becomes invalid when another function closes
it, the function stops waiting and returns error code 1122. If the notifier does not
contain a message, this function waits until the notifier receives a message.
Maintaining notifier history also causes this function to run slower than the Wait on
Notification function. The Wait on Notification function does not maintain notifier
history and might experience deadlock when you use it repeatedly with different
notifiers.
Use the Wait on Notification from Multiple with Notifier History function to handle an
array of notifier references.
If ignore previous is FALSE, each instance of the Wait on Notification with Notifier
History function waits if it has not received notification. The function also waits if the
timestamp of the current message is the same as when the instance of the function
last executed. If the message is new, then the function returns the message.
If ignore previous is TRUE, the Wait on Notification with Notifier History function
always waits for a new message, even if the message currently in the notifier is one the
function has never seen before.
This function does not remove the message from the notifier. Although a single
instance of the function returns a message only once, other instances of the function
or the Wait on Notification from Multiple function repeat the message until you call the
Inputs/Outputs
• notifiers —
ignore previous indicates whether to ignore messages that LabVIEW sends to the notifier before
it calls this function.
If TRUE and the notifier contains a message before you call this function, this function waits until
the notifier receives another message. If FALSE (default) and the notifier contains a message
before you call this function, this function continues to execute.
• timeout in ms (-1) —
timeout in ms specifies the time, in milliseconds, that the function waits for the notifier to
receive a message.
If the function waits timeout in ms and the notifier does not receive a message, timed out? is
TRUE.
1944 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• notifiers out —
notifiers out returns an array of the notifier references from which messages were received.
• notifications —
This data type changes to match the subtype of notifiers, unless the subtype is an array. If the
subtype is an array, the data type becomes a cluster of arrays.
• timed out? —
timed out? is TRUE if the notifier does not receive a message before the function times out or if
an error occurs.
• error out —
error out contains error information. This output provides standard error out functionality.
Each unique instance of this function remembers the time stamp of the most recent
message for each individual notifier.
Maintaining notifier history prevents dropped messages and other problems when you
use this function repeatedly with different notifiers. When one of the notifiers in the
array receives a message, this function continues to execute. Use the Send Notification
function to send the message. If a notifier reference becomes invalid, such as when
another function closes it, this function stops waiting and returns error code 1122. If
the notifier does not contain a message, this function waits until a notifier within the
array receives a message.
Maintaining notifier history also causes this function to run slower than the Wait on
Notification from Multiple function, which does not maintain notifier history and might
experience deadlock when you use it repeatedly with different notifiers.
Use the Wait on Notification with Notifier History function for a single notifier
reference.
If ignore previous is FALSE, each instance of the Wait on Notification from Multiple
with Notifier History function waits if it has not received notification. If one or more of
the notifiers have messages newer than the time stamp most recently received by this
function, the function returns all messages. Otherwise, the function waits.
When ignore previous is TRUE, this function always waits for a new message, even if
the message currently in the notifier is one it has never seen before.
This function does not remove the message from the notifier. Although a specific
instance of the function returns a message only once, other instances of the function
or the Wait on Notification function repeat the message until you call the Send
Notification function with a new message.
Queue Operations
Use the Queue Operations functions to create a queue for communicating data
between sections of a block diagram or from another VI.
Unlike the Notifier Operations functions, the Queue Operations functions buffer data.
Palette
Description
Object
Obtain
Queue Returns a reference to a queue.
Function
Enqueue
Element Adds an element to the back of a queue.
Function
Preview
Queue Returns the element at the front of the queue without removing the element from the
Element queue.
Function
Get Returns information about the current state of a queue, such as the number of elements
Queue currently in the queue.
1946 ni.com
Functions
Palette
Description
Object
Status
Function
Release
Queue Releases a reference to a queue.
Function
Adds an element to a queue. If no space is available in the queue, this function removes
Lossy
an element from the front of the queue and discards the element to make space. Unlike
Enqueue
the Enqueue Element function, this function does not wait for room in the queue to
Element
become available. Use the Obtain Queue function to set the maximum size of the
Function
queue.
Enqueue
Element
At
Adds an element to the front of a queue.
Opposite
End
Function
Dequeue
Element Removes an element from the front of a queue and returns the element.
Function
Flush
Queue Removes all elements from a queue and returns the elements as an array.
Function
Inputs/Outputs
• max queue size (-1, unlimited) —
max queue size is the maximum number of elements you want the queue to hold.
The default is –1, specifying that the queue can hold an unlimited number of elements.
If a queue reaches max queue size, the Enqueue Element or Enqueue Element at Opposite End
functions wait until the Dequeue Element or Flush Queue functions remove elements from the
queue.
If a queue with the same name exists, LabVIEW ignores this input and uses the size from the
existing queue.
Note (Real-Time Module) max queue size preallocates the specified number of
elements in the queue of scalar data types when running on an RT target.
Note When not running on an RT target, max queue size only limits the number of
elements in the queue and does not preallocate the queue. To preallocate memory
for a queue, enqueue that number of elements and then flush the queue. The space
remains allocated for further use of the queue. Refer to the Details section for more
information on memory allocation for queues.
• name (unnamed) —
name contains the name of the queue that you want to obtain or create.
element data type is the type of data that you want the queue to contain.
create if not found? specifies whether you want to create a new queue if one with the same
name as name does not exist.
If TRUE (default), the function creates a queue if one with the same name does not exist.
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
1948 ni.com
Functions
• queue out —
queue out is a reference to the existing queue or the new queue created by this function.
• created new? —
• error out —
error out contains error information. This output provides standard error out functionality.
When you enqueue and dequeue resizable data types, such as paths, strings and
arrays, you do not affect the memory used by queues. Queues transfer data, but do not
generate copies of the data. Use the Lossy Enqueue Element function if you are
concerned that elements waiting to enter an already-full queue might cause jitter in a
deterministic loop.
Use named queues to pass data between two sections of a block diagram or between
two VIs in the same application instance. If you do not wire name, the function creates
a new, unnamed queue reference. If you wire name, the function searches for an
existing queue with the same name and returns a new reference to the existing queue.
If a queue with the same name does not already exist and create if not found? is TRUE,
the function creates a new, named queue reference.
If you use the Obtain Queue function to return a reference to a named queue inside a
loop, LabVIEW creates a new reference to the named queue each time the loop
iterates. If you use Obtain Queue in a tight loop, LabVIEW slowly increases how much
memory it uses because each new reference uses an additional four bytes. These bytes
are released automatically when the VI stops running. However, in a long-running
application it may appear as if LabVIEW is leaking memory since the memory usage
keeps increasing. To prevent this unintended memory allocation, use the Release
Queue function in the loop to release the queue reference for each iteration.
This function might return error codes 1, 2, 1094, 1100, 1491, or 1548.
Note
If you obtain a queue reference in one application instance, you cannot use
that queue reference in another application instance. If you attempt to use a
queue reference in another application instance, LabVIEW returns error 1491.
Examples
Inputs/Outputs
• queue —
element is the element you want to add to the back of the queue.
1950 ni.com
Functions
• timeout in ms (-1) —
timeout in ms specifies the time, in milliseconds, that the function waits for available space in
the queue if the queue is full.
If the function waits timeout in ms and the queue remains full, timed out? is TRUE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• queue out —
• timed out? —
timed out? returns TRUE if space in the queue did not become available before the function
times out. timed out? also returns TRUE if this function encounters an error.
• error out —
error out contains error information. This output provides standard error out functionality.
If the queue is full, the function waits timeout in ms before timing out. If space
becomes available in the queue during the wait, the function inserts the element and
timed out? is FALSE. If queue becomes invalid such as when you release the queue
reference, the function stops waiting and returns error code 1122. Use the Obtain
Queue function to set the maximum size of the queue.
Examples
Returns the element at the front of the queue without removing the element from the
queue.
Inputs/Outputs
• queue —
timeout in ms specifies the time, in milliseconds, that the function waits for an element to
become available in the queue if the queue is empty.
If the function waits timeout in ms and the queue remains empty, timed out? is TRUE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• queue out —
• element —
timed out? returns TRUE if an element did not become available in the queue before the
1952 ni.com
Functions
function timed out. timed out? also returns TRUE if this function encounters an error.
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Dequeue Element function to return the element at the front of the queue and
remove it from the queue. If the queue is empty, the function waits timeout in ms
before timing out. If an element becomes available in the queue during the wait, the
function returns the element and timed out? is FALSE. If queue becomes invalid (for
example, the queue reference is released), the function stops waiting and returns error
code 1122.
Returns information about the current state of a queue, such as the number of
elements currently in the queue.
You also can use this function to verify that queue is a valid queue refnum. If queue is
not a valid queue refnum, the function returns error code 1.
Inputs/Outputs
• queue —
If FALSE (default), the function does not return the elements in the queue.
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
max queue size is the maximum number of elements the queue can contain. If max queue size
is –1, the queue can contain any number of elements.
Note max queue size only limits the number of elements in the queue. It does not
preallocate that number of elements in the queue.
• queue name —
• queue out —
• # pending remove —
# pending remove is the number of Dequeue Element or Preview Queue Element functions
currently waiting to remove an element from the queue.
Refer to the Dequeue Element and Preview Queue Element functions for more information.
• # pending insert —
# pending insert is the number of functions currently waiting to insert an element in the queue.
Use the Enqueue Element or Enqueue Element at Opposite End functions to insert an element in
the queue.
• error out —
error out contains error information. This output provides standard error out functionality.
• # elements in queue —
1954 ni.com
Functions
• elements —
elements returns all the elements currently in the queue, but does not remove them from the
queue.
If return elements? is FALSE, this array is empty. This data type changes to match the subtype of
queue.
Inputs/Outputs
• queue —
If FALSE (default) and you want to destroy the queue, either call the Release Queue function a
number of times equal to the number of times you obtained a reference to the queue or stop all
VIs using the queue reference. If TRUE, the function destroys the queue and you do not have to
call the function multiple times or stop all VIs using the queue reference. Destroying the queue
invalidates all references to the queue.
• error in (no error) —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• queue name —
• remaining elements —
remaining elements is the array of elements that were in the queue before the function released
the queue.
The first element in the array is the element from the front of the queue and the last element in
the array is the element from the back of the queue.
• error out —
error out contains error information. This output provides standard error out functionality.
You can use the Obtain Queue function to obtain a reference to the same queue with
the same name multiple times. To destroy a queue, call the Release Queue function a
number of times equal to the number of times you obtained a reference to the queue
or stop all VIs using the queue reference.
If force destroy? is TRUE, this function releases all references to the queue and
destroys the queue.
Any Enqueue Element, Enqueue Element at Opposite End, Preview Queue Element,
and Dequeue Element functions waiting on the queue time out and return error code
1122.
Examples
1956 ni.com
Functions
space. Unlike the Enqueue Element function, this function does not wait for room in
the queue to become available. Use the Obtain Queue function to set the maximum
size of the queue.
Inputs/Outputs
• queue —
queue is a reference to a queue. Use the Obtain Queue function to obtain a queue reference.
• element —
element is the element you want to add to the back of the queue. This data type changes to
match the subtype of queue.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• queue out —
• overflow element —
overflow element is the element LabVIEW removed from the front of the queue if the queue was
full.
• overflow? —
overflow? returns TRUE if the queue was full and LabVIEW removed an element to create space.
overflow? returns FALSE if the queue accepted the element and did not remove an element to
make space.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• queue —
element is the element you want to add to the front of the queue.
timeout in ms specifies the time, in milliseconds, that the function waits for available space in
the queue if the queue is full.
If the function waits timeout in ms and the queue remains full, timed out? is TRUE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• queue out —
• timed out? —
timed out? returns TRUE if space in the queue did not become available before the function
times out. timed out? also returns TRUE if this function encounters an error.
1958 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
This function is similar to the Enqueue Element function. If the queue is full, the
function waits timeout in ms before continuing. If queue becomes invalid (for
example, the queue reference is released), the function stops waiting and returns error
code 1122.
Queues typically use a first-in-first-out flow of data. In rare situations, you might want
to interrupt this normal flow of data by adding an element to the front of the queue.
After you add an element to the front of a queue, the next Dequeue Element function
you call removes the element you added to the front. For example, you could use this
function if you want to use the queue as a stack structure or add high-priority
elements to the front of the queue.
Examples
Removes an element from the front of a queue and returns the element.
If the queue is empty, the function waits timeout in ms before timing out. If an
element becomes available in the queue during the wait, the function removes and
returns the element and timed out? is FALSE. If queue becomes invalid (for example,
the queue reference is released), the function stops waiting and returns error code
1122.
Inputs/Outputs
• queue —
• timeout in ms (-1) —
timeout in ms specifies the time, in milliseconds, that the function waits for an element to
become available in the queue if the queue is empty.
If the function waits timeout in ms and the queue remains empty, timed out? is TRUE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• queue out —
• element —
• timed out? —
timed out? returns TRUE if an element did not become available in the queue before the
function timed out. timed out? also returns TRUE if this function encounters an error.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
1960 ni.com
Functions
Removes all elements from a queue and returns the elements as an array.
This function does not release the queue reference. Use the Release Queue function to
release the reference.
Inputs/Outputs
• queue —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• queue out —
• remaining elements —
The first element in the array is the element from the front of the queue and the last element in
the array is the element from the back of the queue.
• error out —
error out contains error information. This output provides standard error out functionality.
Semaphore
Use the Semaphore VIs to limit the number of tasks that can simultaneously operate
on a shared (protected) resource. A protected resource or critical section of code might
include writing to global variables or communicating with external instruments.
You can use the Semaphore VIs to synchronize two or more separate, parallel tasks so
that only one task at a time executes a critical section of code protected by a common
semaphore. In particular, use these VIs when you want certain VIs or parts of a block
diagram to wait until another VI or part of a block diagram is finished with the
execution of a critical section.
Obtain
Obtains a reference to an existing semaphore or creates a new semaphore and
Semaphore
returns a reference to that semaphore.
Reference
Acquire
Acquires access to a semaphore.
Semaphore
Release Releases access to a semaphore. If the Acquire Semaphore VI is waiting for the
Semaphore semaphore this VI releases, it stops waiting and continues execution.
Release
Semaphore Releases a reference to a semaphore.
Reference
Get Semaphore
Returns current status information of a semaphore.
Status
Not A
Returns TRUE if semaphore is not a valid semaphore refnum.
Semaphore
1962 ni.com
Functions
Use this VI in conjunction with the other Semaphore VIs to implement a semaphore in
LabVIEW.
Inputs/Outputs
• name (unnamed) —
name contains the name of the semaphore you want to look up or create.
The default is an empty string to create an unnamed semaphore. If you wire name, LabVIEW
searches for an existing semaphore with the same name and returns a unique reference to the
existing semaphore. If a semaphore with the same name does not already exist and create if not
found is TRUE, LabVIEW creates a new, named semaphore and returns a unique reference to that
semaphore.
• size (1) —
size specifies how many tasks can acquire the semaphore at the same time. If a named
semaphore already exists, wiring a value to this parameter does not resize the semaphore.
create if not found specifies whether you want to create a new semaphore if one with that name
does not exist.
The default is TRUE, which specifies that LabVIEW creates a semaphore if the semaphore does
not exist. If create if not found is FALSE and LabVIEW cannot find a semaphore with the name
you specify, LabVIEW returns error code 1534.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• semaphore —
If you use this VI to obtain multiple references to the same named semaphore, each reference
number is unique.
• created new —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Synchronization\Semaphore\Simple
Semaphore.vi
Acquire Semaphore
Use this VI in conjunction with the other Semaphore VIs to implement a semaphore in
LabVIEW.
1964 ni.com
Functions
Inputs/Outputs
• semaphore —
• ms timeout (-1) —
ms timeout specifies how many milliseconds the function should wait for the semaphore to
become available.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• semaphore out —
• timed out —
timed out is TRUE if the semaphore did not become available before the function timed out or if
an error occurred.
• error out —
error out contains error information. This output provides standard error out functionality.
If the semaphore is already acquired by the maximum number of tasks, the VI waits ms
timeout milliseconds before timing out. If the semaphore becomes available during
the wait, timed out is FALSE. If the semaphore does not become available or
semaphore is not valid, timed out is TRUE. The count on a semaphore is incremented
each time Acquire Semaphore executes, even if the task acquiring the semaphore has
already acquired it once.
Examples
• labview\examples\Synchronization\Semaphore\Simple
Semaphore.vi
Release Semaphore
Use this VI in conjunction with the other Semaphore VIs to implement a semaphore in
LabVIEW.
Inputs/Outputs
• semaphore —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• semaphore out —
• error out —
error out contains error information. This output provides standard error out functionality.
1966 ni.com
Functions
Examples
• labview\examples\Synchronization\Semaphore\Simple
Semaphore.vi
Use this VI in conjunction with the other Semaphore VIs to implement a semaphore in
LabVIEW.
Inputs/Outputs
• semaphore —
If FALSE (default), LabVIEW destroys the semaphore only if no other references to the semaphore
exist. If TRUE, LabVIEW releases all references to the semaphore and destroys the semaphore.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• semaphore name —
• error out —
error out contains error information. This output provides standard error out functionality.
All Acquire Semaphore VIs that are currently waiting on this reference to the
semaphore time out immediately and return an error. This does not affect any Acquire
Semaphore VIs that are waiting on a different reference to the same semaphore.
However, if force destroy? is TRUE, all Acquire Semaphore VIs, including those that are
waiting on a different reference to the semaphore, time out immediately and return an
error.
Examples
• labview\examples\Synchronization\Semaphore\Simple
Semaphore.vi
Use this VI in conjunction with the other Semaphore VIs to implement a semaphore in
LabVIEW.
Inputs/Outputs
• semaphore —
1968 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• name —
• semaphore out —
• # available —
# available contains the number of tasks that can acquire the semaphore at the current time.
This number is always less than or equal to size.
• # waiting —
# waiting is the number of Acquire Semaphore functions currently waiting to acquire the
semaphore.
• error out —
error out contains error information. This output provides standard error out functionality.
• size —
size contains the maximum number of tasks that can acquire the semaphore at a time.
Not A Semaphore
Use this VI in conjunction with the other Semaphore VIs to implement a semaphore in
LabVIEW.
Inputs/Outputs
• semaphore —
• not a semaphore —
Rendezvous
Use the Rendezvous VIs to synchronize two or more separate, parallel tasks at specific
points of execution. Each task that reaches the rendezvous waits until the specified
number of tasks are waiting, at which point all tasks proceed with execution.
Wait at Rendezvous Waits until a sufficient number of tasks have arrived at the rendezvous.
Resize Rendezvous Changes the size of rendezvous by size change and returns new size.
Get Rendezvous
Returns current status information of a rendezvous.
Status
1970 ni.com
Functions
Create Rendezvous
You can use this refnum when calling other Rendezvous VIs.
Inputs/Outputs
• name (unnamed) —
name contains the name of the rendezvous that you are looking up or creating.
The default is an empty string to create an unnamed rendezvous. LabVIEW does not
automatically release named rendezvous.
Note A named rendezvous exists only as long as the top-level VI that first created the
named rendezvous continues running. For example, if Application.vi has a
subVI Subtask.vi, any named rendezvous created by Subtask.vi is cleaned up
when Application.vi stops executing. You can use the same named rendezvous
in any VI—even those not in the hierarchy of Application.vi—but the
rendezvous ceases to exist when the Application.vi hierarchy shuts down.
• size (2) —
size specifies how many tasks initially meet at the rendezvous to continue execution.
The default is 2. If a named rendezvous already exists, wiring a value to size does not resize the
rendezvous. Use the Resize Rendezvous to resize a named rendezvous.
return existing (F) specifies whether the rendezvous must already exist for this function to
succeed.
The default is FALSE, specifying that a rendezvous should be created if it does not exist. If return
existing (F) is TRUE and a rendezvous with that name does not exist, the function returns an
error.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• rendezvous —
• created new —
• error out —
error out contains error information. This output provides standard error out functionality.
If name is specified, the VI first searches for an existing rendezvous with the same
name and returns its refnum if it exists. If a named rendezvous with the same name
does not already exist and return existing is FALSE, the VI creates a new rendezvous
and returns its refnum. created new is TRUE if the VI creates a new rendezvous.
Examples
• labview\examples\Synchronization\Rendezvous\Simple
Rendezvous.vi
Wait at Rendezvous
1972 ni.com
Functions
Inputs/Outputs
• rendezvous —
• ms timeout (-1) —
ms timeout specifies how many milliseconds the function should wait for other tasks to arrive at
the rendezvous.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• rendezvous out —
• timed out —
timed out is TRUE if not enough tasks arrived before the function timed out or if an error
occurred.
• error out —
error out contains error information. This output provides standard error out functionality.
If the number of tasks, including the new one, waiting at rendezvous is less than the
rendezvous size, the VI waits ms timeout milliseconds before timing out. If enough
tasks arrive at the rendezvous during the wait, timed out is FALSE. If enough tasks do
not arrive or rendezvous is not valid, timed out is TRUE.
Resize Rendezvous
Changes the size of rendezvous by size change and returns new size.
Inputs/Outputs
• rendezvous —
size change specifies how many more tasks want to meet at the rendezvous.
A negative size decreases the number of tasks. The default is 0 for no change in size.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• rendezvous out —
• new size —
• error out —
error out contains error information. This output provides standard error out functionality.
Destroy Rendezvous
All Wait at Rendezvous VIs that are currently waiting on this rendezvous time out
immediately and return an error.
1974 ni.com
Functions
Inputs/Outputs
• rendezvous —
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• rendezvous name —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
• labview\examples\Synchronization\Rendezvous\Simple
Rendezvous.vi
Inputs/Outputs
• rendezvous —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• name —
• rendezvous out —
• # waiting —
# waiting is the number of Wait at Rendezvous functions currently waiting at the rendezvous.
• size —
• error out —
error out contains error information. This output provides standard error out functionality.
Not A Rendezvous
Inputs/Outputs
• rendezvous —
1976 ni.com
Functions
• not a rendezvous —
Occurrences
In particular, use these functions when you want one VI or part of a block diagram to
wait until another VI or part of a block diagram finishes a task without forcing LabVIEW
to poll.
You can perform the same task using global variables, with one loop polling the global
variable until its value changes. However, global variables use more overhead because
the loop that waits uses execution time. With occurrences, the second loop becomes
idle and does not use processor time. When the first loop sets the occurrence, LabVIEW
activates the second loop and any other block diagrams that wait for the specified
occurrence.
Examples
• labview\examples\Synchronization\Occurrence\Simple
Occurrence.vi
Generates an occurrence that you can pass to the Wait on Occurrence and Set
Occurrence functions.
Inputs/Outputs
• occurrence —
occurrence is the occurrence refnum that links Wait on Occurrence and Set Occurrence.
Ordinarily, only one Generate Occurrence function is wired to any set of Wait on
Occurrence and Set Occurrence functions. You can wire a Generate Occurrence
function to any number of Wait on Occurrence and Set Occurrence functions. You do
not have to have the same number of Wait on Occurrence and Set Occurrence
functions.
1978 ni.com
Functions
Examples
• labview\examples\Synchronization\Occurrence\Simple
Occurrence.vi
Waits for the Set Occurrence function to set the given occurrence.
Inputs/Outputs
• ms timeout (-1) —
If occurrence does not occur within the specified ms timeout, the function returns a value of
TRUE. If ms timeout is –1 (default), the function does not time out unless the occurrence wired
to this function is invalid. If occurrence is invalid, the function immediately returns TRUE for
timed out, even if ms timeout is equal to –1 (default).
• occurrence —
occurrence is the occurrence refnum that links Wait on Occurrence and Set Occurrence.
If ignore previous is TRUE (default) and another node has set the occurrence before this
function began executing, the function ignores the previous occurrence and waits for another
one.
When ignore previous is FALSE, the function checks whether another node previously set an
occurrence. If so, the function executes. However, the Wait on Occurrence function only
processes one occurrence at a time and does not hold multiple previous occurrences in memory.
• timed out —
timed out is TRUE if occurrence does not occur within the specified ms timeout or if occurrence
is invalid, even if ms timeout is equal to –1.
Examples
• labview\examples\Synchronization\Occurrence\Simple
Occurrence.vi
Sets the specified occurrence. All nodes that are waiting for this occurrence stop
waiting.
Inputs/Outputs
• occurrence —
occurrence is the occurrence refnum that links Wait on Occurrence and Set Occurrence.
1980 ni.com
Functions
Examples
• labview\examples\Synchronization\Occurrence\Simple
Occurrence.vi
Indicates that a subVI or section of a block diagram is running for the first time. The
First Call? function returns TRUE only the first time you call it after you click the Run
button.
You can place the First Call? function in multiple locations within a VI. The function
returns TRUE the first time the section of the block diagram in which it is placed runs.
Inputs/Outputs
• First Call?: T/F —
First Call? is TRUE if the subVI is running for the first time since you ran the entire VI.
This function is useful if you want to run a subVI or a section of a block diagram within
a loop or Case structure only once when the VI runs.
First Call? returns TRUE the first time the VI runs after the first top-level caller starts
running, such as when the Run button is clicked or the Run VI method executes. If a
second top-level caller calls the VI while the first top-level caller is still running, First
Call? does not return TRUE a second time. After all the top-level callers become idle
and a top-level caller starts again, First Call? returns TRUE the first time the VI runs
after the idle state. Reentrant VIs have an instance per data space. Therefore, a shared
reentrant VI returns TRUE for each data space instance the first time its top-level caller
calls it.
Passes through the values of the input wires after the upstream code executes.
Use this VI to synchronize multiple parallel code paths at a single point of data flow to
ensure a certain execution order.
Inputs/Outputs
• input 1 —
This input accepts any data type. The default data type is a variant.
• input 2 —
This input accepts any data type. The default data type is a variant.
• input 3 —
This input accepts any data type. The default data type is a variant.
• input 4 —
This input accepts any data type. The default data type is a variant.
• output 1 —
• output 2 —
1982 ni.com
Functions
• output 3 —
• output 4 —
Palette
Description
Object
3D Graph
Use the 3D Graph Properties VIs to create 3D data displays.
Properties
Picture
Use the Picture Plots VIs to create graphical representations of data.
Plots
Use the Picture Functions VIs to create visual representations of data. Many of these
Picture picture VIs use clusters to define points and rectangles. The VIs related to drawing text
Functions use clusters and enumerations to describe the font choice and the positioning of the
text.
Graphics Use the Graphics Formats VIs to retrieve or store image data in BMP, JPEG, or PNG
Formats image files.
Palette
Description
Object
Beep Causes the system to issue an audible tone. (Windows Vista 64-bit) This VI might not
(Windows) work correctly if use system alert? is FALSE.
3D Picture Use the 3D Picture Control VIs to display graphical representations of objects in 3D
Control scenes.
3D Graph Properties
Note The 3D Graph Properties VIs are available on Windows only, because
the ActiveX 3D graph is an ActiveX control, which is available only on
Windows.
Palette
Description
Object
Plots a simple surface from z matrix. The x and y vectors cause the surface to shift in
3D Surface relation to the x and y planes. This VI accepts one 2D array and the two optional 1D
arrays.
3D
Plots a surface in terms of x, y, and z surfaces. The VI has three 2D array or matrix inputs
Parametric
that specify each of the x, y, and z planes.
Surface
1984 ni.com
Functions
Palette
Description
Object
Describes a line in terms of x, y, and z points. This VI has three 1D array or vector inputs
3D Curve
that specify each point in the plot.
Basic Adjusts various properties of the plot, including the transparency, plot style, and
Properties coordinate system.
Axes
Adjusts the properties of the x-, y-, and z-axes, including scaling and inverting.
Properties
Grid
Shows or hides the xy, xz, yz grids.
Properties
Projection
Adjusts the types of projections associated with the plot.
Properties
Convert
Converts LabVIEW colors to or from colors used by ActiveX.
OLE Color
Set Plots Sets the number of plots that are available for a 3D graph control.
3D Surface
Plots a simple surface from z matrix. The x and y vectors cause the surface to shift in
relation to the x and y planes. This VI accepts one 2D array and the two optional 1D
arrays.
Inputs/Outputs
• 3D graph —
• x vector —
x vector is a 1D array that describes the surface from z matrix in relation to the x plane.
• y vector —
y vector is a 1D array that describes the surface from the z matrix in relation to the y plane.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array of data that determines the surface in relation to the z plane.
The x and y vectors shift or skew the set of data in the z matrix.
plot number is the index into the list of plots from the properties of the 3D control.
Add new plots by right-clicking the control and adjusting the properties. The default is the first
plot from the list.
• 3D graph out —
3D graph out passes the reference to the 3D control out so that you can use it with other VIs.
• error out —
error out contains error information. This output provides standard error out functionality.
x vector and y vector correspond to the two indexes for the z matrix 2D array. If the
number of elements in x vector does not match the width of z matrix in the first
dimension, and the number of elements in y vector does not match the width of z
matrix in the second dimension, both x vector and y vector are ignored.
1986 ni.com
Functions
The values of x vector and y vector specify where the corresponding point in the z
matrix should be located. The default values for x vector and y vector are 0, 1, 2, 3, and
so on. The first point in z matrix (index 0,0) is located at (x vector[0], y vector[0]), or
(0,0). If you change x vector to –1, 1, 2, 3, and so on, the first point in z matrix moves to
(–1,0).
3D Parametric Surface
Plots a surface in terms of x, y, and z surfaces. The VI has three 2D array or matrix
inputs that specify each of the x, y, and z planes.
Inputs/Outputs
• 3D graph —
• x matrix —
x matrix is a 2D array of data that determines the surface in relation to the x plane.
• y matrix —
y matrix is a 2D array of data that determines the surface in relation to the y plane.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array of data that determines the surface in relation to the z plane.
The x and y vectors shift or skew the set of data in the z matrix.
plot number is the index into the list of plots from the properties of the 3D control.
Add new plots by right-clicking the control and adjusting the properties. The default is the first
plot from the list.
• 3D graph out —
3D graph out passes the reference to the 3D control out so that you can use it with other VIs.
• error out —
error out contains error information. This output provides standard error out functionality.
3D Curve
Describes a line in terms of x, y, and z points. This VI has three 1D array or vector inputs
that specify each point in the plot.
Inputs/Outputs
• 3D graph —
• x vector —
• y vector —
1988 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z vector —
z vector is a 1D array of data that contains the z coordinates of the line or curve.
The x and y vectors shift or skew the set of data in the z vector.
plot number is the index into the list of plots from the properties of the 3D control.
Add new plots by right-clicking the control and adjusting the properties. The default is the first
plot from the list.
• 3D graph out —
3D graph out passes the reference to the 3D control out so that you can use it with other VIs.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Basic Properties
Adjusts various properties of the plot, including the transparency, plot style, and
coordinate system.
Inputs/Outputs
• 3D graph —
• plot style —
plot style changes the way the data is plotted. The default is a surface plot.
• fast draw —
fast draw determines if the surface is redrawn while it is rotated and zoomed or if it is displayed
as points of data.
• transparency —
transparency is a value from 0 to 100 that changes the transparency of the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• coordinate system —
plot number is the index into the list of plots from the properties of the 3D control.
Add new plots by right-clicking the control and adjusting the properties. The default is the first
plot from the list.
• 3D graph out —
1990 ni.com
Functions
3D graph out passes the reference to the 3D control out so that you can use it with other VIs.
• error out —
error out contains error information. This output provides standard error out functionality.
Axes Properties
Adjusts the properties of the x-, y-, and z-axes, including scaling and inverting.
Inputs/Outputs
• invert x —
• invert y —
• invert z —
• 3D graph —
• auto scale x —
• auto scale y —
• auto scale z —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
plot number is the index into the list of plots from the properties of the 3D control.
Add new plots by right-clicking the control and adjusting the properties. The default is the first
plot from the list.
• 3D graph out —
3D graph out passes the reference to the 3D control out so that you can use it with other VIs.
• error out —
error out contains error information. This output provides standard error out functionality.
Grid Properties
Inputs/Outputs
• grid smoothing —
1992 ni.com
Functions
• 3D graph —
• xy grid —
• xz grid —
• yz grid —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• 3D graph out —
3D graph out passes the reference to the 3D control out so that you can use it with other VIs.
• error out —
error out contains error information. This output provides standard error out functionality.
Projection Properties
Inputs/Outputs
• coordinate system —
• 3D graph —
• xy projection —
• xz projection —
• yz projection —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
plot number is the index into the list of plots from the properties of the 3D control.
1994 ni.com
Functions
Add new plots by right-clicking the control and adjusting the properties. The default is the first
plot from the list.
• 3D graph out —
3D graph out passes the reference to the 3D control out so that you can use it with other VIs.
• error out —
error out contains error information. This output provides standard error out functionality.
You can use the property page for the 3D graph to set all of the colors. Color conversion
is necessary for use with ActiveX Property Nodes.
Inputs/Outputs
• color in —
• color out —
Set Plots
Sets the number of plots that are available for a 3D graph control.
Inputs/Outputs
• 3D graph —
• # of plots(1) —
# of plots sets the number of plots for a 3D control. It removes all of the plots that are currently
in the graph and adds the number of plots. The default is one plot for a control.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• 3D graph out —
3D graph out passes the reference to the 3D control out so that you can use it with other VIs.
• error out —
error out contains error information. This output provides standard error out functionality.
Picture Plots
Palette
Description
Object
Polar Plot
Takes a picture and polar data and appends a picture that represents a polar graph
with Point
of the data. This VI can represent polar data as points or lines between points.
Options
1996 ni.com
Functions
Palette
Description
Object
Takes a picture and the data for a Smith plot and appends a picture that represents
Smith Plot
the Smith plot of the data.
Smith Multi Takes a picture and an array of Smith plots and appends a picture that represents
Plot the superimposed Smith plots of the data.
Normalize Takes data for a Smith plot and normalizes it, meaning that the data is scaled
Smith Plot relative to a known value.
Takes a picture and an array of points and appends a picture that represents an XY
Plot XY
graph of the data.
Takes a picture and an array of plots and appends a picture of an XY graph of the
Plot Multi-XY
data with the plots overlaid on the same graph.
Plot Takes uniformly distributed data and a picture and creates a new picture that
Waveform represents a waveform graph of the data.
Takes a picture and an array of plots and appends a picture that represents the
Radar Plot
radar plot of the data.
Calc Scale Takes a specification for a Cartesian style scale and calculates the coordinates and
Specs labels to use for the scale.
Palette
Description
Object
Uses pixel and data ranges to determine scale factors such that (a * data value) + b
Map Setup
is the pixel value that corresponds to that data value.
Map Value to Uses the domain value and the cluster returned by the Map Setup VI to determine a
Pixel pixel value corresponding to that domain value.
Map Pixel to Uses the pixel value and the cluster returned by the Map Setup VI to determine the
Value domain value corresponding to that pixel value.
Takes a picture and polar data and appends a picture that represents a polar graph of
the data. This VI can represent polar data as points or lines between points.
Inputs/Outputs
• [user-specified font] —
[user-specified font] specifies the specific font characteristics for the text to draw.
• Font Name: —
1998 ni.com
Functions
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Size —
• Strikeout? —
Strikeout? specifies if the text appears in strikeout. If Strikeout? is TRUE, the text appears in
strikeout.
• Italic? —
Italic? specifies if the text appears in italics. If Italic? is TRUE, the text appears in italics.
• Underline? —
Underline? specifies if the text is underlined. If Underline? is TRUE, the text appears
underlined.
• Outline? —
Outline? specifies if the text is outlined. If Outline? is TRUE, the text appears outlined.
• Shadow? —
Shadow? specifies if the text has a shadow. If Shadow? is TRUE, the text appears in shadow.
• Bold? —
Bold? specifies if the text is bold. If Bold? is TRUE, the text appears bold.
• desired font(Application) —
0 User-specified Font
1 Application Font
(default)
2 System Font
3 Dialog Font
• picture —
picture is the picture to which you want to add the scale. The default is an empty picture.
data array is an array of points, where each point is a cluster containing a magnitude and a
phase in degrees that specifies the format and precision for the scale.
• magnitude —
magnitude is the straight line distance from the point to the center of the circle.
• phase —
phase is the angle (measured in degrees) between the positive x-axis and a straight line
from the center of the circle to the point.
top left point specifies in coordinates where to place the top-left corner of the image in the new
picture.
• x—
• y—
• dimensions (w,h) —
• width —
2000 ni.com
Functions
• height —
• polar attributes —
polar attributes describes the format for the grid and scale of the polar plot and indicates how
the graph should handle negative magnitude data, whether to clip the data or to draw it.
• maximum —
• minimum —
• clip to min —
clip to min specifies whether to clip (TRUE) or draw (FALSE) negative magnitude data.
• log?(F) —
• grid color —
• plot color —
fmt and prec specifies the numeric format and precision for the scale numbers.
• format —
0 Decimal
1 Scientific
2 Engineering
3 Binary
4 Octal
5 Hex
• precision —
precision specifies the precision for the scale numbers. The default is 1.
• visible section —
visible section specifies which quadrant(s) of the polar plot you want to view.
• Lines/Points —
2002 ni.com
Functions
Lines/Points sets whether the VI represents the polar data as points or lines between points.
0 Lines
1 Points
• Size —
Size specifies the size, in pixels, of the lines or points this VI plots.
• new picture —
new picture is the picture that contains the plot. You can wire this output to any other picture
input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can save the image data to a file using the Graphics Formats VIs.
Examples
Smith Plot
Takes a picture and the data for a Smith plot and appends a picture that represents the
Smith plot of the data.
Inputs/Outputs
• [user-specified font] —
[user-specified font] specifies the specific font characteristics for the text to draw.
• Font Name: —
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Size —
• Strikeout? —
Strikeout? specifies if the text appears in strikeout. If Strikeout? is TRUE, the text appears in
strikeout.
• Italic? —
Italic? specifies if the text appears in italics. If Italic? is TRUE, the text appears in italics.
• Underline? —
Underline? specifies if the text is underlined. If Underline? is TRUE, the text appears
underlined.
• Outline? —
Outline? specifies if the text is outlined. If Outline? is TRUE, the text appears outlined.
• Shadow? —
Shadow? specifies if the text has a shadow. If Shadow? is TRUE, the text appears in shadow.
• Bold? —
2004 ni.com
Functions
Bold? specifies if the text is bold. If Bold? is TRUE, the text appears bold.
• desired font(Application) —
0 User-specified Font
Application Font
1
(default)
2 System Font
3 Dialog Font
• picture —
picture is the picture to which you want to add the plot. The default is an empty picture.
• smith plot —
smith plot is an array of points, where each point is a cluster containing the r and x values that
make up the complex impedance, z, of r + jx.
• r—
• x—
• dimensions (w,h) —
• width —
• height —
dimensions incl scales? indicates whether the dimensions input includes the scales, in addition
to the plot area.
If FALSE, the dimensions input describes the plot area, and the VI draws the scales outside of the
rectangle. If TRUE (default), the VI draws the scales inside of dimensions and insets the plot area
to make room for the text.
top left point specifies in coordinates where to place the top-left corner of the image in the new
picture.
• x—
• y—
smith plot section describes the portion of the graph you want to display.
It contains four values that represent a rectangle superimposed over the Smith plot.
• x minimum —
• x maximum —
• y minimum —
2006 ni.com
Functions
• y maximum —
smith plot cosmetics specifies the style to use in drawing the plot.
• Plot Style —
• Line Color —
• Point Color —
smith grid cosmetics describes the style to use for the grids.
• R color —
R color specifies the color of the resistance, r, circles for the grids.
• R grids —
• X color —
X color specifies the color of the reactance, x, circles for the grids.
• X grids —
• Labels —
Labels specifies to draw labels in the plot corners when you zoom in on a section of the
plot.
• new picture —
new picture is the picture that contains the plot. You can wire this output to any other picture
input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can save the image data to a file using the Graphics Formats VIs.
Examples
Takes a picture and an array of Smith plots and appends a picture that represents the
superimposed Smith plots of the data.
2008 ni.com
Functions
Inputs/Outputs
• [user-specified font] —
[user-specified font] specifies the specific font characteristics for the text to draw.
• Font Name: —
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Size —
• Strikeout? —
Strikeout? specifies if the text appears in strikeout. If Strikeout? is TRUE, the text appears in
strikeout.
• Italic? —
Italic? specifies if the text appears in italics. If Italic? is TRUE, the text appears in italics.
• Underline? —
Underline? specifies if the text is underlined. If Underline? is TRUE, the text appears
underlined.
• Outline? —
Outline? specifies if the text is outlined. If Outline? is TRUE, the text appears outlined.
• Shadow? —
Shadow? specifies if the text has a shadow. If Shadow? is TRUE, the text appears in shadow.
• Bold? —
Bold? specifies if the text is bold. If Bold? is TRUE, the text appears bold.
• desired font(Application) —
0 User-specified Font
Application Font
1
(default)
2 System Font
3 Dialog Font
• picture —
picture is the picture to which you want to add the plot. The default is an empty picture.
• rect —
rect contains the upper-left and lower-right coordinates that describe a rectangle bounding the
text.
The VI clips text to the coordinates of this rectangle. Horizontal coordinates increase to the right,
and vertical coordinates increase to the bottom.
• left —
• top —
2010 ni.com
Functions
• right —
• bottom —
smith plot section describes the portion of the graph you want to display.
It contains four values that represent a rectangle superimposed over the Smith plot.
• x minimum —
• x maximum —
• y minimum —
• y maximum —
smith grid cosmetics describes the style to use for the grids.
• R color —
R color specifies the color of the resistance, r, circles for the grids.
• R grids —
• X color —
X color specifies the color of the reactance, x, circles for the grids.
• X grids —
• Labels —
Labels specifies to draw labels in the plot corners when you zoom in on a section of the
plot.
smith multi plot is an array of clusters, where each cluster contains an array of points.
A point is represented by a cluster containing the r and x values that make up the complex
impedance r + jx.
• smith plot —
smith plot is an array of points, where each point is a cluster containing the r and x values
that make up the complex impedance, z, of r + jx.
• r—
• x—
smith plot cosmetics specifies the style to use in drawing the plot.
2012 ni.com
Functions
• Plot Style —
• Line Color —
• Point Color —
dimensions incl scales? indicates whether the rect input includes the scales, in addition to the
plot area.
If FALSE, the rect input describes the plot area, and the VI draws the scales outside of the
rectangle. If TRUE, the VI draws the scales inside of rect and insets the plot area to make room
for the text.
• new picture —
new picture is the picture that contains the plot. You can wire this output to any other picture
input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can save the image data to a file using the Graphics Formats VIs.
Examples
Takes data for a Smith plot and normalizes it, meaning that the data is scaled relative
to a known value.
Inputs/Outputs
• Zo (50.0) —
• points {r,x} —
points {r,x} is an array of points, where each point is a cluster containing the r and x values that
make up the complex impedance r + jx.
• r—
• x—
• points complex —
2014 ni.com
Functions
normalized smith points {r,x} is an array of clusters of points containing the normalized data.
Each cluster contains an r and an x value.
• r—
• x—
You can wire an array of points to this VI, where each point is a cluster of an r and an x
value, or you can wire an array of complex data to this VI. The VI detects which data
input you wire and uses that input. If you wire both inputs, the VI normalizes the array
of points.
This VI normalizes the data with respect to a specified characteristic impedance, Zo, of
the system. Then it returns the resulting data as an array of clusters of points, where
each cluster contains an r and an x value. You can wire the normalized smith points
output directly to the Smith Plot VI.
Examples
Plot XY
Takes a picture and an array of points and appends a picture that represents an XY
graph of the data.
To create controls for the cluster inputs in this VI, right-click the cluster terminal and
select Create»Control from the shortcut menu.
Inputs/Outputs
• [user-specified font] —
[user-specified font] specifies the specific font characteristics for the text to draw.
• Font Name: —
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Size —
• Strikeout? —
Strikeout? specifies if the text appears in strikeout. If Strikeout? is TRUE, the text appears in
strikeout.
• Italic? —
Italic? specifies if the text appears in italics. If Italic? is TRUE, the text appears in italics.
• Underline? —
Underline? specifies if the text is underlined. If Underline? is TRUE, the text appears
underlined.
2016 ni.com
Functions
• Outline? —
Outline? specifies if the text is outlined. If Outline? is TRUE, the text appears outlined.
• Shadow? —
Shadow? specifies if the text has a shadow. If Shadow? is TRUE, the text appears in shadow.
• Bold? —
Bold? specifies if the text is bold. If Bold? is TRUE, the text appears bold.
• desired font(Application) —
0 User-specified Font
Application Font
1
(default)
2 System Font
3 Dialog Font
• picture —
picture is the picture to which you want to add the graph. The default is an empty picture.
• data —
data is an array of points, where each point is a cluster of x and y pixel coordinates.
• x—
• y—
• dimensions (w,h) —
• width —
• height —
top left point specifies in coordinates where to place the top-left corner of the image in the new
picture.
• x—
• y—
cartesian axis attributes specifies the range and format for the x- and y- axes.
If the minimum and maximum values are the same, or if you do not wire the cartesian axis
attributes input, the VI calculates the minimum and maximum values from the data.
• x minimum —
• x maximum —
• x log? —
2018 ni.com
Functions
• x precision —
x precision specifies the precision for the scale numbers on the x-axis.
• x format —
x format specifies the numeric format for the scale numbers on the x-axis. The default is
Decimal.
0 Decimal
1 Scientific
2 Engineering
3 Binary
4 Octal
5 Hex
• y minimum —
• y maximum —
• y log? —
• y precision —
y precision specifies the precision for the scale numbers on the y-axis.
• y format —
y format specifies the numeric format for the scale numbers on the y-axis. The default is
Decimal.
0 Decimal
1 Scientific
2 Engineering
3 Binary
4 Octal
5 Hex
cartesian grid cosmetics specifies the style for the grid of the graph.
• line color —
• text color —
• tick length(3) —
tick length specifies the length of the tick marks on the edge of the scale.
• crossing axes —
crossing axes specifies if the VI draws the axes at the originating coordinate. If crossing axes
is TRUE, the VI draws the axes at the originating coordinate. If crossing axes is FALSE, the VI
draws the axes at the bottom left edge of the plot.
• visible grid? —
visible grid? specifies if the VI displays the grid in the graph. If visible grid? is TRUE, the VI
displays the grid in the graph.
• XY plot cosmetics —
XY plot cosmetics specifies the plot color, the style for the plot, and the baseline. This VI uses the
2020 ni.com
Functions
• plot color —
• XY plot type —
0 points
1 squares
2 circles
3 connected points (default)
4 connected squares
5 connected circles
6 comb plot
7 sized scatter plot
8 sized-colored scatter plot
9 min-max lines
• baseline —
sized scatter plot cosmetics specifies the range of sizes for frequency distribution points,
assuming the xy plot type is sized scatter plot or sized-colored scatter plot.
• min size —
min size specifies the smallest size to be used for points in a scatter plot.
• max size —
max size specifies the largest size to be used for points in a scatter plot.
maps to max size defines the maximum size to which the uppermost point in the scatter
plot can be mapped.
• color array —
• new picture —
new picture is the picture that contains the plot. You can wire this output to any other picture
input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can save the image data to a file using the Graphics Formats VIs.
Examples
Plot Multi-XY
Takes a picture and an array of plots and appends a picture of an XY graph of the data
with the plots overlaid on the same graph.
2022 ni.com
Functions
Inputs/Outputs
• [user-specified font] —
[user-specified font] specifies the specific font characteristics for the text to draw.
• Font Name: —
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Size —
• Strikeout? —
Strikeout? specifies if the text appears in strikeout. If Strikeout? is TRUE, the text appears in
strikeout.
• Italic? —
Italic? specifies if the text appears in italics. If Italic? is TRUE, the text appears in italics.
• Underline? —
Underline? specifies if the text is underlined. If Underline? is TRUE, the text appears
underlined.
• Outline? —
Outline? specifies if the text is outlined. If Outline? is TRUE, the text appears outlined.
• Shadow? —
Shadow? specifies if the text has a shadow. If Shadow? is TRUE, the text appears in shadow.
• Bold? —
Bold? specifies if the text is bold. If Bold? is TRUE, the text appears bold.
• desired font(Application) —
0 User-specified Font
Application Font
1
(default)
2 System Font
3 Dialog Font
• picture —
picture is the picture to which you want to add the plot. The default is an empty picture.
• data —
• data —
• x—
2024 ni.com
Functions
• y—
• dimensions (w,h) —
• width —
• height —
top left point specifies in coordinates where to place the top-left corner of the image in the new
picture.
• x—
• y—
cartesian axis attributes specifies the range and format for the x- and y- axes.
If the minimum and maximum values are the same, or if you do not wire the cartesian axis
attributes input, the VI calculates the minimum and maximum values from the data.
• x minimum —
• x maximum —
• x log? —
• x precision —
x precision specifies the precision for the scale numbers on the x-axis.
• x format —
x format specifies the numeric format for the scale numbers on the x-axis. The default is
Decimal.
0 Decimal
1 Scientific
2 Engineering
3 Binary
4 Octal
5 Hex
• y minimum —
• y maximum —
• y log? —
• y precision —
2026 ni.com
Functions
y precision specifies the precision for the scale numbers on the y-axis.
• y format —
y format specifies the numeric format for the scale numbers on the y-axis. The default is
Decimal.
0 Decimal
1 Scientific
2 Engineering
3 Binary
4 Octal
5 Hex
cartesian grid cosmetics specifies the style for the grid of the graph.
• line color —
• text color —
• tick length(3) —
tick length specifies the length of the tick marks on the edge of the scale.
• crossing axes —
crossing axes specifies if the VI draws the axes at the originating coordinate. If crossing axes
is TRUE, the VI draws the axes at the originating coordinate. If crossing axes is FALSE, the VI
draws the axes at the bottom left edge of the plot.
• visible grid? —
visible grid? specifies if the VI displays the grid in the graph. If visible grid? is TRUE, the VI
displays the grid in the graph.
• XY plot cosmetics —
XY plot cosmetics specifies the plot color, the style for the plot, and the baseline. This VI uses the
baseline only if the XY plot type is comb plot.
• plot color —
• XY plot type —
0 points
1 squares
2 circles
3 connected points (default)
4 connected squares
5 connected circles
6 comb plot
7 sized scatter plot
8 sized-colored scatter plot
9 min-max lines
• baseline —
2028 ni.com
Functions
sized scatter plot cosmetics specifies the range of sizes for frequency distribution points,
assuming the xy plot type is sized scatter plot or sized-colored scatter plot.
• min size —
min size specifies the smallest size to be used for points in a scatter plot.
• max size —
max size specifies the largest size to be used for points in a scatter plot.
maps to max size defines the maximum size to which the uppermost point in the scatter
plot can be mapped.
• color array —
• new picture —
new picture is the picture that contains the plot. You can wire this output to any other picture
input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can save the image data to a file using the Graphics Formats VIs.
Examples
Plot Waveform
Takes uniformly distributed data and a picture and creates a new picture that
represents a waveform graph of the data.
Inputs/Outputs
• [user-specified font] —
[user-specified font] specifies the specific font characteristics for the text to draw.
• Font Name: —
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Size —
• Strikeout? —
Strikeout? specifies if the text appears in strikeout. If Strikeout? is TRUE, the text appears in
strikeout.
• Italic? —
Italic? specifies if the text appears in italics. If Italic? is TRUE, the text appears in italics.
• Underline? —
Underline? specifies if the text is underlined. If Underline? is TRUE, the text appears
underlined.
• Outline? —
2030 ni.com
Functions
Outline? specifies if the text is outlined. If Outline? is TRUE, the text appears outlined.
• Shadow? —
Shadow? specifies if the text has a shadow. If Shadow? is TRUE, the text appears in shadow.
• Bold? —
Bold? specifies if the text is bold. If Bold? is TRUE, the text appears bold.
• desired font(Application) —
0 User-specified Font
Application Font
1
(default)
2 System Font
3 Dialog Font
• picture —
picture is the picture to which you want to add the graph. The default is an empty picture.
• bounding rect —
bounding rect contains the upper-left and lower-right coordinates that describe a rectangle
bounding the plot, including the x- and y-axes.
Horizontal coordinates increase to the right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
cartesian axis attributes specifies the range and format for the x- and y- axes.
If the minimum and maximum values are the same, or if you do not wire the cartesian axis
attributes input, the VI calculates the minimum and maximum values from the data.
• x minimum —
• x maximum —
• x log? —
• x precision —
x precision specifies the precision for the scale numbers on the x-axis.
• x format —
x format specifies the numeric format for the scale numbers on the x-axis. The default is
Decimal.
0 Decimal
1 Scientific
2 Engineering
3 Binary
4 Octal
2032 ni.com
Functions
5 Hex
• y minimum —
• y maximum —
• y log? —
• y precision —
y precision specifies the precision for the scale numbers on the y-axis.
• y format —
y format specifies the numeric format for the scale numbers on the y-axis. The default is
Decimal.
0 Decimal
1 Scientific
2 Engineering
3 Binary
4 Octal
5 Hex
• waveform data —
waveform data contains the initial X value, the spacing between points along the x-axis, and the
y data that you want to plot.
• Xo(0) —
The default is 0.
• delta X(1) —
The default is 1.
• Y data —
Y data specifies the data that you want to plot along the y-axis.
cartesian grid cosmetics specifies the style for the grid of the graph.
• line color —
• text color —
• tick length(3) —
tick length specifies the length of the tick marks on the edge of the scale.
• crossing axes —
crossing axes specifies if the VI draws the axes at the originating coordinate. If crossing axes
is TRUE, the VI draws the axes at the originating coordinate. If crossing axes is FALSE, the VI
draws the axes at the bottom left edge of the plot.
• visible grid? —
2034 ni.com
Functions
visible grid? specifies if the VI displays the grid in the graph. If visible grid? is TRUE, the VI
displays the grid in the graph.
waveform plot cosmetics specifies the plot color, the style for the plot, and the baseline. The VI
uses the baseline only if the waveform plot type is comb plot or bar plot.
• plot color —
0 points
1 squares
2 circles
connected points
3
(default)
4 connected squares
5 connected circles
6 fill to baselines
7 comb plot
8 bar plot
• baseline —
• [bar style] —
bar style specifies the style for bar plots, assuming the waveform plot type is bar plot.
• bar width(50%) —
bar width specifies the width of each bar relative to the rest of the graph.
• frame?(T) —
frame? indicates whether to include a frame around the bars in the graph.
• frame color(black) —
• new picture —
new picture is the picture that contains the plot. You can wire this output to any other picture
input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can save the image data to a file using the Graphics Formats VIs.
Examples
Radar Plot
Takes a picture and an array of plots and appends a picture that represents the radar
plot of the data.
2036 ni.com
Functions
You can use a radar plot to compare the performance of one set of data with another
set of data. This VI uses the Draw Legend VI as a subVI.
Inputs/Outputs
• [user-specified font] —
[user-specified font] specifies the specific font characteristics for the text to draw.
• Font Name: —
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Size —
• Strikeout? —
Strikeout? specifies if the text appears in strikeout. If Strikeout? is TRUE, the text appears in
strikeout.
• Italic? —
Italic? specifies if the text appears in italics. If Italic? is TRUE, the text appears in italics.
• Underline? —
Underline? specifies if the text is underlined. If Underline? is TRUE, the text appears
underlined.
• Outline? —
Outline? specifies if the text is outlined. If Outline? is TRUE, the text appears outlined.
• Shadow? —
Shadow? specifies if the text has a shadow. If Shadow? is TRUE, the text appears in shadow.
• Bold? —
Bold? specifies if the text is bold. If Bold? is TRUE, the text appears bold.
• desired font(Application) —
0 User-specified Font
Application Font
1
(default)
2 System Font
3 Dialog Font
• picture —
picture is the picture to which you want to add the plot. The default is an empty picture.
• data —
The VI draws each index in a plot on a corresponding y-scale. A straight line connects all the
points in a plot.
• plot info —
plot info specifies the name, color, and fill option for each plot.
2038 ni.com
Functions
The VI uses plot name and plot color for the legend.
• plot name —
• fill?(F) —
• axis info —
axis info specifies the label (name) of each y-axis and the minimum and maximum value of each
y-axis.
• label —
• max value —
• min value —
• axes info —
axes info specifies the color, format and precision of the y-axes, and whether to autoscale the y-
axes.
• color (white) —
format and precision specifies the format of the values on the y-axes.
• format —
0 Decimal
1 Scientific
2 Engineering
3 Binary
4 Octal
5 Hex
• precision —
precision specifies the precision for the scale numbers. The default is 1.
• autoscale? (false) —
• legend info —
legend info specifies the location of the plot legend relative to the radar plot.
2040 ni.com
Functions
• position (none) —
• text color(white) —
text color is the color of the labels of the y-axes, as shown in the legend.
• dimension (w,h) —
dimension (w,h) specifies the rectangle in coordinates into which the VI draws the radar plot
and legend.
• Width —
• Height —
top left point specifies in coordinates where to place the top-left corner of the image in the new
picture.
• x—
• y—
• new picture —
new picture is the picture that contains the plot. You can wire this output to any other picture
input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can save the image data to a file using the Graphics Formats VIs.
Examples
Draw Legend
Inputs/Outputs
• [user-specified font] —
[user-specified font] specifies the specific font characteristics for the text to draw.
2042 ni.com
Functions
• Font Name: —
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Size —
• Strikeout? —
Strikeout? specifies if the text appears in strikeout. If Strikeout? is TRUE, the text appears in
strikeout.
• Italic? —
Italic? specifies if the text appears in italics. If Italic? is TRUE, the text appears in italics.
• Underline? —
Underline? specifies if the text is underlined. If Underline? is TRUE, the text appears
underlined.
• Outline? —
Outline? specifies if the text is outlined. If Outline? is TRUE, the text appears outlined.
• Shadow? —
Shadow? specifies if the text has a shadow. If Shadow? is TRUE, the text appears in shadow.
• Bold? —
Bold? specifies if the text is bold. If Bold? is TRUE, the text appears bold.
• desired font(Application) —
0 User-specified Font
Application Font
1
(default)
2 System Font
3 Dialog Font
• picture —
picture is the picture to which you want to add the legend. The default is an empty picture.
• plot info —
plot info specifies the name and color for each plot in the legend.
• plot name —
• plot color —
• fill?(F) —
fill? does not affect the legend and the VI ignores this value.
• text color(black) —
• rect —
rect contains the coordinates that describe a rectangle bounding the legend.
Horizontal coordinates increase to the right, and vertical coordinates increase to the bottom.
2044 ni.com
Functions
• left —
• top —
• right —
• bottom —
• new picture —
new picture is the picture that contains the legend. You can wire this output to any other picture
input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can save the image data to a file using the Graphics Formats VIs.
Takes a specification for a Cartesian style scale and calculates the coordinates and
labels to use for the scale.
Inputs/Outputs
• [user-specified font] —
[user-specified font] specifies the specific font characteristics for the text to draw.
• Font Name: —
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Size —
• Strikeout? —
Strikeout? specifies if the text appears in strikeout. If Strikeout? is TRUE, the text appears in
strikeout.
• Italic? —
Italic? specifies if the text appears in italics. If Italic? is TRUE, the text appears in italics.
• Underline? —
Underline? specifies if the text is underlined. If Underline? is TRUE, the text appears
underlined.
• Outline? —
Outline? specifies if the text is outlined. If Outline? is TRUE, the text appears outlined.
• Shadow? —
Shadow? specifies if the text has a shadow. If Shadow? is TRUE, the text appears in shadow.
• Bold? —
Bold? specifies if the text is bold. If Bold? is TRUE, the text appears bold.
• desired font(Application) —
2046 ni.com
Functions
0 User-specified Font
Application Font
1
(default)
2 System Font
3 Dialog Font
• scale definition —
scale definition specifies the pixel coordinates and values for both ends of the scale, and the
numeric format and precision for the scale numbers.
• coordinate 1 —
coordinate 1 contains the pixel coordinates for the left of a vertical scale or the top of a
horizontal scale.
• value 1 —
• coordinate 2 —
coordinate 2 contains the pixel coordinates for the right of a vertical scale or the bottom of
a horizontal scale.
• value 2 —
• log?(F) —
fmt and prec specifies the numeric format and precision for the scale numbers.
• format —
0 Decimal
1 Scientific
2 Engineering
3 Binary
4 Octal
5 Hex
• precision —
precision specifies the precision for the scale numbers. The default is 1.
• scale attributes —
• horizontal —
• left/top —
left/top indicates whether to draw the text to the left for a vertical scale and the top for a
horizontal scale (TRUE), or to the right for a vertical scale and the bottom for a horizontal
scale (FALSE).
• draw bar —
• line color —
• text color(black) —
2048 ni.com
Functions
• scale specs —
scale specs is an array of clusters containing the coordinates and labels you can use in the scale.
• coordinate —
• label —
Wire the scale specs output of this VI to the scale specs input of the Draw Scale VI to
draw a scale.
Examples
Draw Scale
Inputs/Outputs
• [user-specified font] —
[user-specified font] specifies the specific font characteristics for the text to draw.
• Font Name: —
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Size —
• Strikeout? —
Strikeout? specifies if the text appears in strikeout. If Strikeout? is TRUE, the text appears in
strikeout.
• Italic? —
Italic? specifies if the text appears in italics. If Italic? is TRUE, the text appears in italics.
• Underline? —
Underline? specifies if the text is underlined. If Underline? is TRUE, the text appears
underlined.
• Outline? —
Outline? specifies if the text is outlined. If Outline? is TRUE, the text appears outlined.
• Shadow? —
Shadow? specifies if the text has a shadow. If Shadow? is TRUE, the text appears in shadow.
• Bold? —
2050 ni.com
Functions
Bold? specifies if the text is bold. If Bold? is TRUE, the text appears bold.
• desired font(Application) —
0 User-specified Font
Application Font
1
(default)
2 System Font
3 Dialog Font
• picture —
picture is the picture to which you want to add the scale. The default is an empty picture.
• scale specs —
scale specs is an array of clusters containing the coordinates and labels you can use in the scale.
Use the Calc Scale Specs VI to obtain the values for this input.
• coordinate —
• label —
• constant coordinate —
constant coordinate is the location of the x coordinate in a vertical scale, or the y coordinate in a
horizontal scale.
• tick length(3) —
tick length specifies the length of the tick marks on the edge of the scale.
• scale attributes —
• horizontal —
• left/top —
left/top indicates whether to draw the text to the left for a vertical scale and the top for a
horizontal scale (TRUE), or to the right for a vertical scale and the bottom for a horizontal
scale (FALSE).
• draw bar —
• line color —
• text color(black) —
• new picture —
new picture is the picture that contains the scale. You can wire this output to any other picture
input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can save the image data to a file using the Graphics Formats VIs.
Examples
2052 ni.com
Functions
Scale.vi
Map Setup
Uses pixel and data ranges to determine scale factors such that (a * data value) + b is
the pixel value that corresponds to that data value.
Inputs/Outputs
• log?(F) —
• coordinate 1 —
• value 1 —
• coordinate 2 —
• value 2 —
• scale factors —
scale factors is the scale factor created from the two points.
Use this output as the input for other VIs such as the Map Pixel to Value VI and the Map Value to
Pixel VI.
• a—
• b—
• log?(F) —
Uses the domain value and the cluster returned by the Map Setup VI to determine a
pixel value corresponding to that domain value.
Inputs/Outputs
• scale factors —
• a—
a is the value used in the scale factor equation in the Map Setup VI.
• b—
b is the value used in the scale factor equation in the Map Setup VI.
• log?(F) —
2054 ni.com
Functions
• x—
• pixel —
Uses the pixel value and the cluster returned by the Map Setup VI to determine the
domain value corresponding to that pixel value.
Inputs/Outputs
• scale factors —
• a—
a is the value used in the scale factor equation in the Map Setup VI.
• b—
b is the value used in the scale factor equation in the Map Setup VI.
• log?(F) —
• pixel —
• x—
Picture Functions
Use the Picture Functions VIs to create visual representations of data. Many of these
picture VIs use clusters to define points and rectangles. The VIs related to drawing text
use clusters and enumerations to describe the font choice and the positioning of the
text.
Palette
Description
Object
Changes the current pen location of a picture to the specified position or by the
Move Pen
specified amount if the position is relative.
Draw Line Draws a line from the current pen position to the specified location in a picture.
Draw
Multiple Draws multiple connected lines into a picture.
Lines
Draw
Draws a rectangle, optionally filling the interior.
Rectangle
Draw
Draws a patterned rectangle in the specified picture to create the effect of graying-out
Grayed Out
a section of the picture.
Rect
2056 ni.com
Functions
Palette
Description
Object
Draw
Draws a rounded rectangle into a picture.
Round Rect
Draw Oval Draws an oval in the rectangle you specify, optionally filling the interior.
Draw Text
Draws a string into a picture.
at Point
Get Text Returns a cluster that contains the left, top, right, and bottom dimensions, in pixels, of
Rect a string.
Draw Text
Draws a string into a picture.
in Rect
Draw Circle
Draws a circle based on a specified radius and center point.
by Radius
Returns two new colors well matched to the input color for highlight and shadow
Hilite Color
coloration, based on the input color and a percentage you specify.
Converts a pixmap into a picture so you can use other Picture Functions VIs to append
Draw
drawing instructions to the image. The data type you wire to the data input
Unflattened
determines the polymorphic instance to use. If you want to convert a 4-bit or 8-bit
Pixmap
pixmap, you must manually select the polymorphic instance you want to use.
Draw
Flattened Draws a 1-, 4-, or 8-bit pixmap or a 24-bit RGB pixmap into a picture.
Pixmap
Palette
Description
Object
Applies a mask to an image and returns the mask information in the mask element of
Create
image data. This VI is useful if you want to make a certain color in an image
Mask
transparent before writing the image to a 2D picture control.
Picture to Converts a picture to a cluster of image data you can use to perform certain tasks with
Pixmap the image, such as save it to a file using the Graphics Formats VIs.
Get Image Returns a subset of a source image instead of the entire image. Use the Picture to
Subset Pixmap VI to convert a picture to a cluster you can wire to image data.
Returns an empty picture. The picture input for all Picture VIs is an empty picture by
default.
Empty
Picture VI You also can create a picture constant for an empty or existing picture and wire the
constant to any picture input. You can resize the constant or right-click it and select
Visible Items»Scrollbar from the shortcut menu to view the entire picture.
Color Box
Use the color box constant to supply a constant color value to the block diagram.
Constant
Color to Resolves any color input, including system colors, into its respective red, green, and
RGB blue components.
RGB to
Converts a red, green, and blue value from 0 to 255 to the corresponding RGB color.
Color
Draw Point
2058 ni.com
Functions
Inputs/Outputs
• picture —
picture is the picture to which you want to add a pixel. The default is an empty picture.
• point(x,y) —
point(x,y) is the coordinate of the pixel to set in the resulting picture relative to the current
location of the origin.
• x—
• y—
• color(black) —
• pen —
pen sets the width and style of the pen the VI uses to draw the picture.
• Width —
Width sets the width in pixels of the pen the VI uses to draw the picture.
• Style —
Style sets the style of the line the VI uses to draw the picture.
Solid
0
(default)
1 Dash
2 Dot
3 DashDot
4 DashDotDot
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can use the Graphics Formats VIs to save the image data to a file. You can wire this output
to the Concatenate Strings function to concatenate the output from multiple Picture Functions
VIs so that they draw on a single picture control.
Move Pen
Changes the current pen location of a picture to the specified position or by the
specified amount if the position is relative.
Inputs/Outputs
• picture —
picture is the picture whose current pen location you want to move. The default is an empty
picture.
• new position —
new position is the point to which the pen moves in the new picture.
2060 ni.com
Functions
If absolute coordinates? is TRUE, the pen moves to the absolute coordinate specified by new
position. If absolute coordinates? is FALSE, the pen moves relative to the current pen location in
picture.
• x—
• y—
• absolute coordinates?(T) —
absolute coordinates? specifies whether the point new position is in absolute or relative
coordinates.
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can use the Graphics Formats VIs to save the image data to a file. You can wire this output
to the Concatenate Strings function to concatenate the output from multiple Picture Functions
VIs so that they draw on a single picture control.
Examples
Draw Line
Draws a line from the current pen position to the specified location in a picture.
The end point is either absolute or relative to the current position, depending on the
value of the absolute coordinates? input.
Inputs/Outputs
• picture —
picture is the picture to which you want to add the line. The default is an empty picture.
• end point —
If absolute coordinates? is TRUE, the line draws to the absolute coordinate that end point
specifies. If absolute coordinates? is FALSE, the line draws relative to the current pen location in
picture.
• x—
• y—
• absolute coordinates?(T) —
absolute coordinates? specifies whether the point new position is in absolute or relative
coordinates.
• color(black) —
2062 ni.com
Functions
• pen —
pen sets the width and style of the pen the VI uses to draw the picture.
• Width —
Width sets the width in pixels of the pen the VI uses to draw the picture.
• Style —
Style sets the style of the line the VI uses to draw the picture.
Solid
0
(default)
1 Dash
2 Dot
3 DashDot
4 DashDotDot
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can use the Graphics Formats VIs to save the image data to a file. You can wire this output
to the Concatenate Strings function to concatenate the output from multiple Picture Functions
VIs so that they draw on a single picture control.
Examples
You also can use the VI to draw color-filled polygons by passing TRUE to the fill? input.
All points are absolute coordinates.
Inputs/Outputs
• picture —
picture is the picture to which you want to add lines. The default is an empty picture.
• line endpoints —
The lines are drawn in the specified color, connecting the points in order. All coordinates are
absolute.
• x—
• y—
• fill?(F) —
• color(black) —
2064 ni.com
Functions
If the interior is filled, the VI uses this color for the interior. The default is black.
• pen —
pen sets the width and style of the pen the VI uses to draw the picture.
• Width —
Width sets the width in pixels of the pen the VI uses to draw the picture.
• Style —
Style sets the style of the line the VI uses to draw the picture.
Solid
0
(default)
1 Dash
2 Dot
3 DashDot
4 DashDotDot
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can use the Graphics Formats VIs to save the image data to a file. You can wire this output
to the Concatenate Strings function to concatenate the output from multiple Picture Functions
VIs so that they draw on a single picture control.
Draw Rectangle
Inputs/Outputs
• picture —
picture is the picture to which you want to add the rectangle. The default is an empty picture.
• rect —
rect is a cluster that contains four numeric controls that describe the left, top, right, and bottom
coordinates of the outer edges of the rectangle.
Horizontal coordinates increase to the right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
• fill?(F) —
• color(black) —
2066 ni.com
Functions
If the interior is filled, the VI uses this color for the interior. The default is black.
• pen —
pen sets the width and style of the pen the VI uses to draw the picture.
• Width —
Width sets the width in pixels of the pen the VI uses to draw the picture.
• Style —
Style sets the style of the line the VI uses to draw the picture.
Solid
0
(default)
1 Dash
2 Dot
3 DashDot
4 DashDotDot
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can use the Graphics Formats VIs to save the image data to a file. You can wire this output
to the Concatenate Strings function to concatenate the output from multiple Picture Functions
VIs so that they draw on a single picture control.
Draws a patterned rectangle in the specified picture to create the effect of graying-out
a section of the picture.
An underlying picture shows through the holes in the pattern. The VI does not frame
the rectangle.
Inputs/Outputs
• picture —
picture is the picture to which you want to add the rectangle. The default is an empty picture.
• rect —
rect is a cluster that contains four numeric controls that describe the left, top, right, and bottom
coordinates of the outer edges of the rectangle.
Horizontal coordinates increase to the right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
• color(black) —
color is the color of the pattern. In black and white, the VI uses white.
• new picture —
2068 ni.com
Functions
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can use the Graphics Formats VIs to save the image data to a file. You can wire this output
to the Concatenate Strings function to concatenate the output from multiple Picture Functions
VIs so that they draw on a single picture control.
Inputs/Outputs
• oval height —
oval height is the height of an oval that defines the amount of curvature for the corners.
• oval width —
oval width is the width of an oval that defines the amount of curvature for the corners.
• picture —
picture is the picture to which you want to add the rectangle. The default is an empty picture.
• rect —
rect is a cluster that contains four numeric controls that describe the left, top, right, and bottom
coordinates of the outer edges of a rectangle that circumscribes the rounded rectangle.
Horizontal coordinates increase to the right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
• fill?(F) —
• color(black) —
If the interior is filled, the VI uses this color for the interior. The default is black.
• pen —
pen sets the width and style of the pen the VI uses to draw the picture.
• Width —
Width sets the width in pixels of the pen the VI uses to draw the picture.
• Style —
Style sets the style of the line the VI uses to draw the picture.
2070 ni.com
Functions
Solid
0
(default)
1 Dash
2 Dot
3 DashDot
4 DashDotDot
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can use the Graphics Formats VIs to save the image data to a file. You can wire this output
to the Concatenate Strings function to concatenate the output from multiple Picture Functions
VIs so that they draw on a single picture control.
If oval height and oval width are zero, you get a normal rectangle. If they are greater
than zero, they describe how the corners of the rectangle should be rounded, as
shown in the following illustration.
Draw Oval
Draws an oval in the rectangle you specify, optionally filling the interior.
Inputs/Outputs
• picture —
picture is the picture to which you want to add the oval. The default is an empty picture.
• rect —
rect is a cluster that contains four numeric controls that describe the left, top, right, and bottom
coordinates of the outer edges of the rectangle.
Horizontal coordinates increase to the right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
• fill?(F) —
• color(black) —
2072 ni.com
Functions
If the interior is filled, the VI uses this color for the interior. The default is black.
• pen —
pen sets the width and style of the pen the VI uses to draw the picture.
• Width —
Width sets the width in pixels of the pen the VI uses to draw the picture.
• Style —
Style sets the style of the line the VI uses to draw the picture.
Solid
0
(default)
1 Dash
2 Dot
3 DashDot
4 DashDotDot
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can use the Graphics Formats VIs to save the image data to a file. You can wire this output
to the Concatenate Strings function to concatenate the output from multiple Picture Functions
VIs so that they draw on a single picture control.
Draw Arc
Inputs/Outputs
• arc size[degrees] —
arc size determines the degree value of the circle you want to draw.
This value can range from -360 to 360. For example, a value of 360 creates a complete circle, and
a value of 180 creates a semicircle.
• start angle[degrees] —
• picture —
picture is the picture to which you want to add the arc. The default is an empty picture.
• rect —
rect is a cluster that contains four numeric controls that describe the left, top, right, and bottom
coordinates of the outer edges of the rectangle.
Horizontal coordinates increase to the right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
2074 ni.com
Functions
• fill?(F) —
fill? specifies whether to fill the rectangle. If FALSE (default), the VI draws only the arc
component and does not draw interior bounds of the wedge.
• color(black) —
If the interior is filled, the VI uses this color for the interior. The default is black.
• pen —
pen sets the width and style of the pen the VI uses to draw the picture.
• Width —
Width sets the width in pixels of the pen the VI uses to draw the picture.
• Style —
Style sets the style of the line the VI uses to draw the picture.
Solid
0
(default)
1 Dash
2 Dot
3 DashDot
4 DashDotDot
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can use the Graphics Formats VIs to save the image data to a file. You can wire this output
to the Concatenate Strings function to concatenate the output from multiple Picture Functions
VIs so that they draw on a single picture control.
A rectangle specifies the size of an oval that contains the arc. Thus, the arc may not fill
the whole rectangle. LabVIEW specifies the angles that describe the arc in degrees. It
can range from –360° to 360°, with positive angles appearing clockwise, and negative
angles appearing counterclockwise. Zero degrees is straight up.
LabVIEW measures all angles as though the enclosing rectangle were square. Thus, a
line from the center to the upper-right corner describes an angle of 45°. The following
illustration shows the conventions used in specifying the angle of a point of an arc.
This VI automatically calculates the bounding rectangle of the text and positions the
text with respect to the point you specify.
2076 ni.com
Functions
Inputs/Outputs
• [user-specified font] —
[user-specified font] specifies the specific font characteristics for the text to draw.
• Font Name: —
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Size —
• Strikeout? —
Strikeout? specifies if the text appears in strikeout. If Strikeout? is TRUE, the text appears in
strikeout.
• Italic? —
Italic? specifies if the text appears in italics. If Italic? is TRUE, the text appears in italics.
• Underline? —
Underline? specifies if the text is underlined. If Underline? is TRUE, the text appears
underlined.
• Outline? —
Outline? specifies if the text is outlined. If Outline? is TRUE, the text appears outlined.
• Shadow? —
Shadow? specifies if the text has a shadow. If Shadow? is TRUE, the text appears in shadow.
• Bold? —
Bold? specifies if the text is bold. If Bold? is TRUE, the text appears bold.
• desired font(Application) —
0 User-specified Font
Application Font
1
(default)
2 System Font
3 Dialog Font
• picture —
picture is the picture to which you want to add the text string. The default is an empty picture.
• origin —
• x—
• y—
• alignment(left, top) —
alignment specifies the location of the text relative to the origin you specify.
• horizontal —
horizontal sets the horizontal position of the text with respect to the origin.
0 left—The horizontal component of origin specifies the left edge of the text.
2078 ni.com
Functions
1 center—The horizontal component of the origin specifies the center of the text.
2 right—The horizontal component of origin specifies the right of the text.
• vertical —
vertical sets the vertical position of the text with respect to the origin.
0 top—The vertical component of origin specifies the top edge of the text.
1 center—The vertical component of the origin specifies the center of the text.
2 bottom—The vertical component of origin specifies the bottom of the text.
• text —
• text color(black) —
• BG color(transparent) —
• text orientation —
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can use the Graphics Formats VIs to save the image data to a file. You can wire this output
to the Concatenate Strings function to concatenate the output from multiple Picture Functions
VIs so that they draw on a single picture control.
• text rect —
text rect is a cluster that contains coordinates that describe the left, top, right, and bottom
coordinates of the outer edges of the rectangle.
• left —
• top —
• right —
• bottom —
Returns a cluster that contains the left, top, right, and bottom dimensions, in pixels, of
a string.
2080 ni.com
Functions
Inputs/Outputs
• [user-specified font] —
[user-specified font] specifies the specific font characteristics for the text to draw.
• Font Name: —
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Size —
• Strikeout? —
Strikeout? specifies if the text appears in strikeout. If Strikeout? is TRUE, the text appears in
strikeout.
• Italic? —
Italic? specifies if the text appears in italics. If Italic? is TRUE, the text appears in italics.
• Underline? —
Underline? specifies if the text is underlined. If Underline? is TRUE, the text appears
underlined.
• Outline? —
Outline? specifies if the text is outlined. If Outline? is TRUE, the text appears outlined.
• Shadow? —
Shadow? specifies if the text has a shadow. If Shadow? is TRUE, the text appears in shadow.
• Bold? —
Bold? specifies if the text is bold. If Bold? is TRUE, the text appears bold.
• desired font(Application) —
0 User-specified Font
Application Font
1
(default)
2 System Font
3 Dialog Font
• alignment(left, top) —
alignment specifies the location of the text relative to the origin you specify.
• horizontal —
horizontal sets the horizontal position of the text with respect to the origin.
0 left—The horizontal component of origin specifies the left edge of the text.
1 center—The horizontal component of the origin specifies the center of the text.
2 right—The horizontal component of origin specifies the right of the text.
• vertical —
vertical sets the vertical position of the text with respect to the origin.
0 top—The vertical component of origin specifies the top edge of the text.
1 center—The vertical component of the origin specifies the center of the text.
2 bottom—The vertical component of origin specifies the bottom of the text.
• origin(0,0) —
2082 ni.com
Functions
• horizontal —
• vertical —
• text —
• text orientation —
text orientation sets the orientation of the text for which you want the bounding rectangle.
• rect —
rect is a cluster that contains coordinates that describe the left, top, right, and bottom
coordinates of the outer edges of the rectangle.
Horizontal coordinates increase to the right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
If the string is larger than the rectangle you specify, the VI clips, or crops, the string to
the area of the rectangle.
Inputs/Outputs
• [user-specified font] —
[user-specified font] specifies the specific font characteristics for the text to draw.
• Font Name: —
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Size —
2084 ni.com
Functions
• Strikeout? —
Strikeout? specifies if the text appears in strikeout. If Strikeout? is TRUE, the text appears in
strikeout.
• Italic? —
Italic? specifies if the text appears in italics. If Italic? is TRUE, the text appears in italics.
• Underline? —
Underline? specifies if the text is underlined. If Underline? is TRUE, the text appears
underlined.
• Outline? —
Outline? specifies if the text is outlined. If Outline? is TRUE, the text appears outlined.
• Shadow? —
Shadow? specifies if the text has a shadow. If Shadow? is TRUE, the text appears in shadow.
• Bold? —
Bold? specifies if the text is bold. If Bold? is TRUE, the text appears bold.
• desired font(Application) —
0 User-specified Font
Application Font
1
(default)
2 System Font
3 Dialog Font
• picture —
picture is the picture to which you want to add the text string. The default is an empty picture.
• text orientation —
• rect —
rect contains the upper-left and lower-right coordinates that describe a rectangle bounding the
text.
The VI clips text to the coordinates of this rectangle. Horizontal coordinates increase to the right,
and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
• text —
• text color(black) —
2086 ni.com
Functions
• BG color(transparent) —
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can use the Graphics Formats VIs to save the image data to a file. You can wire this output
to the Concatenate Strings function to concatenate the output from multiple Picture Functions
VIs so that they draw on a single picture control.
Inputs/Outputs
• arc size(360) —
arc size determines the degree value of the circle you want to draw.
This value can range from -360 to 360. For example, a value of 360 creates a complete circle, and
a value of 180 creates a semicircle.
• start angle(0) —
• picture —
picture is the picture to which you want to add the circle. The default is an empty picture.
• radius —
If, for example, this value is 40, the radius of the resulting circle is 40 pixels.
• pixel center —
pixel center contains the coordinates around which the VI draws the circle.
• horizontal —
horizontal is the pixel center of the circle relative to the x-coordinate of the current origin.
• vertical —
vertical is the pixel center of the circle relative to the y-coordinate of the current origin.
• fill?(F) —
• color(black) —
color sets the pen color to use when drawing the oval.
If unwired, the VI uses the last color specified as the pen color.
• pen —
pen sets the width and style of the pen the VI uses to draw the picture.
2088 ni.com
Functions
• Width —
Width sets the width in pixels of the pen the VI uses to draw the picture.
• Style —
Style sets the style of the line the VI uses to draw the picture.
Solid
0
(default)
1 Dash
2 Dot
3 DashDot
4 DashDotDot
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
You also can wire this output to the Picture to Pixmap VI to obtain an image data cluster. You
then can use the Graphics Formats VIs to save the image data to a file. You can wire this output
to the Concatenate Strings function to concatenate the output from multiple Picture Functions
VIs so that they draw on a single picture control.
The Draw Circle by Radius VI uses the information you specify and calls the Draw Oval
VI.
A rectangle specifies the size of an oval that contains the arc. Thus, the arc may not fill
the whole rectangle. LabVIEW specifies the angles that describe the arc in degrees. It
can range from –360° to 360°, with positive angles appearing clockwise, and negative
angles appearing counterclockwise. Zero degrees is straight up.
LabVIEW measures all angles as though the enclosing rectangle were square. Thus, a
line from the center to the upper-right corner describes an angle of 45°. The following
illustration shows the conventions used in specifying the angle of a point of an arc.
Hilite Color
Returns two new colors well matched to the input color for highlight and shadow
coloration, based on the input color and a percentage you specify.
You can use the highlight colors to create three-dimensionally shaded objects.
Inputs/Outputs
• Color In —
Color In is the input color on which to base the returned highlight and shadow colors.
• Percentage(30) —
Percentage determines the degree of highlighting and shadow in the new colors.
• Hilite —
• Shadow —
2090 ni.com
Functions
Converts a pixmap into a picture so you can use other Picture Functions VIs to append
drawing instructions to the image. The data type you wire to the data input determines
the polymorphic instance to use. If you want to convert a 4-bit or 8-bit pixmap, you
must manually select the polymorphic instance you want to use.
Inputs/Outputs
• picture —
picture is the picture to which you want to add the pixmap. The default is an empty picture.
top left point specifies in coordinates where to place the top-left corner of the image in the new
picture.
• x—
• y—
data is a 2D array of 32-bit unsigned integers that describes the color of each pixel in the image
in raster order.
Each pixel has three bytes to describe its color. The first byte for each pixel describes the red
value, the second byte describes the green value, and the third byte describes the blue value.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first byte
describes the first eight pixels, the second byte describes the next eight pixels, and so on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each pixel
in the image, LabVIEW draws any pixels missing from the array without transparency.
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
2092 ni.com
Functions
Inputs/Outputs
• picture —
picture is the picture to which you want to add the pixmap. The default is an empty picture.
top left point specifies in coordinates where to place the top-left corner of the image in the new
picture.
• x—
• y—
• data —
data is a 2D array of Boolean inputs in which each input represents a single pixel.
A value of FALSE in data corresponds to element 0 in color table. A value of TRUE in data
corresponds to element 1 in color table.
• color table —
color table is an array of two colors to which the array of data maps.
If data is FALSE, the default is black. If data is TRUE, the default is white.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first byte
describes the first eight pixels, the second byte describes the next eight pixels, and so on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each pixel
in the image, LabVIEW draws any pixels missing from the array without transparency.
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
Inputs/Outputs
• picture —
picture is the picture to which you want to add the pixmap. The default is an empty picture.
top left point specifies in coordinates where to place the top-left corner of the image in the new
picture.
• x—
• y—
2094 ni.com
Functions
• data —
data is a 2D array of 8-bit unsigned integers that describes the color of each pixel in the image in
raster order.
Each element in data specifies the index of the corresponding color in color table. Thus, valid
values in data are the indices of the color table array, or 0 through 15.
• color table —
color table stores 32-bit RGB values where the most-significant byte is zero, followed in order by
red, green, and blue values. If unwired, the VI uses the default LabVIEW 16-color palette.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first byte
describes the first eight pixels, the second byte describes the next eight pixels, and so on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each pixel
in the image, LabVIEW draws any pixels missing from the array without transparency.
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
Inputs/Outputs
• picture —
picture is the picture to which you want to add the pixmap. The default is an empty picture.
top left point specifies in coordinates where to place the top-left corner of the image in the new
picture.
• x—
• y—
• data —
data is a 2D array of 8-bit unsigned integers that describes the color of each pixel in the image in
raster order.
Each element in data specifies the index of the corresponding color in color table. Thus, valid
values in data are the indices of the color table array, or 0 through 255.
• color table —
color table is an array of up to 256 colors to which the array of data maps.
color table stores 32-bit RGB values where the most-significant byte is zero, followed in order by
red, green, and blue values. If unwired, the VI uses the default LabVIEW 256-color palette.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first byte
2096 ni.com
Functions
describes the first eight pixels, the second byte describes the next eight pixels, and so on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each pixel
in the image, LabVIEW draws any pixels missing from the array without transparency.
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
Draws a 1-, 4-, or 8-bit pixmap or a 24-bit RGB pixmap into a picture.
This VI takes a 1D array of bytes as input and assumes the user completes all packing
and padding.
Inputs/Outputs
• picture —
picture is the picture to which you want to add the array of data. The default is an empty picture.
• image data —
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this input.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
describes the blue value.
If image depth is 8, each pixel has one byte to describe its color. The value of each byte
corresponds to an element in colors, which stores 32-bit RGB values where the most-
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
image include 0 through 15.
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each
pixel in the image, LabVIEW draws any pixels missing from the array without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this input. colors stores 32-bit
RGB values where the most-significant byte is zero, followed in order by red, green, and blue
values. Valid values include 0 through 255.
2098 ni.com
Functions
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle in
which you want to draw the image.
The VI clips the image to the width and height of the rectangle. The bottom and right edges
of the rectangle bounds do not contain image pixels. Horizontal coordinates increase to the
right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
• new picture —
new picture is the picture that contains the new image. You can wire this output to any other
picture input to add more drawing instructions to the picture.
You can use this VI with one of the Graphics Formats VIs that reads graphics files in a
flattened format. You also can use the Flatten Pixmap VI to produce flattened pixmap
data. Use the Unflatten Pixmap VI to unflatten data for use with one of the other VIs
used to draw a pixmap.
The Draw Flattened Pixmap VI expects all images to be padded with a 2-byte
boundary. The Draw Flattened Pixmap VI does not pad images. The various Graphics
Formats VIs which load images also pad images appropriately for use in the Draw
Flattened Pixmap VI. If you choose to upload your image in a different way, you need to
pad the data with a 2-byte boundary yourself before using the Draw Flattened Pixmap
VI.
Create Mask
Applies a mask to an image and returns the mask information in the mask element of
image data. This VI is useful if you want to make a certain color in an image
transparent before writing the image to a 2D picture control.
Inputs/Outputs
• image data —
image data returns information about the image so you can use the Draw Flattened Pixmap VI to
draw it as a picture.
• image type —
• image depth —
2100 ni.com
Functions
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this output.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
describes the blue value.
If image depth is 8, each pixel has one byte to describe its color. The value of each byte
corresponds to an element in colors, which stores 32-bit RGB values where the most-
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
image include 0 through 15.
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each
pixel in the image, LabVIEW draws any pixels missing from the array without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this output.
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle of the
image.
The VI clips the image to the width and height of the rectangle. The bottom and right edges
of the rectangle bounds do not contain image pixels. Horizontal coordinates increase to the
right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
Mask Color is the color in the image you want to appear transparent for 24-bit, 8-bit, and 4-bit
images.
2102 ni.com
Functions
If 1-Bit Mask Value is TRUE (default), the VI draws all elements in the image array with an index
of 1 as transparent. If FALSE, the VI draws all elements with an index of 0 as transparent.
The VI ignores this input if image data does not describe a 1-bit image.
If Combine Masks? is TRUE, the VI combines any existing mask information for the image and
the mask information you wire to this VI and applies all the mask information to the image. If
FALSE (default), the VI applies only the mask information you wire to this VI.
• image data —
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this input.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
describes the blue value.
If image depth is 8, each pixel has one byte to describe its color. The value of each bit
corresponds to an element in colors, which stores 32-bit RGB values where the most
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
The size of the array might be larger than expected due to padding.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each
pixel in the image, LabVIEW draws any pixels missing from the array without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this input. colors stores 32-bit
RGB values where the most-significant byte is zero, followed in order by red, green, and blue
values. Valid values include 0 through 255.
If the array is empty for any depth other than 24 bits per pixel, the image is using the default
LabVIEW color palette.
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle in
which you want to draw the image.
Horizontal coordinates increase to the right, and vertical coordinates increase to the
2104 ni.com
Functions
bottom.
• left —
• top —
• right —
• bottom —
Use the Flatten Pixmap VI to convert a pixmap to a cluster you can wire to image data.
If the image is 4-bit, 8-bit, or 24-bit, wire a color to the Mask Color input. If the image is
1-bit, wire a value to the 1-Bit Mask Value input.
Examples
Picture to Pixmap
Converts a picture to a cluster of image data you can use to perform certain tasks with
the image, such as save it to a file using the Graphics Formats VIs.
Inputs/Outputs
• picture —
• rect —
rect is a cluster that contains coordinates that describe the bounding rectangle of the image you
want to convert.
The default is to return the entire image. Horizontal coordinates increase to the right, and
vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
• depth —
depth specifies the color depth of the image, which is the number of bits to use to describe the
color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per pixel.
• Background Color —
2106 ni.com
Functions
• new picture —
• image data —
image data returns information about the pixmap so you can use the Graphics Formats VIs to
save the pixmap to a file.
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this output.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
describes the blue value.
If image depth is 8, each pixel has one byte to describe its color. The value of each bit
corresponds to an element in colors, which stores 32-bit RGB values where the most
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
image include 0 through 15.
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
The size of the array might be larger than expected due to padding.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each
pixel in the image, LabVIEW draws any pixels missing from the array without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this output.
If the array is empty for any depth other than 24 bits per pixel, the image is using the default
LabVIEW color palette.
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle of the
image.
Horizontal coordinates increase to the right, and vertical coordinates increase to the
bottom.
• left —
• top —
2108 ni.com
Functions
• right —
• bottom —
Returns a subset of a source image instead of the entire image. Use the Picture to
Pixmap VI to convert a picture to a cluster you can wire to image data.
If you wire 32-bit image data to this VI, the VI strips the alpha channel and returns
24-bit image data.
Inputs/Outputs
• image data —
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this input.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
describes the blue value.
If image depth is 8, each pixel has one byte to describe its color. The value of each byte
corresponds to an element in colors, which stores 32-bit RGB values where the most-
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
image include 0 through 15.
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each
pixel in the image, LabVIEW draws any pixels missing from the array without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this input. colors stores 32-bit
RGB values where the most-significant byte is zero, followed in order by red, green, and blue
values. Valid values include 0 through 255.
2110 ni.com
Functions
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle in
which you want to draw the image.
The VI clips the image to the width and height of the rectangle. The bottom and right edges
of the rectangle bounds do not contain image pixels. Horizontal coordinates increase to the
right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
• subset rect —
subset rect is a cluster that contains coordinates that describe the bounding rectangle of the
image subset.
If the coordinates do not describe a valid rectangle, the VI coerces the coordinates to a valid
rectangle and returns the coerced coordinates in true subset rect.
• left —
• top —
• right —
• bottom —
• image subset —
image subset returns information about the image subset so you can use the Draw Flattened
Pixmap VI to draw the image as a picture or use the Graphics Formats VIs to save the image to a
file.
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this output.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
2112 ni.com
Functions
If image depth is 8, each pixel has one byte to describe its color. The value of each bit
corresponds to an element in colors, which stores 32-bit RGB values where the most
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
image include 0 through 15.
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
The size of the array might be larger than expected due to padding.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each
pixel in the image, LabVIEW draws any pixels missing from the array without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this output.
If the array is empty for any depth other than 24 bits per pixel, the image is using the default
LabVIEW color palette.
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle of the
image.
Horizontal coordinates increase to the right, and vertical coordinates increase to the
bottom.
• left —
• top —
• right —
• bottom —
true subset rect is a cluster that contains coordinates that describe the bounding rectangle of
the image subset returned by the VI.
• left —
• top —
• right —
• bottom —
2114 ni.com
Functions
Examples
Empty Picture VI
Returns an empty picture. The picture input for all Picture VIs is an empty picture by
default.
You also can create a picture constant for an empty or existing picture and wire the
constant to any picture input. You can resize the constant or right-click it and select
Visible Items»Scrollbar from the shortcut menu to view the entire picture.
Inputs/Outputs
• empty picture —
Use the color box constant to supply a constant color value to the block diagram.
Use the color picker to set the color in the color box constant.
You cannot change the value of the color box constant while the VI runs. You can assign
Color to RGB
Resolves any color input, including system colors, into its respective red, green, and
blue components.
To perform a task such as color arithmetic with symbolic colors, you must convert the
colors to their red, green, and blue components.
Inputs/Outputs
• Color —
Color is the color that you want to convert to its respective red, green, and blue components.
• Resolved Color —
• R—
• G—
• B—
2116 ni.com
Functions
RGB to Color
Converts a red, green, and blue value from 0 to 255 to the corresponding RGB color.
Inputs/Outputs
• R—
• G—
• B—
• Color —
Graphics Formats
Use the Graphics Formats VIs to retrieve or store image data in BMP, JPEG, or PNG
image files.
Write JPEG
Writes a JPEG file.
File
Read JPEG Reads a JPEG file and creates the data necessary to display the file in a picture
File control.
Reads a PNG file and creates the data necessary to display the file in a picture
Read PNG File
control.
Reads a Windows bitmap file and creates the data necessary to display the file in a
Read BMP File
picture control.
Flatten
Converts pixmap data from a 2D array to a 1D array.
Pixmap
Unflatten
Converts a cluster of image data into a 2D array.
Pixmap
If you want to write a pixmap to a file, use the Flatten Pixmap VI to convert the data to
an image data cluster before using this VI. If you want to write a picture to a file, use
the Picture to Pixmap VI to convert the data to an image data cluster before using this
VI.
2118 ni.com
Functions
Inputs/Outputs
• quality (80) —
quality specifies the level of quality you want for the JPEG using the IJG JPEG library scale,
which ranges from 0 to 100. The default is 80.
The scale balances image quality and file size. A value in the 75–95 range produces a compressed
file with a high-quality image, and a value below 50 produces a smaller file size with a low-
quality image.
path to JPEG file specifies the path to and name of the JPEG file to write.
If you do not specify a path, LabVIEW displays a file dialog box so the user can navigate to the
file.
• image data —
If you wire 32-bit image data to this VI, the VI returns a 24-bit pixmap.
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this input.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
describes the blue value.
If image depth is 8, each pixel has one byte to describe its color. The value of each byte
corresponds to an element in colors, which stores 32-bit RGB values where the most-
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
image include 0 through 15.
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each
pixel in the image, LabVIEW draws any pixels missing from the array without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this input. colors stores 32-bit
RGB values where the most-significant byte is zero, followed in order by red, green, and blue
values. Valid values include 0 through 255. In the Write File VIs (BMP, JPEG, and PNG),
LabVIEW does not have an automatic color table. Use the colors input even for image depth
of lower bit value to ensure the best performance of the Write File VIs.
2120 ni.com
Functions
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle of the
image.
The bottom and right edges of the rectangle bounds do not contain image pixels. Horizontal
coordinates increase to the right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• path —
• error out —
error out contains error information. This output provides standard error out functionality.
If you want to write a pixmap to a file, use the Flatten Pixmap VI to convert the data to
an image data cluster before using this VI. If you want to write a picture to a file, use
the Picture to Pixmap VI to convert the data to an image data cluster before using this
VI.
Inputs/Outputs
• compression (default) —
compression specifies the level of file compression you want for the PNG file.
The quality of the graphic is not affected by the compression, but the graphic file size and speed
of compression are affected by this value. Valid values range from –1 to 9 and balance file
compression with speed. The following table lists example values for compression.
path to PNG file specifies the path to and name of the PNG file to write.
If you do not specify a path, LabVIEW displays a file dialog box so the user can navigate to the
file.
• image data —
If you wire 32-bit image data to this VI, the VI returns a 24-bit pixmap.
2122 ni.com
Functions
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this input.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
describes the blue value.
If image depth is 8, each pixel has one byte to describe its color. The value of each byte
corresponds to an element in colors, which stores 32-bit RGB values where the most-
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
image include 0 through 15.
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each
pixel in the image, LabVIEW draws any pixels missing from the array without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this input. colors stores 32-bit
RGB values where the most-significant byte is zero, followed in order by red, green, and blue
values. Valid values include 0 through 255. In the Write File VIs (BMP, JPEG, and PNG),
LabVIEW does not have an automatic color table. Use the colors input even for image depth
of lower bit value to ensure the best performance of the Write File VIs.
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle of the
image.
The bottom and right edges of the rectangle bounds do not contain image pixels. Horizontal
coordinates increase to the right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
2124 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• path —
• error out —
error out contains error information. This output provides standard error out functionality.
If you want to write a pixmap to a file, use the Flatten Pixmap VI to convert the data to
an image data cluster before using this VI. If you want to write a picture to a file, use
the Picture to Pixmap VI to convert the data to an image data cluster before using this
VI.
Inputs/Outputs
• path to BMP file —
path to BMP file specifies the path to and name of the bitmap file to write.
If you do not specify a path, LabVIEW displays a file dialog box so the user can navigate to the
file.
• image data —
If you wire 32-bit image data to this VI, the VI returns a 24-bit pixmap.
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this input.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
describes the blue value.
If image depth is 8, each pixel has one byte to describe its color. The value of each byte
corresponds to an element in colors, which stores 32-bit RGB values where the most-
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
image include 0 through 15.
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each
pixel in the image, LabVIEW draws any pixels missing from the array without transparency.
• colors —
2126 ni.com
Functions
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this input. colors stores 32-bit
RGB values where the most-significant byte is zero, followed in order by red, green, and blue
values. Valid values include 0 through 255. In the Write File VIs (BMP, JPEG, and PNG),
LabVIEW does not have an automatic color table. Use the colors input even for image depth
of lower bit value to ensure the best performance of the Write File VIs.
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle of the
image.
The bottom and right edges of the rectangle bounds do not contain image pixels. Horizontal
coordinates increase to the right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• path —
• error out —
error out contains error information. This output provides standard error out functionality.
Reads a JPEG file and creates the data necessary to display the file in a picture control.
Use the Draw Flattened Pixmap VI to display the bitmap you acquire with this VI. Use
the Unflatten Pixmap VI to work with the data as a 2D array.
Inputs/Outputs
• path to JPEG file —
path to JPEG file specifies the path to and name of the JPEG file to read.
If you do not specify a path, LabVIEW displays a file dialog box so the user can navigate to the
file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
2128 ni.com
Functions
use 8 bit color table reads the JPEG file at an 8 bit per pixel image depth instead of 24 bit per
pixel image depth. The default value is FALSE.
• path —
• image data —
image data returns information about the image so you can use the Draw Flattened Pixmap VI to
draw it as a picture.
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this output.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
describes the blue value.
If image depth is 8, each pixel has one byte to describe its color. The value of each bit
corresponds to an element in colors, which stores 32-bit RGB values where the most
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
The size of the array might be larger than expected due to padding.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on. In this VI, the mask array is always empty.
Since the array is empty, LabVIEW draws all pixels without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this output.
If the array is empty for any depth other than 24 bits per pixel, the image is using the default
LabVIEW color palette.
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle of the
image.
Horizontal coordinates increase to the right, and vertical coordinates increase to the
bottom.
• left —
• top —
• right —
• bottom —
2130 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Reads a PNG file and creates the data necessary to display the file in a picture control.
Use the Draw Flattened Pixmap VI to display the bitmap you acquire with this VI. Use
the Unflatten Pixmap VI to work with the data as a 2D array.
Inputs/Outputs
• path to PNG file —
path to PNG file specifies the path to and name of the PNG file to read.
If you do not specify a path, LabVIEW displays a file dialog box so the user can navigate to the
file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Transparency Thresh —
Transparency Thresh incorporates alpha information for a 32-bit PNG image into the mask of
the resulting image data. LabVIEW treats as opaque any alpha values equal to or greater than
Transparency Thresh. LabVIEW treats all other alpha values as fully transparent. The value of
Transparency Thresh must be between 0 and 255.
• path —
• image data —
image data returns information about the image so you can use the Draw Flattened Pixmap VI to
draw it as a picture.
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, 24, and 32 bits
per pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this output.
If image depth is 32, each pixel has three bytes to describe its color, and a fourth byte to
describe transparency. The fourth byte is known as the 8-bit alpha channel. The first byte
for each pixel describes the red value, the second byte describes the green value, and the
third byte describes the blue value.
If image depth is 24, each pixel has three bytes to describe its color. When the image depth
is 24, the behavior is similar to when image depth is 32. However, 24-bit images do not
have an extra fourth byte to describe transparency.
If image depth is 8, each pixel has one byte to describe its color. The value of each bit
corresponds to an element in colors, which stores 32-bit RGB values where the most
2132 ni.com
Functions
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
image include 0 through 15.
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
The size of the array might be larger than expected due to padding.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on.
In 32-bit cases, the mask is always filled. For all other cases in this VI, the mask array is
empty. If the array is empty, LabVIEW draws all pixels without transparency. If the array does
not contain a bit for each pixel in the image, LabVIEW draws any pixels missing from the
array without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this output.
If the array is empty for any depth other than 24 bits per pixel, the image is using the default
LabVIEW color palette.
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle of the
image.
Horizontal coordinates increase to the right, and vertical coordinates increase to the
bottom.
• left —
• top —
• right —
• bottom —
• error out —
error out contains error information. This output provides standard error out functionality.
You might receive an error if you attempt to read a PNG file whose image type is not
supported in LabVIEW. LabVIEW supports JPG, BMP, and PNG images. To load a PNG
image with an unsupported image type in LabVIEW, use a third-party graphics format
converter to save the image as a standard file format that LabVIEW can load (JPG, BMP,
or PNG).
Reads a Windows bitmap file and creates the data necessary to display the file in a
picture control.
Use the Draw Flattened Pixmap VI to display the bitmap you acquire with this VI. Use
2134 ni.com
Functions
Inputs/Outputs
• path to BMP file —
path to BMP file specifies the path to and name of the bitmap file to read.
If you do not specify a path, LabVIEW displays a file dialog box so the user can navigate to the
file.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• path —
• image data —
image data returns information about the image so you can use the Draw Flattened Pixmap VI to
draw it as a picture.
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this output.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
describes the blue value.
If image depth is 8, each pixel has one byte to describe its color. The value of each bit
corresponds to an element in colors, which stores 32-bit RGB values where the most
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
image include 0 through 15.
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
The size of the array might be larger than expected due to padding.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on. In this VI, the mask array is always empty.
Since the array is empty, LabVIEW draws all pixels without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this output.
2136 ni.com
Functions
If the array is empty for any depth other than 24 bits per pixel, the image is using the default
LabVIEW color palette. In this VI, the array is always filled up for 8, 4, and 1 bit cases.
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle of the
image.
Horizontal coordinates increase to the right, and vertical coordinates increase to the
bottom.
• left —
• top —
• right —
• bottom —
• error out —
error out contains error information. This output provides standard error out functionality.
Flatten Pixmap
You can write the resulting 1D array to a file or use the low-level Draw Flattened
Pixmap VI to view it.
Inputs/Outputs
• top left —
top left specifies in coordinates where to place the top-left corner of the image.
• x—
• y—
• 24-bit pixmap —
The dimensions of the image data match the dimensions of this array.
• 8-bit pixmap —
The dimensions of the image data match the dimensions of this array. The VI uses the data as
indexes into the color array.
• 4-bit pixmap —
The dimensions of the image data match the dimensions of this array. The VI uses the data as
indexes into the color array.
• 1-bit pixmap —
2138 ni.com
Functions
The dimensions of the image data match the dimensions of this array. Elements that are FALSE
map to element 0 in the color table. Elements that are TRUE map to element 1 in the color table.
• colors —
colors is an array of RGB color values that correspond to the values in the pixmap input you
wire. Which pixmap input you wire determines how LabVIEW interprets the value of this input.
If you wire data to 24-bit pixmap, LabVIEW ignores this input. If you wire data to 8-bit pixmap,
the array can have 256 elements. If you wire data to 4-bit pixmap, the array can have 16
elements. If you wire data to 1-bit pixmap, the array can have 2 elements. If the colors array is
empty for any depth other than 24 bits per pixel, the image uses the default LabVIEW color
palette.
• mask —
If the mask array is empty, LabVIEW draws all resulting pixels without transparency.
• image data —
image data returns information about the pixmap so you can use the Draw Flattened Pixmap VI
to draw the pixmap as a picture or use the Graphics Formats VIs to save the pixmap to a file.
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this output.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
describes the blue value.
If image depth is 8, each pixel has one byte to describe its color. The value of each bit
corresponds to an element in colors, which stores 32-bit RGB values where the most
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
image include 0 through 15.
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
The size of the array might be larger than expected due to padding.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each
pixel in the image, LabVIEW draws any pixels missing from the array without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this output.
2140 ni.com
Functions
If the array is empty for any depth other than 24 bits per pixel, the image is using the default
LabVIEW color palette.
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle of the
image.
Horizontal coordinates increase to the right, and vertical coordinates increase to the
bottom.
• left —
• top —
• right —
• bottom —
Unflatten Pixmap
Inputs/Outputs
• image data —
If you wire 32-bit image data to this VI, the VI returns a 24-bit pixmap.
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this input.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
describes the blue value.
If image depth is 8, each pixel has one byte to describe its color. The value of each byte
corresponds to an element in colors, which stores 32-bit RGB values where the most-
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
image include 0 through 15.
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
2142 ni.com
Functions
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each
pixel in the image, LabVIEW draws any pixels missing from the array without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this input. colors stores 32-bit
RGB values where the most-significant byte is zero, followed in order by red, green, and blue
values. Valid values include 0 through 255.
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle of the
image.
The bottom and right edges of the rectangle bounds do not contain image pixels. Horizontal
coordinates increase to the right, and vertical coordinates increase to the bottom.
• left —
• top —
• right —
• bottom —
• top left —
top left is a cluster that contains a horizontal (x) and a vertical (y) component.
• x—
• y—
• 24-bit pixmap —
• 8-bit pixmap —
The dimensions of the pixmap match the dimensions of this array. The VI uses the data as
indexes in the colors output.
• 4-bit pixmap —
The dimensions of the pixmap match the dimensions of this array. The VI uses the data as
indexes in the colors output.
• 1-bit pixmap —
2144 ni.com
Functions
The dimensions of the bitmap match the dimensions of this array. Elements that are FALSE map
to element 0 in the colors output and elements that are TRUE map to element 1.
• colors —
colors is an array of RGB color values that correspond to the values in the pixmap output.
For the 24-bit pixmap, LabVIEW ignores this output. For the 8-bit pixmap, the array can have
256 elements. For the 4-bit pixmap, the array can have 16 elements. For the 1-bit pixmap, the
array can have 2 elements.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first byte
describes the first eight pixels, the second byte describes the next eight pixels, and so on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each pixel
in the image, LabVIEW draws any pixels missing from the array without transparency.
When you use a Graphics Formats VI to read a graphics file, the VI returns the image
data in a cluster. Use the Draw Unflattened Pixmap VI to display the data directly or use
the Unflatten Pixmap VI to convert the data to a more useful 2D representation.
In this VI, only one of the various pixmap outputs (24-bit, 8-bit, 4-bit, or 1-bit) is valid at
a time. In other words, this VI will not produce an output of two different pixmap
values.
Beep (Windows)
Causes the system to issue an audible tone. (Windows Vista 64-bit) This VI might not
work correctly if use system alert? is FALSE.
Inputs/Outputs
• frequency (Hz) —
frequency (Hz) is the frequency of the tone in Hertz. LabVIEW ignores this parameter when use
system alert? is TRUE.
• duration (msec) —
duration (msec) is the duration of the tone in milliseconds. LabVIEW ignores this parameter
when use system alert? is TRUE.
use system alert? specifies whether LabVIEW uses the default system alert and ignores
frequency (Hz) and duration (msec). If FALSE, this VI makes a synchronous beep using the
specified frequency and duration.
Sound
(Windows) You must have DirectX 8.0 or later to use the Sound VIs.
(Linux) You must have the Open Sound System (OSS) driver to use the Sound VIs.
LabVIEW searches for input and output devices by looking for files named /dev/dsp
or /dev/dspX, where X is an integer between 0 and 16. LabVIEW attempts to open
each input and output device. If LabVIEW cannot detect the sound card, check that a
device file named /dev/dsp or /dev/dspX exists on the local system and that you
have permission to read from and write to the device. If you moved this device to a
location other than the default, LabVIEW can work with a symbolic link.
2146 ni.com
Functions
Output Use the Sound Output VIs to configure and control a sound output device.
Input Use the Sound Input VIs to configure and control a sound input device.
Files Use the Sound Files VIs to create and retrieve PC wave files (.wav).
Output
Use the Sound Output VIs to configure and control a sound output device.
(Windows) You must have DirectX 8.0 or later to use the Sound Output VIs.
(Linux) You must have the Open Sound System (OSS) driver to use this VI. LabVIEW
searches for input and output devices by looking for files named /dev/dsp or /dev/
dspX, where X is an integer between 0 and 16. LabVIEW attempts to open each input
and output device. If LabVIEW cannot detect the sound card, check that a device file
named /dev/dsp or /dev/dspX exists on the local system and that you have
permission to read from and write to the device. If you moved this device to a location
other than the default, LabVIEW can work with a symbolic link.
Palette
Description
Object
Play Plays data from the sound output device using finite sampling. This Express VI
Waveform automatically configures an output task and clears the task after the output completes.
Sound
Output Configures a sound output device to generate data. Use the Sound Output Write VI to
Configure
Palette
Description
Object
Sound
Starts playback from the device. This VI is necessary only if the Sound Output Stop VI
Output
has previously been called.
Start
Sound Writes data to a sound output device. You must use the Sound Output Configure VI to
Output configure the device if you are writing continuously. You must manually select the
Write polymorphic instance you want to use.
Sound
Stops the device from playing sound from the buffer. Use the Sound Output Clear VI to
Output
clear the data in the buffer. Use the Sound Output Start VI to restart output.
Stop
Sound
Stops the device from playing sound, clears the buffer, returns the task to the default
Output
state, and clears the resources associated with the task. The task becomes invalid.
Clear
Sound
Output Waits until all of the sound is played by the output device.
Wait
Sound
Output Returns information about the current state of a sound output task.
Info
Sound
Output
Sets the volume at which the sound output device plays.
Set
Volume
Play
Sound Opens a file and starts playing it immediately.
File
2148 ni.com
Functions
Play Waveform
Plays data from the sound output device using finite sampling. This Express VI
automatically configures an output task and clears the task after the output
completes.
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Option Description
Returns the minimum output sample rate the selected device supports.
Device Returns the maximum output sample rate the selected device supports.
capabilities
• Resolution (bits)—
• #Channels—
Test Device Tests the selected sound device by playing a 500 Hz tone for approximately 1/4
Option Description
second.
Inputs/Outputs
• Device —
• error in —
The error in cluster can accept error information wired from VIs previously called. Use this
information to decide if any functionality should be bypassed in the event of errors from other
VIs. The pop-up option Explain Error (or Explain Warning) gives more information about the
error displayed.
• Data —
You can wire a waveform, an array of waveforms (one waveform per channel), or the Data output
of the Acquire Sound Express VI to this input. The Play Waveform Express VI uses the timing
information the waveform data type specifies to play back sound.
• error out —
The error out cluster passes error or warning information out of a VI to be used by other VIs. The
pop-up option Explain Error (or Explain Warning) gives more information about the error
displayed.
Components
Returns the maximum output sample rate the selected device supports.
Returns the minimum output sample rate the selected device supports.
2150 ni.com
Functions
The error out cluster passes error or warning information out of a VI to be used by
other VIs. The pop-up option Explain Error (or Explain Warning) gives more
information about the error displayed.
The source string describes the origin of the error or warning. The pop-up option
Explain Error (or Explain Warning) gives more information about the error displayed.
The code input identifies the error or warning. The pop-up option Explain Error (or
Explain Warning) gives more information about the error displayed.
The status boolean is either TRUE (X) for an error, or FALSE (checkmark) for no error or
a warning. The pop-up option Explain Error (or Explain Warning) gives more
information about the error displayed.
Tests the selected sound device by playing a 500 Hz tone for approximately 1/4 second.
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• number of samples/ch —
number of samples/ch specifies the number of samples per channel in the buffer.
Use a large number of samples for continuous operations. Use a smaller number of samples if
you want to use less memory.
• sample mode —
sample mode specifies whether you intend to write just once (Finite Samples) or continuously
(Continuous Samples).
In Finite Samples mode, call Sound Output Write only until you have written the number of
samples specified in number of samples/ch. In Continuous Samples mode, you can call Sound
Output Write repeatedly as needed.
• device ID —
device ID is the input or output device you access for a sound operation. In general, most users
should select the default value of 0.
The value ranges from 0 to n–1, where n is the number of input or output devices on the
computer.
• sound format —
sound format sets the playing rate, the number of channels, and the bits per sample of the
sound operation. The values for each of these controls is dependent on your sound card.
Note Setting sample rate (S/s) and bits per sample high uses more of the computer
memory when the VI runs. Also, not all operating systems and sound cards support
all sound format options.
sample rate (S/s) sets the sampling rate for the sound operation. Common rates are 44,100
S/s, 22,050 S/s, and 11,025 S/s. The default is 22,050 S/s.
• number of channels —
number of channels specifies the number of channels. This input can accept as many
channels as the sound card supports. For most sound cards 1 is Mono and 2 is Stereo.
2152 ni.com
Functions
bits per sample specifies the quality of each sample in bits. Common resolutions are 16 bits
and 8 bits. The default is 16 bits.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• task ID —
task ID returns an identification number associated with the configuration on the specified
device. You can pass task ID to other sound operation VIs.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Note If the buffer you set using the number of samples/ch input of the
Sound File Read VI is full when the application executes, LabVIEW
automatically implements a wait on the Sound Output Write VI even if you
set timeout to 0. This may cause the data flow to hang and return
unexpected results.
2154 ni.com
Functions
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Note If the buffer you set using the number of samples/ch input of the
Sound File Read VI is full when the application executes, LabVIEW
automatically implements a wait on the Sound Output Write VI even if you
set timeout to 0. This may cause the data flow to hang and return
unexpected results.
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
• data —
data writes any sound data to the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (sec) —
timeout (sec) specifies the time, in seconds, that the function waits for the sound operation to
complete.
This VI returns an error if the time elapses. The default is 10. If you set timeout (sec) to -1, the VI
waits indefinitely. If you set timeout (sec) to 0, the VI returns immediately while the sound
continues to play. You can use the Sound Output Wait VI to wait for playback to complete.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
2156 ni.com
Functions
Examples
Note The WFM instance of this VI writes data from a single waveform that
uses double-precision floating point numbers for the sound data.
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
• data —
The specified data type determines the range of values for the sound data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (sec) —
timeout (sec) specifies the time, in seconds, that the function waits for the sound operation to
complete.
This VI returns an error if the time elapses. The default is 10. If you set timeout (sec) to -1, the VI
waits indefinitely. If you set timeout (sec) to 0, the VI returns immediately while the sound
continues to play. You can use the Sound Output Wait VI to wait for playback to complete.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
2158 ni.com
Functions
Note Use the SGL instance to write data from a waveform that uses single-
precision floating point numbers for the sound data.
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
• data —
data writes any sound data to the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (sec) —
timeout (sec) specifies the time, in seconds, that the function waits for the sound operation to
complete.
This VI returns an error if the time elapses. The default is 10. If you set timeout (sec) to -1, the VI
waits indefinitely. If you set timeout (sec) to 0, the VI returns immediately while the sound
continues to play. You can use the Sound Output Wait VI to wait for playback to complete.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Note If the buffer you set using the number of samples/ch input of the
Sound File Read VI is full when the application executes, LabVIEW
automatically implements a wait on the Sound Output Write VI even if you
set timeout to 0. This may cause the data flow to hang and return
unexpected results.
2160 ni.com
Functions
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
• data —
data writes any sound data to the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (sec) —
timeout (sec) specifies the time, in seconds, that the function waits for the sound operation to
complete.
This VI returns an error if the time elapses. The default is 10. If you set timeout (sec) to -1, the VI
waits indefinitely. If you set timeout (sec) to 0, the VI returns immediately while the sound
continues to play. You can use the Sound Output Wait VI to wait for playback to complete.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Note If the buffer you set using the number of samples/ch input of the
Sound File Read VI is full when the application executes, LabVIEW
automatically implements a wait on the Sound Output Write VI even if you
set timeout to 0. This may cause the data flow to hang and return
unexpected results.
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
• data —
data writes any sound data to the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
2162 ni.com
Functions
The specified data type determines the range of values for the sound data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (sec) —
timeout (sec) specifies the time, in seconds, that the function waits for the sound operation to
complete.
This VI returns an error if the time elapses. The default is 10. If you set timeout (sec) to -1, the VI
waits indefinitely. If you set timeout (sec) to 0, the VI returns immediately while the sound
continues to play. You can use the Sound Output Wait VI to wait for playback to complete.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Note If the buffer you set using the number of samples/ch input of the
Sound File Read VI is full when the application executes, LabVIEW
automatically implements a wait on the Sound Output Write VI even if you
set timeout to 0. This may cause the data flow to hang and return
unexpected results.
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
• data —
data writes any sound data to the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (sec) —
timeout (sec) specifies the time, in seconds, that the function waits for the sound operation to
complete.
2164 ni.com
Functions
This VI returns an error if the time elapses. The default is 10. If you set timeout (sec) to -1, the VI
waits indefinitely. If you set timeout (sec) to 0, the VI returns immediately while the sound
continues to play. You can use the Sound Output Wait VI to wait for playback to complete.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
2166 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (sec) —
timeout (sec) specifies the time, in seconds, that the VI waits for the sound operation to
complete.
This VI returns an error if the time elapses. The default is 10. If you set timeout (sec) to -1, the VI
waits indefinitely.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
2168 ni.com
Functions
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• is playing? —
• volume —
volume returns the volume of the sound operation, one value per channel. 0 is silent and 100 is
the loudest volume.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Note Some Linux distributions use a version of the OSS sound driver that
does not support setting volume through the DSP device file. LabVIEW
cannot set the output volume on these distributions and returns a warning.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Note Some Linux distributions use a version of the OSS sound driver that
does not support setting volume through the DSP device file. LabVIEW
cannot set the output volume on these distributions and returns a warning.
2170 ni.com
Functions
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
• volume —
volume specifies the volume of the sound operation. 0 is silent and 100 is the loudest volume.
The default is 100.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Note Some Linux distributions use a version of the OSS sound driver that
does not support setting volume through the DSP device file. LabVIEW
cannot set the output volume on these distributions and returns a warning.
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
• volume —
volume specifies the volume of the sound operation, one element per channel. 0 is silent and
100 is the loudest volume. The default is 100.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• error out —
2172 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• device ID —
device ID is the input or output device you access for a sound operation. In general, most users
should select the default value of 0.
The value ranges from 0 to n–1, where n is the number of input or output devices on the
computer.
• path —
path specifies the absolute path to the file from which you want to play sound data.
If the path is empty or invalid, the VI returns an error. The default is <Not A Path>.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (sec) —
timeout (sec)specifies the time, in seconds, that the VI waits for the sound operation to
complete.
The default is 0. This VI returns an error if the time elapses, unless timeout (sec) is 0. If you set
timeout (sec) to 0, this VI returns immediately while the sound continues to play. You can use
the Sound Output Wait VI to wait for playback to complete. If you set timeout (sec) to -1, this VI
waits until the sound finishes playing.
• task ID —
task ID returns an identification number associated with the configuration on the specified
device. You can pass task ID to other sound operation VIs.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Input
Use the Sound Input VIs to configure and control a sound input device.
(Windows) You must have DirectX 8.0 or later to use the Sound Input VIs.
(Linux) You must have the Open Sound System (OSS) driver to use this VI. LabVIEW
searches for input and output devices by looking for files named /dev/dsp or /dev/
2174 ni.com
Functions
dspX, where X is an integer between 0 and 16. LabVIEW attempts to open each input
and output device. If LabVIEW cannot detect the sound card, check that a device file
named /dev/dsp or /dev/dspX exists on the local system and that you have
permission to read from and write to the device. If you moved this device to a location
other than the default, LabVIEW can work with a symbolic link.
Palette
Description
Object
Acquire Acquires data from a sound device. This Express VI automatically configures an input
Sound task, acquires the data, and clears the task after the acquisition completes.
Sound
Configures a sound input device to acquire data and send the data to the buffer. Use the
Input
Sound Input Read VI to read the data.
Configure
Sound
Starts data acquisition from the device. This VI is necessary only if Sound Input Stop has
Input
previously been called.
Start
Sound Reads data from a sound input device. You must use the Sound Input Configure VI to
Input configure the device. You must manually select the polymorphic instance you want to
Read use.
Sound Stops data acquisition from the device. Use the Sound Input Clear VI to clear the data in
Input the buffer. Use the Sound Input Start VI to restart the acquisition after calling the Sound
Stop Input Stop VI.
Sound
Stops acquisition of data, clears the buffer, returns the task to the default state, and
Input
clears the resources associated with the task. The task becomes invalid.
Clear
Acquire Sound
Acquires data from a sound device. This Express VI automatically configures an input
task, acquires the data, and clears the task after the acquisition completes.
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Option Description
Resolution (bits) Specifies the quality of each sample in bits. The default is 16 bits.
Duration (s) Sets the number of seconds for which you want to acquire sound.
2176 ni.com
Functions
Option Description
Inputs/Outputs
• Device —
• Resolution (bits) —
• Duration (s) —
Sets the number of seconds for which you want to acquire sound.
• #Channels —
• Data —
Returns the data this Express VI acquires from the selected device using the settings you specify
in the configuration dialog box.
You can convert this output to a waveform or one-dimensional array of waveforms (one per
channel) by using the Convert from Dynamic Data function.
• error out —
Contains error information. This output provides standard error out functionality.
Components
Sets the number of seconds for which you want to acquire sound.
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• number of samples/ch —
number of samples/ch specifies the number of samples per channel in the buffer.
Use a large number of samples for continuous operations. Use a smaller number of samples if
you want to use less memory.
• sample mode —
2178 ni.com
Functions
sample mode specifies whether the VI acquires samples just once (Finite Samples) or
continuously (Continuous Samples).
In Finite Samples mode, call Sound Input Read only until you have written the number of
samples specified in number of samples/ch. In Continuous Samples mode, you can call Sound
Input Read repeatedly as needed.
• device ID —
device ID is the input or output device you access for a sound operation. In general, most users
should select the default value of 0.
The value ranges from 0 to n–1, where n is the number of input or output devices on the
computer.
• sound format —
sound format sets the acquisition rate, the number of channels, and the bits per sample of the
sound operation. The values for each of these controls is dependent on your sound card.
Note Setting sample rate (S/s) and bits per sample high uses more of the computer
memory when the VI runs. Also, not all operating systems and sound cards support
all sound format options.
sample rate (S/s) sets the sampling rate for the sound operation. Common rates are 44,100
S/s, 22,050 S/s, and 11,025 S/s. The default is 22,050 S/s.
• number of channels —
number of channels specifies the number of channels. This input can accept as many
channels as the sound card supports. For most sound cards 1 is Mono and 2 is Stereo.
bits per sample specifies the quality of each sample in bits. Common resolutions are 16 bits
and 8 bits. The default is 16 bits.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• task ID —
task ID returns an identification number associated with the configuration on the specified
device. You can pass task ID to other sound operation VIs.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• task ID —
2180 ni.com
Functions
task ID is the sound operation from the configured device you want to manipulate or input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• number of samples/ch —
number of samples/ch specifies the number of samples per channel to read from the buffer.
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (sec) —
2182 ni.com
Functions
timeout (sec) specifies the time, in seconds, that the VI waits for the sound operation to
complete.
This VI returns an error if the time elapses. The default is 10. If you set timeout (sec) to -1, the VI
waits indefinitely.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• data —
data reads any sound data from the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• number of samples/ch —
number of samples/ch specifies the number of samples per channel to read from the buffer.
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (sec) —
timeout (sec) specifies the time, in seconds, that the VI waits for the sound operation to
complete.
This VI returns an error if the time elapses. The default is 10. If you set timeout (sec) to -1, the VI
waits indefinitely.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• data —
data reads any sound data from the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
2184 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• number of samples/ch —
number of samples/ch specifies the number of samples per channel to read from the buffer.
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (sec) —
timeout (sec) specifies the time, in seconds, that the VI waits for the sound operation to
complete.
This VI returns an error if the time elapses. The default is 10. If you set timeout (sec) to -1, the VI
waits indefinitely.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• data —
data reads any sound data from the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
2186 ni.com
Functions
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• number of samples/ch —
number of samples/ch specifies the number of samples per channel to read from the buffer.
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (sec) —
timeout (sec) specifies the time, in seconds, that the VI waits for the sound operation to
complete.
This VI returns an error if the time elapses. The default is 10. If you set timeout (sec) to -1, the VI
waits indefinitely.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• data —
data reads any sound data from the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
2188 ni.com
Functions
Inputs/Outputs
• number of samples/ch —
number of samples/ch specifies the number of samples per channel to read from the buffer.
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• timeout (sec) —
timeout (sec) specifies the time, in seconds, that the VI waits for the sound operation to
complete.
This VI returns an error if the time elapses. The default is 10. If you set timeout (sec) to -1, the VI
waits indefinitely.
• task ID out —
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• data —
data reads any sound data from the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• task ID out —
2190 ni.com
Functions
task ID out is the manipulated sound operation originally passed to the task ID parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• task ID —
task ID is the sound operation from the configured device you want to manipulate or input.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Files
Use the Sound Files VIs to create and retrieve PC wave files (.wav).
(Windows) You must have DirectX 8.0 or later to use the Sound File VIs.
(Linux) You must have the Open Sound System (OSS) driver to use this VI. LabVIEW
searches for input and output devices by looking for files named /dev/dsp or /dev/
dspX, where X is an integer between 0 and 16. LabVIEW attempts to open each input
and output device. If LabVIEW cannot detect the sound card, check that a device file
named /dev/dsp or /dev/dspX exists on the local system and that you have
permission to read from and write to the device. If you moved this device to a location
other than the default, LabVIEW can work with a symbolic link.
Palette
Description
Object
Sound File Reads data from a .wav file into an array of waveforms. This VI automatically
Read Simple opens, reads, and closes the .wav file.
Sound File Writes data from an array of waveforms to a .wav file. This VI automatically opens,
Write Simple writes to, and closes the .wav file.
Sound File Opens a .wav file for reading or creates a new .wav file for writing. You must
Open manually select the polymorphic instance you want to use.
2192 ni.com
Functions
Palette
Description
Object
Sound File
Retrieves data about a .wav file. This VI accepts either a path or a refnum.
Info
Sound File Reads data from a .wav file into an array of waveforms. You must manually select
Read the polymorphic instance you want to use.
Sound File
Writes data from a waveform or an array of waveforms to a .wav file.
Write
Sound File
Closes a .wav file.
Close
(Windows) You must have DirectX 8.0 or later to use this VI.
Inputs/Outputs
• number of samples/ch (-1: all) —
number of samples/ch specifies the number of samples per channel to read from the file. -1
specifies all samples.
• path —
If the path is empty or invalid, the VI returns an error. The default is <Not A Path>.
• position mode —
position mode, together with position offset, specifies where the read operation begins.
Absolute starts the operation at the beginning of the file plus position offset, so the offset is
relative to the beginning of the file. Relative starts the operation at the current location of the
file mark plus position offset. The default is Relative.
• position offset —
position offset specifies how far from the location specified by position mode to start reading.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• path out —
• data —
data reads any sound data from the file. For multi-channel sound data, data is an array of
waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
• offset —
offset indicates the new location of the file mark relative to the beginning of the file, in units of
samples.
The default is 0.
• error out —
2194 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• path —
If the path is empty or invalid, the VI returns an error. The default is <Not A Path>.
• data —
data writes any sound data to the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
bits per sample specifies the quality of each sample in bits. Common resolutions are 16 bits and
8 bits. The default is 16 bits.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• path out —
• error out —
error out contains error information. This output provides standard error out functionality.
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Examples
2196 ni.com
Functions
File.vi
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• path —
If the path is empty or invalid, the VI returns an error. The default is <Not A Path>.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum returns a reference to the sound file. You can pass sound file refnum to other
Sound Files VIs.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• path —
If the path is empty or invalid, the VI returns an error. The default is <Not A Path>.
• sound format —
sound format sets the sample rate, the number of channels, and the bits per sample for the
wave file. The values for each of these controls is dependent on your sound card.
sample rate (S/s) sets the sampling rate for the wave file. Common rates are 44,100 S/s,
22,050 S/s, and 11,025 S/s. The default is 22050 S/s.
• number of channels —
number of channels specifies the number of channels. This input can accept as many
2198 ni.com
Functions
channels as the sound card supports. For most sound cards 1 is Mono and 2 is Stereo.
bits per sample specifies the quality of each sample in bits. Common resolutions are 16 bits
and 8 bits. The default is 16 bits.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum returns a reference to the sound file. You can pass sound file refnum to other
Sound Files VIs.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• path —
If the path is empty or invalid, the VI returns an error. The default is <Not A Path>.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• path out —
2200 ni.com
Functions
total number of samples/ch returns the total number of samples per channel in the wave file.
• sound format —
sound format returns the sample rate, the number of channels, and the number of bits per
sample in the wave file.
sample rate (S/s) is the sampling rate for the wave file. Common rates are 44,100 S/s, 22,050
S/s, and 11,025 S/s.
• number of channels —
number of channels specifies the number of channels in the wave file. This input can
accept as many channels as the sound card supports. For most sound cards 1 is Mono and 2
is Stereo.
bits per sample is the quality of each sample in bits. Common resolutions are 16 bits and 8
bits.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• sound file refnum —
You generate sound file refnum with the Sound File Open VI.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum out is the reference to the sound file originally passed in the sound file
refnum parameter.
total number of samples/ch returns the total number of samples per channel in the wave file.
• sound format —
sound format returns the sample rate, the number of channels, and the number of bits per
sample in the wave file.
2202 ni.com
Functions
sample rate (S/s) is the sampling rate for the wave file. Common rates are 44,100 S/s, 22,050
S/s, and 11,025 S/s.
• number of channels —
number of channels specifies the number of channels in the wave file. This input can
accept as many channels as the sound card supports. For most sound cards 1 is Mono and 2
is Stereo.
bits per sample is the quality of each sample in bits. Common resolutions are 16 bits and 8
bits.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI.
Note This VI retrieves only uncompressed wave files. LabVIEW uses large
amounts of memory when reading an entire wave file at once. Instead, read
wave files in chunks.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI.
Note This VI retrieves only uncompressed wave files. LabVIEW uses large
amounts of memory when reading an entire wave file at once. Instead, read
wave files in chunks.
Inputs/Outputs
• number of samples/ch (-1: all) —
2204 ni.com
Functions
number of samples/ch specifies the number of samples per channel to read from the file. -1
specifies all samples.
You generate sound file refnum with the Sound File Open VI.
• position mode —
position mode, together with position offset, specifies where the read operation begins.
Absolute starts the operation at the beginning of the file plus position offset, so the offset is
relative to the beginning of the file. Relative starts the operation at the current location of the
file mark plus position offset. The default is Relative.
• position offset —
position offset specifies how far from the location specified by position mode to start reading.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum out is the reference to the sound file originally passed in the sound file
refnum parameter.
• data —
data reads any sound data from the file. For multi-channel sound data, data is an array of
waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
• offset —
offset indicates the new location of the file mark relative to the beginning of the file, in units of
samples.
The default is 0.
• error out —
error out contains error information. This output provides standard error out functionality.
• end of file? —
end of file? returns TRUE when the VI reaches the end of the file.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI.
Note This VI retrieves only uncompressed wave files. LabVIEW uses large
amounts of memory when reading an entire wave file at once. Instead, read
wave files in chunks.
2206 ni.com
Functions
Inputs/Outputs
• number of samples/ch (-1: all) —
number of samples/ch specifies the number of samples per channel to read from the file. -1
specifies all samples.
You generate sound file refnum with the Sound File Open VI.
• position mode —
position mode, together with position offset, specifies where the read operation begins.
Absolute starts the operation at the beginning of the file plus position offset, so the offset is
relative to the beginning of the file. Relative starts the operation at the current location of the
file mark plus position offset. The default is Relative.
• position offset —
position offset specifies how far from the location specified by position mode to start reading.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum out is the reference to the sound file originally passed in the sound file
refnum parameter.
• data —
data reads any sound data from the file. For multi-channel sound data, data is an array of
waveforms where each element of the array is a single channel.
• offset —
offset indicates the new location of the file mark relative to the beginning of the file, in units of
samples.
The default is 0.
• error out —
error out contains error information. This output provides standard error out functionality.
• end of file? —
end of file? returns TRUE when the VI reaches the end of the file.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI.
Note This VI retrieves only uncompressed wave files. LabVIEW uses large
amounts of memory when reading an entire wave file at once. Instead, read
wave files in chunks.
2208 ni.com
Functions
Inputs/Outputs
• number of samples/ch (-1: all) —
number of samples/ch specifies the number of samples per channel to read from the file. -1
specifies all samples.
You generate sound file refnum with the Sound File Open VI.
• position mode —
position mode, together with position offset, specifies where the read operation begins.
Absolute starts the operation at the beginning of the file plus position offset, so the offset is
relative to the beginning of the file. Relative starts the operation at the current location of the
file mark plus position offset. The default is Relative.
• position offset —
position offset specifies how far from the location specified by position mode to start reading.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum out is the reference to the sound file originally passed in the sound file
refnum parameter.
• data —
data reads any sound data from the file. For multi-channel sound data, data is an array of
waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
• offset —
offset indicates the new location of the file mark relative to the beginning of the file, in units of
samples.
The default is 0.
• error out —
error out contains error information. This output provides standard error out functionality.
• end of file? —
end of file? returns TRUE when the VI reaches the end of the file.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI.
Note This VI retrieves only uncompressed wave files. LabVIEW uses large
amounts of memory when reading an entire wave file at once. Instead, read
wave files in chunks.
2210 ni.com
Functions
Inputs/Outputs
• number of samples/ch (-1: all) —
number of samples/ch specifies the number of samples per channel to read from the file. -1
specifies all samples.
You generate sound file refnum with the Sound File Open VI.
• position mode —
position mode, together with position offset, specifies where the read operation begins.
Absolute starts the operation at the beginning of the file plus position offset, so the offset is
relative to the beginning of the file. Relative starts the operation at the current location of the
file mark plus position offset. The default is Relative.
• position offset —
position offset specifies how far from the location specified by position mode to start reading.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum out is the reference to the sound file originally passed in the sound file
refnum parameter.
• data —
data reads any sound data from the file. For multi-channel sound data, data is an array of
waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
• offset —
offset indicates the new location of the file mark relative to the beginning of the file, in units of
samples.
The default is 0.
• error out —
error out contains error information. This output provides standard error out functionality.
• end of file? —
end of file? returns TRUE when the VI reaches the end of the file.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI.
Note This VI retrieves only uncompressed wave files. LabVIEW uses large
amounts of memory when reading an entire wave file at once. Instead, read
wave files in chunks.
2212 ni.com
Functions
Inputs/Outputs
• number of samples/ch (-1: all) —
number of samples/ch specifies the number of samples per channel to read from the file. -1
specifies all samples.
You generate sound file refnum with the Sound File Open VI.
• position mode —
position mode, together with position offset, specifies where the read operation begins.
Absolute starts the operation at the beginning of the file plus position offset, so the offset is
relative to the beginning of the file. Relative starts the operation at the current location of the
file mark plus position offset. The default is Relative.
• position offset —
position offset specifies how far from the location specified by position mode to start reading.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum out is the reference to the sound file originally passed in the sound file
refnum parameter.
• data —
data reads any sound data from the file. For multi-channel sound data, data is an array of
waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
• offset —
offset indicates the new location of the file mark relative to the beginning of the file, in units of
samples.
The default is 0.
• error out —
error out contains error information. This output provides standard error out functionality.
• end of file? —
end of file? returns TRUE when the VI reaches the end of the file.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
2214 ni.com
Functions
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• sound file refnum —
You generate sound file refnum with the Sound File Open VI.
• data —
data writes any sound data to the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum out is the reference to the sound file originally passed in the sound file
refnum parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note The WFM instance of this VI writes data from a single waveform that
uses double-precision floating point numbers for the sound data.
Inputs/Outputs
• sound file refnum —
You generate sound file refnum with the Sound File Open VI.
• data —
2216 ni.com
Functions
The specified data type determines the range of values for the sound data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum out is the reference to the sound file originally passed in the sound file
refnum parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note Use the SGL instance to write data from a waveform that uses single-
precision floating point numbers for the sound data.
Inputs/Outputs
• sound file refnum —
You generate sound file refnum with the Sound File Open VI.
• data —
data writes any sound data to the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum out is the reference to the sound file originally passed in the sound file
refnum parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
2218 ni.com
Functions
Inputs/Outputs
• sound file refnum —
You generate sound file refnum with the Sound File Open VI.
• data —
data writes any sound data to the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum out is the reference to the sound file originally passed in the sound file
refnum parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• sound file refnum —
You generate sound file refnum with the Sound File Open VI.
• data —
data writes any sound data to the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum out is the reference to the sound file originally passed in the sound file
refnum parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
2220 ni.com
Functions
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• sound file refnum —
You generate sound file refnum with the Sound File Open VI.
• data —
data writes any sound data to the internal buffers. For multi-channel sound data, data is an
array of waveforms where each element of the array is a single channel.
The specified data type determines the range of values for the sound data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
sound file refnum out is the reference to the sound file originally passed in the sound file
refnum parameter.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
(Windows) You must have DirectX 8.0 or later to use this VI. (Linux) You must have the
Open Sound System (OSS) driver to use this VI.
Inputs/Outputs
• sound file refnum —
You generate sound file refnum with the Sound File Open VI.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
2222 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Examples
The following VIs appear on the block diagram when you add the associated plot to
the front panel. You can find plots on the 2D Graph and 3D Graph palette.
Graphs vectors that emanate from the center origin in a compass plot. Multiple
references to this VI generate multiple plots on the same graph.
Note This VI appears on the block diagram when you add a Compass Plot to
the front panel. You can find the Compass Plot on the Graph palette.
Examples
Note This VI appears on the block diagram when you add a Compass Plot to
the front panel. You can find the Compass Plot on the Graph palette.
Inputs/Outputs
• 2D Plot Class Obj Array in —
2D Plot Class Obj Array in is a reference to the class that stores the data of the 2D plot.
• theta vector —
theta vector specifies the angles on the compass plot you want to graph.
• radius vector —
radius vector specifies the vector length as it extends from the center.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
2224 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Examples
Note This VI appears on the block diagram when you add a Compass Plot to
the front panel. You can find the Compass Plot on the Graph palette.
Inputs/Outputs
• 2D Plot Class Obj Array in —
2D Plot Class Obj Array in is a reference to the class that stores the data of the 2D plot.
• z vector —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Graphs a plot that displays the percentage or vector of error at each point above and
below the line graph. Multiple references to this VI generate multiple plots on the same
graph.
Note This VI appears on the block diagram when you add a Error Bar Plot to
the front panel. You can find the Error Bar Plot on the Graph palette.
Examples
2226 ni.com
Functions
Note This VI appears on the block diagram when you add a Error Bar Plot to
the front panel. You can find the Error Bar Plot on the Graph palette.
Inputs/Outputs
• error b percentage —
error b percentage specifies the percentage of error that appears at each point below the
graphed line relative to values you specify in y vector.
• error a percentage —
error a percentage specifies the percentage of error that appears at each point above the
graphed line relative to values you specify in y vector.
2D Plot Class Obj Array in is a reference to the class that stores the data of the 2D plot.
• x vector —
• y vector —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
2D Plot Class Obj Array out is the graph of the error bar plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note This VI appears on the block diagram when you add a Error Bar Plot to
the front panel. You can find the Error Bar Plot on the Graph palette.
Inputs/Outputs
• error b vector —
2228 ni.com
Functions
error b vector specifies the vector of error that appears at each point below the graphed line
relative to values you specify in y vector.
• error a vector —
error a vector specifies the vector of error that appears at each point above the graphed line
relative to values you specify in y vector.
2D Plot Class Obj Array in is a reference to the class that stores the data of the 2D plot.
• x vector —
• y vector —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
2D Plot Class Obj Array out is the graph of the error bar plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Graphs vectors that emanate from equally spaced points along a horizontal axis at
zero. Multiple references to this VI generate multiple plots on the same graph.
Note This VI appears on the block diagram when you add a Feather Plot to
the front panel. You can find the Feather Plot on the Graph palette.
Examples
Note This VI appears on the block diagram when you add a Feather Plot to
the front panel. You can find the Feather Plot on the Graph palette.
2230 ni.com
Functions
Inputs/Outputs
• 2D Plot Class Obj Array in —
2D Plot Class Obj Array in is a reference to the class that stores the data of the 2D plot.
• x vector —
x vector specifies the x-coordinates for the end points of the vectors that emanate from the
horizontal axis.
• y vector —
y vector specifies the y-coordinates for the length of the vectors that emanate from the
horizontal axis.
The error in cluster can accept error information wired from VIs previously called. Use this
information to decide if any functionality should be bypassed in the event of errors from other
VIs. The pop-up option Explain Error (or Explain Warning) gives more information about the
error displayed.
2D Plot Class Obj Array out is the graph of the feather plot.
• error out —
error out passes error or warning information out of a VI to be used by other VIs. Right-click the
error out indicator on the front panel and select Explain Error or Explain Warning from the
shortcut menu for more information about the error.
Examples
Note This VI appears on the block diagram when you add a Feather Plot to
the front panel. You can find the Feather Plot on the Graph palette.
Inputs/Outputs
• 2D Plot Class Obj Array in —
2D Plot Class Obj Array in is a reference to the class that stores the data of the 2D plot.
• z vector —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
2D Plot Class Obj Array out is the graph of the feather plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
2232 ni.com
Functions
Note This VI appears on the block diagram when you add a Bar plot to the
front panel. You can find the Bar plot on the 3D Graph palette.
Examples
Note This VI appears on the block diagram when you add a Bar plot to the
front panel. You can find the Bar plot on the 3D Graph palette.
Inputs/Outputs
• y vector —
y vector is a 1D array that specifies the y-coordinates of the bars you want to plot. If you wire y
vector the length of y vector must equal the length of z matrix.
• z matrix —
z matrix is a 2D array that specifies the heights of the bars you graph.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note This VI appears on the block diagram when you add a Bar plot to the
front panel. You can find the Bar plot on the 3D Graph palette.
2234 ni.com
Functions
Inputs/Outputs
• y vector —
y vector is a 1D array that specifies the y-coordinates of the bars you want to plot. If you wire y
vector, the length of y vector must equal the length of z vector.
• z vector —
z vector is a 1D array that specifies the heights of the bars you want to plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Creates an animated graph with a circle that follows the data points. Multiple
references to this VI generate multiple plots for the same graph.
Note This VI appears on the block diagram when you add a Comet plot to
the front panel. You can find the Comet plot on the 3D Graph palette.
Examples
Note This VI appears on the block diagram when you add a Comet plot to
the front panel. You can find the Comet plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
2236 ni.com
Functions
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x vector —
x vector is a 1D array that specifies the x-coordinates that graph the plot.
• y vector —
y vector is a 1D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z vector —
z vector is a 1D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note This VI appears on the block diagram when you add a Comet plot to
the front panel. You can find the Comet plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x vector —
x vector is a 1D array that specifies the x-coordinates that graph the plot.
• y vector —
y vector is a 1D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
2238 ni.com
Functions
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note This VI appears on the block diagram when you add a Comet plot to
the front panel. You can find the Comet plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x matrix —
x matrix is a 2D array that specifies the x-coordinates that graph the plot.
• y matrix —
y matrix is a 2D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
2240 ni.com
Functions
Graphs a plot with contour lines. Multiple references to this VI generate multiple plots
for the same graph.
Note This VI appears on the block diagram when you add a Contour plot to
the front panel. You can find the Contour plot on the 3D Graph palette.
When x matrix, y matrix, and z matrix are the same size, the Contour plot graphs
values that correspond to each element at the same location in all the matrices.
Examples
Note This VI appears on the block diagram when you add a Contour plot to
the front panel. You can find the Contour plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x vector —
x vector is a 1D array that specifies the x-coordinates that graph the plot.
• y vector —
y vector is a 1D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
When x matrix, y matrix, and z matrix are the same size, the Contour plot graphs
2242 ni.com
Functions
values that correspond to each element at the same location in all the matrices.
Examples
Note This VI appears on the block diagram when you add a Contour plot to
the front panel. You can find the Contour plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x matrix —
x matrix is a 2D array that specifies the x-coordinates that graph the plot.
• y matrix —
y matrix is a 2D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
When x matrix, y matrix, and z matrix are the same size, the Contour plot graphs
values that correspond to each element at the same location in all the matrices.
Examples
Graphs a mesh surface with open spaces. Multiple references to this VI generate
multiple plots for the same graph.
Note This VI appears on the block diagram when you add a Mesh plot to the
front panel. You can find the Mesh plot on the 3D Graph palette.
2244 ni.com
Functions
When x matrix, y matrix, and z matrix are the same size, the Mesh plot graphs values
that correspond to each elements at the same location in all the matrices.
Examples
Note This VI appears on the block diagram when you add a Mesh plot to the
front panel. You can find the Mesh plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x vector —
x vector is a 1D array that specifies the x-coordinates that graph the plot.
• y vector —
y vector is a 1D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
When x matrix, y matrix, and z matrix are the same size, the Mesh plot graphs values
that correspond to each elements at the same location in all the matrices.
Examples
2246 ni.com
Functions
Note This VI appears on the block diagram when you add a Mesh plot to the
front panel. You can find the Mesh plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x matrix —
x matrix is a 2D array that specifies the x-coordinates that graph the plot.
• y matrix —
y matrix is a 2D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
When x matrix, y matrix, and z matrix are the same size, the Mesh plot graphs values
that correspond to each elements at the same location in all the matrices.
Examples
Note This VI appears on the block diagram when you add a Pie plot to the
front panel. You can find the Pie plot on the 3D Graph palette.
2248 ni.com
Functions
Examples
Note This VI appears on the block diagram when you add a Pie plot to the
front panel. You can find the Pie plot on the 3D Graph palette.
Inputs/Outputs
• x vector —
x vector is a 1D array that specifies the size of the slices, or percentages of pie, that appear in the
graph. LabVIEW ignores the non-positive elements in x vector.
• offset vector —
offset vector specifies how far slices of pie offset from the center point if they offset. The length
of offset vector must equal the length of x vector.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note This VI appears on the block diagram when you add a Pie plot to the
front panel. You can find the Pie plot on the 3D Graph palette.
Inputs/Outputs
• x matrix —
x matrix is a 2D array that specifies the size of the slices, or percentages of pie, that appear in the
graph. LabVIEW ignores the non-positive elements in x matrix.
• offset matrix —
offset matrix specifies how far slices of pie offset from the center point if they offset. The length
of offset matrix must equal the length of x matrix.
error in describes error conditions that occur before this node runs. This input provides
2250 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Graphs a plot of normal vectors. Multiple references to this VI generate multiple plots
for the same graph.
Note This VI appears on the block diagram when you add a Quiver plot to
the front panel. You can find the Quiver plot on the 3D Graph palette.
Examples
Note This VI appears on the block diagram when you add a Quiver plot to
the front panel. You can find the Quiver plot on the 3D Graph palette.
Inputs/Outputs
• Nz matrix —
Nz matrix is a 2D array that specifies the length of the z vector in relation to the z-plane.
• Ny matrix —
Ny matrix is a 2D array that specifies the length of the y vector in relation to the z-plane.
• Nx matrix —
Nx matrix is a 2D array that specifies the length of the x vector in relation to the z-plane.
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x vector —
x vector is a 1D array that specifies the x-coordinates that graph the plot.
2252 ni.com
Functions
• y vector —
y vector is a 1D array that specifies the y-coordinates that graph the plot.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note This VI appears on the block diagram when you add a Quiver plot to
the front panel. You can find the Quiver plot on the 3D Graph palette.
Inputs/Outputs
• Nz matrix —
Nz matrix is a 2D array that specifies the length of the z vector in relation to the z-plane.
• Ny matrix —
Ny matrix is a 2D array that specifies the length of the y vector in relation to the z-plane.
• Nx matrix —
Nx matrix is a 2D array that specifies the length of the x vector in relation to the z-plane.
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x matrix —
x matrix is a 2D array that specifies the x-coordinates that graph the plot.
• y matrix —
y matrix is a 2D array that specifies the y-coordinates that graph the plot.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
2254 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Generates a plot of parallel lines. Multiple references to this VI generate multiple plots
for the same graph.
Note This VI appears on the block diagram when you add a Ribbon plot to
the front panel. You can find the Ribbon plot on the 3D Graph palette.
Examples
Note This VI appears on the block diagram when you add a Ribbon plot to
the front panel. You can find the Ribbon plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• y vector —
y vector is a 1D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
2256 ni.com
Functions
z matrix is a 2D array that specifies the z-coordinates that graph the plot. A ribbon generates for
each row in z matrix.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note This VI appears on the block diagram when you add a Ribbon plot to
the front panel. You can find the Ribbon plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x vector —
x vector is a 1D array that specifies the x-coordinates that graph the plot.
• y vector —
y vector is a 1D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot. A ribbon generates for
each row in z matrix.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
2258 ni.com
Functions
Examples
Note This VI appears on the block diagram when you add a Ribbon plot to
the front panel. You can find the Ribbon plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x matrix —
x matrix is a 2D array that specifies the x-coordinates that graph the plot.
• y matrix —
y matrix is a 2D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot. A ribbon generates for
each row in z matrix.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Graphs data to show trends in statistics and the relationship between two sets of data.
Multiple references to this VI generate multiple plots for the same graph.
Note This VI appears on the block diagram when you add a Scatter plot to
the front panel. You can find the Scatter plot on the 3D Graph palette.
2260 ni.com
Functions
Examples
Note This VI appears on the block diagram when you add a Scatter plot to
the front panel. You can find the Scatter plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x vector —
x vector is a 1D array that specifies the x-coordinates that graph the plot.
• y vector —
y vector is a 1D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z vector —
z vector is a 1D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note This VI appears on the block diagram when you add a Scatter plot to
2262 ni.com
Functions
the front panel. You can find the Scatter plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x vector —
x vector is a 1D array that specifies the x-coordinates that graph the plot.
• y vector —
y vector is a 1D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note This VI appears on the block diagram when you add a Scatter plot to
the front panel. You can find the Scatter plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x matrix —
x matrix is a 2D array that specifies the x-coordinates that graph the plot.
• y matrix —
y matrix is a 2D array that specifies the y-coordinates that graph the plot.
2264 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Displays an impulse response and organizes data by its distribution at 0 on the z-plane.
Multiple references to this VI generate multiple plots for the same graph.
Note This VI appears on the block diagram when you add a Stem plot to the
front panel. You can find the Stem plot on the 3D Graph palette.
Examples
Note This VI appears on the block diagram when you add a Stem plot to the
front panel. You can find the Stem plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x vector —
x vector is a 1D array that specifies the x-coordinates that graph the plot.
2266 ni.com
Functions
• y vector —
y vector is a 1D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z vector —
z vector is a 1D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note This VI appears on the block diagram when you add a Stem plot to the
front panel. You can find the Stem plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x vector —
x vector is a 1D array that specifies the x-coordinates that graph the plot.
• y vector —
y vector is a 1D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
2268 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Note This VI appears on the block diagram when you add a Stem plot to the
front panel. You can find the Stem plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x matrix —
x matrix is a 2D array that specifies the x-coordinates that graph the plot.
• y matrix —
y matrix is a 2D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Graphs data with a connecting surface. Multiple references to this VI generate multiple
plots for the same graph.
Note This VI appears on the block diagram when you add a Surface plot to
the front panel. You can find the Surface plot on the 3D Graph palette.
2270 ni.com
Functions
When x matrix, y matrix, and z matrix are the same size, the Surface plot graphs
values that correspond to each elements at the same location in all the matrices.
Examples
Note This VI appears on the block diagram when you add a Surface plot to
the front panel. You can find the Surface plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x vector —
x vector is a 1D array that specifies the x-coordinates that graph the plot.
• y vector —
y vector is a 1D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
When x matrix, y matrix, and z matrix are the same size, the Surface plot graphs
values that correspond to each elements at the same location in all the matrices.
Examples
2272 ni.com
Functions
Note This VI appears on the block diagram when you add a Surface plot to
the front panel. You can find the Surface plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x matrix —
x matrix is a 2D array that specifies the x-coordinates that graph the plot.
• y matrix —
y matrix is a 2D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
When x matrix, y matrix, and z matrix are the same size, the Surface plot graphs
values that correspond to each elements at the same location in all the matrices.
Examples
Graphs the surface of the data and the area on the y-axis below the data points.
Multiple references to this VI generate multiple plots for the same graph.
Note This VI appears on the block diagram when you add a Waterfall plot to
the front panel. You can find the Waterfall plot on the 3D Graph palette.
The Waterfall graph plots only the rows of x matrix, y matrix, and z matrix.
2274 ni.com
Functions
Examples
Note This VI appears on the block diagram when you add a Waterfall plot to
the front panel. You can find the Waterfall plot on the 3D Graph palette.
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x vector —
x vector is a 1D array that specifies the x-coordinates that graph the plot.
• y vector —
y vector is a 1D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
The Waterfall graph plots only the rows of x matrix, y matrix, and z matrix.
Examples
Note This VI appears on the block diagram when you add a Waterfall plot to
the front panel. You can find the Waterfall plot on the 3D Graph palette.
2276 ni.com
Functions
Inputs/Outputs
• 3D Plot lvclass Array in —
3D Plot lvclass Array in is a reference to the class that stores the data of the 3D plot.
• x matrix —
x matrix is a 2D array that specifies the x-coordinates that graph the plot.
• y matrix —
y matrix is a 2D array that specifies the y-coordinates that graph the plot.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates that graph the plot.
• Plot ID —
Plot ID specifies the index of the plot you want to graph. When you graph more than one plot,
select the drop-down listbox under the color spectrum to the right of the graph to change the
plot.
• error out —
error out contains error information. This output provides standard error out functionality.
The Waterfall graph plots only the rows of x matrix, y matrix, and z matrix.
Examples
Plots a line or curve in terms of x, y, and z points. This VI has three 1D array inputs that
specify each point on the line or curve.
Note This VI appears on the block diagram when you add a 3D Line Graph to
the front panel. You can find the 3D Line Graph on the 3D Graph palette.
Inputs/Outputs
• color vector —
color vector maps each point in the z vector to a color index on the color ramp. By default, the
values of the z vector are used as the index.
• plots in —
plots in is a reference to the class that stores the data of the 3D plot. This input allows you to
wire multiple plots.
• x vector —
x vector is a 1D array that specifies the x-coordinates of the points on the plot.
• y vector —
2278 ni.com
Functions
y vector is a 1D array that specifies the y-coordinates of the points on the plot.
• z vector —
z vector is a 1D array that specifies the z-coordinates of the points on the plot. The x and y
vectors shift the set of data in the z vector.
• plot ID —
• plots out —
Plots a surface in terms of x, y, and z points. This VI has two 1D arrays and one 2D array
that specify each point on the plot.
Note This VI appears on the block diagram when you add a 3D Surface
Graph to the front panel. You can find the 3D Surface Graph on the 3D Graph
palette.
Inputs/Outputs
• color matrix —
color matrix maps each point in the z matrix to a color index on the color ramp. By default, the
values of the z matrix are used as the index.
• plots in —
plots in is a reference to the class that stores the data of the 3D plot. This input allows you to
wire multiple plots.
• x vector —
x vector is a 1D array that specifies the x-coordinates of the points on the plot.
• y vector —
y vector is a 1D array that specifies the y-coordinates of the points on the plot.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates of the points on the plot. The x and y
vectors shift the set of data in the z matrix.
• plot ID —
• plots out —
Plots a surface in terms of x, y, and z points. This VI has three 2D array inputs that
specify each point on the plot.
Note This VI appears on the block diagram when you add a 3D Parametric
Graph to the front panel. You can find the 3D Parametric Graph on the 3D
Graph palette
2280 ni.com
Functions
Inputs/Outputs
• color matrix —
color matrix maps each point in the z matrix to a color index on the color ramp. By default, the
values of the z matrix are used as the index.
• plots in —
plots in is a reference to the class that stores the data of the 3D plot. This input allows you to
wire multiple plots.
• x matrix —
x matrix is a 2D array that specifies the x-coordinates of the points on the plot.
• y matrix —
y matrix is a 2D array that specifies the y-coordinates of the points on the plot.
• z matrix —
z matrix is a 2D array that specifies the z-coordinates of the points on the plot.
• plot ID —
• plots out —
Note This VI appears on the block diagram when you add a XY Plot Matrix to
the front panel. You can find the XY Plot Matrix on the Graph palette.
Inputs/Outputs
• 2D Plotmatrix Class Obj Array in —
2D Plot Class Obj Array in is a reference to the class that stores the data of the XY plot.
• x matrix —
x matrix specifies the x-coordinates you want to plot. The number of columns in x matrix
specifies the number of columns of individual graphs that generate when you run the VI.
• y matrix —
y matrix specifies the y-coordinates you want to plot. The number of columns in y matrix
specifies the number of rows of individual graphs that generate when you run the VI.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
2D Plotmatrix Class Obj Array out is the graph of the XY plot matrix.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
2282 ni.com
Functions
3D Picture Control
Geometries Use the Geometries VIs to assign or configure the shapes of objects in a 3D scene.
Object Use the Object VIs to create or find objects to use in a 3D scene.
Use the File Loading VIs to load geometries of various model types in a 3D scene
File Loading
graph.
Helpers Use the Helpers VIs to perform some common tasks in setting up a 3D scene.
Geometries
Use the Geometries VIs to assign or configure the shapes of objects in a 3D scene.
Sets a 3D object you create with the Create Object VI to a box by applying a box
Create Box
geometry to the object.
Sets a 3D object you create with the Create Object VI to a cone by applying a cone
Create Cone
geometry to the object.
Sets a 3D object you create with the Create Object VI to a cylinder by applying a
Create Cylinder
cylinder geometry to the object.
Create Height Converts a 2D array of values to a 3D height field and applies the height field to a
Field 3D object that appears in a 3D scene.
Create Mesh
Creates a mesh with customizable color and draw options.
with Attributes
Create 3D Axis Creates an x, y, and z axis object to define 3D space in a scene.
Sets a 3D object you create with the Create Object VI to a text object and applies
Create Text
the text, font, and color you specify to the object.
Create Text with
Creates a text object with customizable format and position options.
Alignment
Create Box
Sets a 3D object you create with the Create Object VI to a box by applying a box
geometry to the object.
2284 ni.com
Functions
Inputs/Outputs
• Color —
Color specifies the color of the object in RGBA format. Color accepts a cluster of numeric values
0 through 1, where 0 represents the absence of the red, green, or blue color and 1 represents a
full saturation of the color. The alpha value indicates the transparency of the red, green, and
blue colors.
• Red —
• Green —
• Blue —
• Alpha —
Alpha specifies the level of opacity of the RGB color when you apply the color to a 3D object.
Alpha must be a value between 0 and 1. The default is 1.
• Length X —
• Length Y —
• Length Z —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Create Sphere
Applies a sphere geometry to a three-dimensional object that appears in a 3D scene.
Inputs/Outputs
• Color —
Color specifies the color of the object in RGBA format. Color accepts a cluster of numeric values
0 through 1, where 0 represents the absence of the red, green, or blue color and 1 represents a
full saturation of the color. The alpha value indicates the transparency of the red, green, and
blue colors.
2286 ni.com
Functions
• Red —
• Green —
• Blue —
• Alpha —
Alpha specifies the level of opacity of the RGB color when you apply the color to a 3D object.
Alpha must be a value between 0 and 1. The default is 1.
• Radius —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Detail —
Detail specifies the number of vertices to use in drawing the object. A higher detail value
produces a better approximation of the geometry. The default is 1.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Create Cone
Sets a 3D object you create with the Create Object VI to a cone by applying a cone
geometry to the object.
Inputs/Outputs
• Color —
Color specifies the color of the object in RGBA format. Color accepts a cluster of numeric values
0 through 1, where 0 represents the absence of the red, green, or blue color and 1 represents a
full saturation of the color. The alpha value indicates the transparency of the red, green, and
blue colors.
• Red —
• Green —
• Blue —
• Alpha —
Alpha specifies the level of opacity of the RGB color when you apply the color to a 3D object.
Alpha must be a value between 0 and 1. The default is 1.
• Height —
2288 ni.com
Functions
• Radius —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Detail —
Detail specifies the number of vertices to use in drawing the object. A higher detail value
produces a better approximation of the geometry. The default is 1.
• error out —
error out contains error information. This output provides standard error out functionality.
Create Cylinder
Sets a 3D object you create with the Create Object VI to a cylinder by applying a
cylinder geometry to the object.
Inputs/Outputs
• Color —
Color specifies the color of the object in RGBA format. Color accepts a cluster of numeric values
0 through 1, where 0 represents the absence of the red, green, or blue color and 1 represents a
full saturation of the color. The alpha value indicates the transparency of the red, green, and
blue colors.
• Red —
• Green —
• Blue —
• Alpha —
Alpha specifies the level of opacity of the RGB color when you apply the color to a 3D object.
Alpha must be a value between 0 and 1. The default is 1.
• Height —
• Radius —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Detail —
Detail specifies the number of vertices to use in drawing the object. A higher detail value
produces a better approximation of the geometry. The default is 1.
2290 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Color —
Color specifies the color of the object in RGBA format. Color accepts a cluster of numeric values
0 through 1, where 0 represents the absence of the red, green, or blue color and 1 represents a
full saturation of the color. The alpha value indicates the transparency of the red, green, and
blue colors.
• Red —
• Green —
• Blue —
• Alpha —
Alpha specifies the level of opacity of the RGB color when you apply the color to a 3D object.
Alpha must be a value between 0 and 1. The default is 1.
• Data —
Data is a 2D array of values that represent the height of the surface of the object at evenly spaced
intervals.
• Row Interval —
Row Interval specifies the distance between the intervals on the x-axis of the object at which the
height field Data is taken.
• Column Interval —
Column Interval specifies the distance between the intervals on the y-axis of the object at which
the height field Data is taken.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Base Height —
Base Height specifies the actual height value of the surface of the object when the value in the
height field is the minimum z value.
• error out —
error out contains error information. This output provides standard error out functionality.
Create Mesh
Creates a 3D mesh to apply to a 3D object that appears in a 3D scene.
2292 ni.com
Functions
Inputs/Outputs
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Inputs/Outputs
• Color Array —
Color Array specifies the RGBA color values for the colors that Color Binding Mode applies to the
3D object. Color Binding Mode references only the first index in the array if you set the mode to
Overall whereas it references the respective number of indices if you set the mode to Per
Primitive or Per Vertex.
• Red —
• Green —
• Blue —
• Alpha —
Alpha specifies the level of opacity of the RGB color when the color is applied to the 3D
object. Alpha must be a value between 0 and 1. The default is 1.
Color Binding Mode specifies the mode to use to bind color to the mesh. The mode determines
how LabVIEW assigns the color you specify in Color Array.
Note The Per Primitive and Overall modes differ in behavior only when
Draw Mode is Points, Lines, Triangles, or Quads.
• Draw Mode —
2294 ni.com
Functions
Draw Mode specifies the mode LabVIEW uses to draw the mesh. The mode determines how
LabVIEW interprets the data you wire to Vertex Array.
0 Points (default)
1 Lines
2 Line Strip
3 Line Loop
4 Triangles
5 Triangle Strip
6 Triangle Fan
7 Quads
8 Quad Strip
9 Polygon
• Vertex Array —
Vertex Array sets the x, y, and z coordinate values in 3D space that LabVIEW uses to draw the
mesh. The settings you specify in Color Array, Draw Mode, and Indices determine how LabVIEW
interprets the vertices.
• X—
• Y—
• Z—
• Indices —
Indices determines the order in which LabVIEW processes the data in the Color Array and Vertex
Array of the mesh. For example, if Indices is [3, 2, 4, 1], then V0 appears at index 3 in the Vertex
Array, the color of V0 appears at index 3 in the Color Array, and so on.
Note If you set Color Binding Mode to Per Primitive, the color refers to the
entire face formed by V0, V1…VN (where Draw Mode determines N) rather than only
the index you specify.
• Normal Array —
Normal Array sets the x, y, and z values that define the array of normals that Normal Binding
• X—
• Y—
• Z—
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
Normal Binding Mode sets the binding mode for the normal vectors of the mesh. The mode
determines how LabVIEW assigns the normals you specify in Normal Array to the 3D object.
Normals determine how lights in a 3D scene affect the rendering of a 3D object.
0 Overall
1 Per Primitive
2 Per Vertex
3 Binding Off
Texture Coordinate Array sets the s and t coordinates that define how to apply a texture to the
mesh. You must assign a texture to the mesh with the Apply Texture VI for this array to have
meaning. Each element of the array is a coordinate in a 2-D plane of domain {0..1, 0..1}, where
[0,0] is the bottom-left pixel of the image, and [1, 1] is the top-right pixel.
• S—
• T—
• error out —
2296 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Create 3D Axis
Creates an x, y, and z axis object to define 3D space in a scene.
Inputs/Outputs
• Half plane? —
Half plane? specifies whether to use both sides of the axis boundary. The default is TRUE, which
specifies to use a half plane.
• Color —
Color specifies the color of the object in RGBA format. Color accepts a cluster of numeric values
0 through 1, where 0 represents the absence of the red, green, or blue color and 1 represents a
full saturation of the color. The alpha value indicates the transparency of the red, green, and
blue colors.
• Red —
• Green —
• Blue —
• Alpha —
Alpha specifies the level of opacity of the RGB color when you apply the color to a 3D object.
Alpha must be a value between 0 and 1. The default is 1.
• Name —
• Length —
Length specifies the length of the axis in coordinate units. The default is 2.
• Radius —
Radius specifies the radius of the axis in coordinate units. The default is 0.01.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Axis label? —
Axis label? specifies whether to display axis labels. The default is FALSE.
• Character Size —
Character Size specifies the height of the axis label text characters in coordinate units. For
example, set character size to 1 to create an axis label equal in height to a geometric object with
a height of 1. The default is 0.5.
• error out —
error out contains error information. This output provides standard error out functionality.
2298 ni.com
Functions
Create Text
Sets a 3D object you create with the Create Object VI to a text object and applies the
text, font, and color you specify to the object.
Inputs/Outputs
• Text —
Text is the text that appears when you generate the 3D scene.
Path to font file specifies the path to the font you want to use to display the Text. LabVIEW
accepts only TrueType fonts. The path you wire to this VI must have a .ttf file extension. If you
do not wire Path to font file, LabVIEW displays the text using a Courier font.
• Color —
Color specifies the color of the object in RGBA format. Color accepts a cluster of numeric values
0 through 1, where 0 represents the absence of the red, green, or blue color and 1 represents a
full saturation of the color. The alpha value indicates the transparency of the red, green, and
blue colors.
• Red —
• Green —
• Blue —
• Alpha —
Alpha specifies the level of opacity of the RGB color when you apply the color to a 3D object.
Alpha must be a value between 0 and 1. The default is 1.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
New Text Refnum returns a reference to the text, including the font and color you specify.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Font Options —
Font Options specifies alignment, position, and wrap options for the text.
• Alignment —
2300 ni.com
Functions
• Horizontal Alignment —
0 Center
1 Left
2 Right
• Vertical Alignment —
0 Base Line
1 Bottom
2 Bottom Base Line
3 Center
4 Top
• Axis Alignment —
Axis Alignment specifies the alignment of the text in relation to the x, y, and z axes.
0 Reversed X-Y
1 Reversed X-Z
2 Reversed Y-Z
3 Screen
4 X-Y
5 X-Z
6 Y-Z
• Vertical? —
Vertical? specifies whether the text runs vertically. The default is FALSE.
• Wrap Distance —
Wrap Distance specifies the distance to wrap the text in coordinate units.
• Color —
Color specifies the color of the object in RGBA format. Color accepts a cluster of numeric values
0 through 1, where 0 represents the absence of the red, green, or blue color and 1 represents a
full saturation of the color. The alpha value indicates the transparency of the red, green, and
blue colors.
• Red —
• Green —
• Blue —
• Alpha —
Alpha specifies the level of opacity of the RGB color when you apply the color to a 3D object.
Alpha must be a value between 0 and 1. The default is 1.
• Text —
• Font Name —
If you misspell the font name or specify a font that is not installed on the computer, the
operating system selects a font.
• Character Size —
Character Size specifies the height of the text characters in coordinate units. For example, set
character size to 1 to create text characters equal in height to a geometric object with a height of
1. The default is 0.5.
2302 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
New Text Refnum returns a reference to the text, including the font and color you specify.
• error out —
error out contains error information. This output provides standard error out functionality.
Object
Palette
Description
Object
Create
Creates a new 3D object to display in the 3D scene.
Object
Takes a 3D scene reference and an object name and returns the first object in the
Find Object
scene with a matching name.
Set Specifies surface properties used by lighting equations during rendering. Inputs
Material specified by this VI appear only in lit scenes.
Set
Drawing Specifies the rendering mode for 3D objects.
Style
Set
Blends fragment color outputs with destination colors for texturing 3D objects.
Blending
Create Object
Creates a new 3D object to display in the 3D scene.
To display a new object in the 3D picture control, you must use the SceneObject
Properties and SceneObject Methods to set the geometric form and other attributes of
the object.
Examples
Add Object
Adds a 3D object to a scene.
2304 ni.com
Functions
Inputs/Outputs
• Scene Object In —
• New Object In —
New Object In specifies a reference to the object you want to add to the scene.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Scene Object In —
• New Object In —
New Object In specifies a reference to the object you want to add to the scene.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
New Object Out returns a reference to the object you add to the scene.
• error out —
error out contains error information. This output provides standard error out functionality.
Find Object
Takes a 3D scene reference and an object name and returns the first object in the scene
with a matching name.
Inputs/Outputs
• Scene Refnum —
2306 ni.com
Functions
Scene Refnum is the reference to the scene that contains the object.
• Object Name —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Object Refnum —
• error out —
error out contains error information. This output provides standard error out functionality.
Set Material
Specifies surface properties used by lighting equations during rendering. Inputs
specified by this VI appear only in lit scenes.
Inputs/Outputs
• Specular —
Specular specifies the RGBA color value that represents the reflection of direct, specular light off
of the object.
• Red —
• Green —
• Blue —
• Alpha —
• Ambient —
Ambient specifies the RGBA color value that indirect, ambient light affects.
• Red —
• Green —
• Blue —
• Alpha —
• Scene Object In —
• Color Mode —
2308 ni.com
Functions
0 Inherit Material (default)—The object inherits the color mode of a parent object.
Use entire Material—The emissive color of the material and its ambient, diffuse, and specular
1
reflectance values all affect the reaction of the material to a light source.
Ignore Ambient—LabVIEW ignores the ambient color and uses the base color of the object in
2
its place.
Ignore Diffuse—LabVIEW ignores the diffuse color and uses the base color of the object in its
3
place.
Ignore Specular—LabVIEW ignores the specular color and uses the base color of the object in
4
its place.
Ignore Emission—LabVIEW ignores the emissive color and uses the base color of the object in
5
its place.
Ignore Ambient and Diffuse—LabVIEW ignores the ambient and diffuse colors and uses the
6
base color of the object in their place.
• Shininess —
Shininess specifies the size of the highlight that appears on the object when light reflects
specularly off the object. Shininess can be a value from 0-128. The default is 0.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Emission —
Emission specifies the RGBA color value of the emissive light of the object. Emissive light
emanates from the object itself instead of an external light source.
• Red —
• Green —
• Blue —
• Alpha —
• Diffuse —
Diffuse specifies the RGBA color value of the lit object. LabVIEW determines the RBGA value
based on the angle between the orientation of the object and the direction of the light source.
• Red —
• Green —
• Blue —
• Alpha —
• error out —
error out contains error information. This output provides standard error out functionality.
2310 ni.com
Functions
Inputs/Outputs
• Face Culling Mode —
Face Culling Mode specifies whether an object's front-facing and back-facing polygons are
visible.
• Frontface Mode —
Frontface Mode specifies the winding order of an object. Face Culling Mode interprets this input
to determine the visibility of the object's polygons.
• Scene Object In —
• Mode —
• Size —
Size specifies the size of the points you use to draw the geometry. Set the value to -1 to inherit
the point size of a parent object. The default is -1.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Set Blending
Blends fragment color outputs with destination colors for texturing 3D objects.
Inputs/Outputs
• Scene Object In —
• Mode —
Mode specifies how the color values you apply to a 3D object blend.
2312 ni.com
Functions
0 Inherit Value (default)—The object inherits the blending mode of a parent object.
1 On—Enables blending.
2 Off—Disables blending.
• Bin —
Bin specifies the draw bin in which you drop and store objects. The bin of an object affects the
order in which the object appears when you render the scene.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Destination —
Destination specifies the blend factor you apply to the color values of the currently stored pixels.
The following source and destination color components are described as (Rs, Gs, Bs, As) for
source components and (Rd, Gd, Bd, Ad) for destination components. The components have
integer values between 0 and (kR, kG, kB, kA), where kR=2mR 1, kG=2mG 1, kB=2mB 1, and
kA=2mA 1. (mR, mG, mB, mA) is the number of bitplanes for each red, green, blue, and alpha
value.
0 Zero (default)—(0, 0, 0, 0)
1 One—(1, 1, 1, 1)
2 Source Color—(RS/kR, Gs/kG, Bs/kB, As/kA)
3 One Minus Source Color—(1, 1, 1, 1)-(RS/kR, Gs/kG, Bs/kB, As/kA)
4 Source Alpha—(As/kA, As/kA, As/kA, As/kA)
5 One Minus Source Alpha—(1, 1, 1, 1)-(As/kA, As/kA, As/kA, As/kA)
6 Destination Alpha—(Ad/kA, Ad/kA, Ad/kA, Ad/kA)
7 One Minus Destination Alpha—(1, 1, 1, 1)-(Ad/kA,Ad/kA, Ad/kA, Ad/kA)
• Source —
Source specifies the blend factor you apply to the color values of the incoming fragment.
The following source and destination color components are described as (Rs, Gs, Bs, As) for
source components and (Rd, Gd, Bd, Ad) for destination components. The components have
integer values between 0 and (kR, kG, kB, kA), where kR=2mR 1, kG=2mG 1, kB=2mB 1, and
kA=2mA 1. (mR, mG, mB, mA) is the number of bitplanes for each red, green, blue, and alpha
value.
0 Zero (default)—(0, 0, 0, 0)
1 One—(1, 1, 1, 1)
2 Destination Color—(Rd/kR, Gd/kG, Bd/kB, Ad/kA)
3 One Minus Destination Color—(1, 1, 1, 1)-(Rd/kR, Gd/kG, Bd/kB, Ad/kA)
4 Source Alpha—(As/kA, As/kA, As/kA, As/kA)
5 One Minus Source Alpha—(1, 1, 1, 1)-(As/kA, As/kA, As/kA, As/kA)
6 Destination Alpha—(Ad/kA, Ad/kA, Ad/kA, Ad/kA)
7 One Minus Destination Alpha—(1, 1, 1, 1)-(Ad/kA, Ad/kA, Ad/kA, Ad/kA)
8 Source Alpha Saturate—(i, i, i, 1) where i=min (As, kA, Ad)/kA
• error out —
error out contains error information. This output provides standard error out functionality.
Transformations
Note LabVIEW transforms objects about their center of mass. A cone's center
of mass is one-fourth of the way from the center of the base to the vertex, not
equidistant between the highest and lowest point.
2314 ni.com
Functions
Get Rotation Returns the rotation applied to an object in a 3D scene in axis-angle form.
Clears any rotations previously applied to an object in a 3D scene and rotates the
Set Rotation object by the values Axis and Angle. This VI performs an absolute rotation from
the object's initial position.
Rotates an object in a 3D scene by the values Axis and Angle. This VI performs a
Rotate Object
relative rotation from the object's current position.
Translate Translates an object in a 3D scene by the vector you specify. This VI performs a
Object relative translation from the object's current position.
Clears any previous scale operation applied to an object in a 3D scene and applies
Set Scale the scaling factors you specify. This VI performs an absolute scale from the
object's initial position.
Rotate X-axis
Rotates an object about the X-axis.
Inputs/Outputs
• Relative? —
Relative? specifies whether the rotation is relative to the axis. The default is FALSE.
• Scene Object In —
• angle —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• angle unit —
2316 ni.com
Functions
angle unit specifies the units of rotation in degrees or radians. The default is degrees.
• error out —
error out contains error information. This output provides standard error out functionality.
Rotate Y-axis
Rotates an object about the Y-axis.
Inputs/Outputs
• Relative? —
Relative? specifies whether the rotation is relative to the axis. The default is FALSE.
• Scene Object In —
• angle —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• angle unit —
angle unit specifies the units of rotation in degrees or radians. The default is degrees.
• error out —
error out contains error information. This output provides standard error out functionality.
Rotate Z-axis
Rotates an object about the Z-axis.
Inputs/Outputs
• Relative? —
Relative? specifies whether the rotation is relative to the axis. The default is FALSE.
• Scene Object In —
• angle —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• angle unit —
2318 ni.com
Functions
angle unit specifies the units of rotation in degrees or radians. The default is degrees.
• error out —
error out contains error information. This output provides standard error out functionality.
Get Rotation
Returns the rotation applied to an object in a 3D scene in axis-angle form.
Inputs/Outputs
• Scene Object —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Scene Object —
Scene Object is the reference to the object whose rotation you want to get.
• Axis —
Axis returns the x, y, and z coordinates that define the axis around which the rotation occurs.
• X—
• Y—
• Z—
• Angle —
• error out —
error out contains error information. This output provides standard error out functionality.
Set Rotation
Clears any rotations previously applied to an object in a 3D scene and rotates the
object by the values Axis and Angle. This VI performs an absolute rotation from the
object's initial position.
Inputs/Outputs
• Scene Object —
• Axis —
2320 ni.com
Functions
Axis specifies the x, y, and z coordinates that define the axis around which the rotation occurs.
• X—
• Y—
• Z—
• Angle —
Angle specifies the angle in radians around the Axis by which the rotation occurs.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Rotate Object
Rotates an object in a 3D scene by the values Axis and Angle. This VI performs a
relative rotation from the object's current position.
Inputs/Outputs
• Scene.Object In —
• Axis —
Axis specifies the x, y, and z coordinates that define the axis around which the rotation occurs.
• X—
• Y—
• Z—
• Angle —
Angle specifies the angle in radians around the Axis by which the rotation occurs.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Scene.Object Out —
• error out —
error out contains error information. This output provides standard error out functionality.
2322 ni.com
Functions
Examples
Get Translation
Returns the translation applied to an object in a 3D scene.
Inputs/Outputs
• Scene Object —
Scene Object is the reference to the object whose translation you want to get.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Scene Object —
• Transformation:Get Translation —
Transformation:Get Translation returns the x, y, and z factors that define the translation applied
to the Scene Object.
• X—
• Y—
• Z—
• error out —
error out contains error information. This output provides standard error out functionality.
Set Translation
Clears any translations previously applied to an object in a 3D scene and translates the
object by the vector you specify. This VI performs an absolute translation from the
object's initial position.
Use the Translate Object VI to translate an object from the object's current position.
Inputs/Outputs
• Scene Object —
• Translation —
Translation contains the x, y, and z coordinates that define the vector you want to use in the
translation.
2324 ni.com
Functions
• X—
• Y—
• Z—
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Translated Object —
• error out —
error out contains error information. This output provides standard error out functionality.
Translate Object
Translates an object in a 3D scene by the vector you specify. This VI performs a relative
translation from the object's current position.
Use the Set Translation VI to translate an object from the object's initial position.
Inputs/Outputs
• Scene.Object In —
• Translation —
Translation contains the x, y, and z coordinates that define the vector you want to use in the
translation.
• X—
• Y—
• Z—
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Scene.Object Out —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
2326 ni.com
Functions
Get Scale
Returns the scale factors applied to an object in a 3D scene.
Inputs/Outputs
• Scene Object —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Scene Object —
Scene Object is the reference to the object whose scale you want to get.
• Transformation:Get Scale —
Transformation:Get Scale returns the x, y, and z factors that define the scale of the Scene
Object.
• X—
• Y—
• Z—
• error out —
error out contains error information. This output provides standard error out functionality.
Set Scale
Clears any previous scale operation applied to an object in a 3D scene and applies the
scaling factors you specify. This VI performs an absolute scale from the object's initial
position.
Inputs/Outputs
• Scene Object —
Scene Object is the reference to the object to which you want to apply a scale.
• Scale —
Scale specifies the x, y, and z factors that define the scale of the 3D object.
• X—
• Y—
• Z—
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
2328 ni.com
Functions
• Scaled Object —
• error out —
error out contains error information. This output provides standard error out functionality.
Scale Object
Uniformly scales an object in a 3D scene by the factors you specify. This VI performs a
relative scale from the object's current position.
Inputs/Outputs
• Scene.Object In —
• Scale —
Scale specifies the x, y, and z factors that define the scale of the 3D object.
• X—
• Y—
• Z—
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Scene.Object Out —
• error out —
error out contains error information. This output provides standard error out functionality.
Clear Transformation
Clears any transformations previously applied to an object in a 3D scene by modifying
the identity matrices that describe the transformations.
Inputs/Outputs
• Object Refnum In —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
Object Refnum Out is the reference to the object with transformations cleared.
• error out —
error out contains error information. This output provides standard error out functionality.
2330 ni.com
Functions
Examples
File Loading
Use the File Loading VIs to load geometries of various model types in a 3D scene graph.
Palette
Description
Object
Load ASE Loads a three-dimensional object model saved in 3D Studio ASCII Exchange (ASE)
Geometry format to display in a 3D scene.
Load STL Loads a three-dimensional object model saved in ASCII stereolithography (STL) format
Geometry to display in a 3D scene.
Inputs/Outputs
• Path —
• error in —
error out contains error information. This output provides standard error out functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Model File —
error in describes error conditions that occur before this node runs. This input provides
2332 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Model File —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Helpers
Use the Helpers VIs to perform some common tasks in setting up a 3D scene.
Palette
Description
Object
Color Converts an RGB color and an alpha into an RGBA cluster that you can apply to a 3D
Change object.
Setup
Creates a new window with hardware acceleration for rendering the 3D scene.
Window
Create
Defines a plane in the 3D scene beyond which objects cannot be drawn.
Clip Plane
Creates a new texture from an image and applies the texture to the surface of an object
Texture
in the 3D scene.
Set Clip
Defines the plane beyond which LabVIEW clips, or does not render, surfaces in a scene.
Plane
Set Light Creates and positions a light source in 3D space relative to a 3D object.
Apply
Maps a texture to the surface of a 3D object. You must manually select the polymorphic
Texture
2334 ni.com
Functions
Palette
Description
Object
instance to use.
Color Change
Converts an RGB color and an alpha into an RGBA cluster that you can apply to a 3D
object.
Inputs/Outputs
• Color —
Color is the color that you want to convert to its respective red, green, and blue components.
• Alpha —
Alpha specifies the level of opacity of the RGB color when the color is applied to the 3D object.
Alpha must be a value between 0 and 1, where 0 is transparent and 1 is opaque. The default is
1.
Note If you want the returned color to be transparent when you apply it to a
SceneObject, you must enable blending on the SceneObject and set the Blending:Bin
property to Transparent Bin.
• RGBA —
• R—
• G—
• B—
• A—
Setup Window
Creates a new window with hardware acceleration for rendering the 3D scene.
Inputs/Outputs
• Window State —
0 Open (default)—The new window is open but is not maximized, minimized, or hidden.
1 Minimized—The new window is minimized.
2 Maximized—The new window is maximized.
Hidden—The new window is floating but is not visible because LabVIEW is not the active
3
application.
• Camera Controller —
Camera Controller sets the interaction of the camera with the 3D scene.
2336 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Sensor Mapping
Maps real-world data onto a 3D model.
Use the Sensor Mapping Express VI to wire an array of data values to represent sensors
you configure using the dialog box options below.
Option Description
Displays a file dialog box you can use to navigate to a file of a 3D model you create using
a CAD program. LabVIEW supports the following file formats for three-dimensional
object models:
Model
Specifies the path to the 3D model you want to load.
Path
Displays the 3D model. Right-click the 3D model on the sensor canvas to place free
Sensor
sensors. You can configure sensors to represent NI-DAQmx channels or create free
Canvas
sensors to represent data you wire to the Express VI.
Determines how LabVIEW draws the 3D model. Use this option to ensure accurate
placement of the sensors. Select from the following options:
Sensor Determines the size of the sensors you place on the 3D model. Use this option to ensure
Size accurate placement of the sensors.
DAQmx
Lists all NI-DAQmx tasks you create and save. Selecting a NI-DAQmx task from the pull-
Task
down menu populates the Channels List with the channels for the task.
Name
2338 ni.com
Functions
Option Description
Note The DAQmx Task Name option does not appear unless you install NI-
DAQmx. Refer to the DAQ Getting Started Guide for more information
about installing NI-DAQmx. Refer to the NI-DAQmx Help for more
information about using NI-DAQmx channels.
Lists DAQ channels and free sensors. Select a DAQmx task from the pull-down menu.
Channels LabVIEW populates the Channels List with the channels for the DAQmx task. Drag and
List drop DAQmx task channels from the list to place sensors on the 3D model. You also can
right-click the 3D model to place free sensors on the model.
Removes a sensor from the 3D model. Select a sensor in the Channels List and click the
Delete
Delete Sensor button to remove the sensor from the list. Deleting a sensor from the 3D
Sensor
model does not delete the channel from the DAQmx task.
Configures the minimum and maximum value ranges for the incoming data. For
example, if you change the color ramp minimum to 100 and the maximum to 200, the
data values should range from 100–200. After you set the value range, click the top and
Color bottom out-of-range colors to configure the colors to indicate if a value is outside of the
Ramp value range you set.
Right-click the Color Ramp control and use the shortcut menu items to customize the
appearance, size, colors, and number of colors.
Inputs/Outputs
• Sensor Values —
Contains the sensor values. Wire a 1D array of double-precision, floating-point numbers whose
positions correspond to the order you configure the sensors in the Configure Sensors dialog
box.
• error out —
Contains error information. This output provides standard error out functionality.
Returns a reference to a 3D scene object. Wire this output to the 3D picture control to add a 3D
picture control to the front panel window and view the 3D model.
Configuring the Draw Style or Sensor Size options in the Configure Sensors dialog box
does not affect the appearance of the 3D model in the front panel window when the VI
runs. The sensors do not appear on the 3D model when the VI runs.
Components
error out passes error or warning information out of a VI to be used by other VIs. Right-
click the error out indicator on the front panel and select Explain Error or Explain
Warning from the shortcut menu for more information about the error.
source string describes the origin of the error or warning. Right-click the error out
indicator on the front panel and select Explain Error or Explain Warning from the
shortcut menu for more information about the error.
code is the error or warning code. Right-click the error out indicator on the front panel
and select Explain Error or Explain Warning from the shortcut menu for more
information about the error.
Configures the minimum and maximum value ranges for the incoming data. For
example, if you change the color ramp minimum to 100 and the maximum to 200, the
data values should range from 100–200. After you set the value range, click the top and
bottom out-of-range colors to configure the colors to indicate if a value is outside of
the value range you set.
2340 ni.com
Functions
Right-click the Color Ramp control and use the shortcut menu items to customize the
appearance, size, colors, and number of colors.
Determines how LabVIEW draws the 3D model. Use this option to ensure accurate
placement of the sensors. Select from the following options:
Removes a sensor from the 3D model. Select a sensor in the Channels List and click
the Delete Sensor button to remove the sensor from the list. Deleting a sensor from
the 3D model does not delete the channel from the DAQmx task.
Determines the size of the sensors you place on the 3D model. Use this option to
ensure accurate placement of the sensors.
Lists all NI-DAQmx tasks you create and save. Selecting a NI-DAQmx task from the pull-
down menu populates the Channels List with the channels for the task.
Lists DAQ channels and free sensors. Select a DAQmx task from the pull-down menu.
LabVIEW populates the Channels List with the channels for the DAQmx task. Drag and
drop DAQmx task channels from the list to place sensors on the 3D model. You also can
right-click the 3D model to place free sensors on the model.
Determines how LabVIEW draws the 3D model. Use this option to ensure accurate
placement of the sensors. Select from the following options: Points--Draws the model
by placing points at the vertices of the object. Wireframe+Polygons--Draws the model
with line segments that connect at the vertices to form a bounded geometry on top of
the fully bounded and filled geometric 3D model. Wireframe--Draws the model with
line segments that connect at the vertices to form a bounded geometry. Polygons--
Draws the model with a fully bounded and filled geometry.
Determines the size of the sensors you place on the 3D model. Use this option to
ensure accurate placement of the sensors.
Lists all NI-DAQmx tasks you create and save. Selecting a NI-DAQmx task from the pull-
down menu populates the Channels List with the channels for the task.
Displays a file dialog box you can use to navigate to a file of a 3D model you create
using a CAD program. LabVIEW supports the following file formats for three-
dimensional object models:
Displays the 3D model. Right-click the 3D model on the sensor canvas to place free
sensors. You can configure sensors to represent NI-DAQmx channels or create free
sensors to represent data you wire to the Express VI.
Inputs/Outputs
• Plane —
• A—
• B—
2342 ni.com
Functions
• C—
• D—
• Number —
Number is the integer used to identify the plane. Number must be a value between 0 and 5,
inclusive.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
The coordinates of points in a clip plane are determined by the following equation:
Ax+By+Cz+D = 0
LabVIEW determines the side of the plane on which objects appear based on the
orientation of the plane. A plane defined by the constants 1, 1, 1, and 0 is opposite in
orientation to a plane defined by the constants –1, –1, –1, and 0.
New Light
Creates a new light source for the 3D scene.
Inputs/Outputs
• At Infinity —
At Infinity specifies whether the light source is at an infinite distance from the scene. When At
Infinity is TRUE, all light strikes the scene in parallel. The default is FALSE.
• Light Number —
Light Number is the index, or integer used to identify the light. Light Number must be a value
between 0 and 7, inclusive. You cannot index more than 8 lights in a 3D scene.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
2344 ni.com
Functions
Texture
Creates a new texture from an image and applies the texture to the surface of an object
in the 3D scene.
Inputs/Outputs
• Image —
• image type —
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per
pixel.
image depth affects how LabVIEW interprets the values of image and colors.
• image —
image is an array of bytes that describes the color of each pixel in the image in raster order.
The value of image depth determines how LabVIEW interprets the value of this input.
If image depth is 24, each pixel has three bytes to describe its color. The first byte for each
pixel describes the red value, the second byte describes the green value, and the third byte
describes the blue value.
If image depth is 8, each pixel has one byte to describe its color. The value of each byte
corresponds to an element in colors, which stores 32-bit RGB values where the most-
significant byte is zero, followed in order by red, green, and blue values. Valid values include
0 through 255.
If image depth is 4, the behavior is similar to when image depth is 8 except valid values in
image include 0 through 15.
If image depth is 1, any value of zero in image corresponds to element 0 in colors. All other
values correspond to element 1 in colors.
• mask —
mask is an array of bytes in which each bit describes mask information for a pixel. The first
byte describes the first eight pixels, the second byte describes the next eight pixels, and so
on.
If a bit is zero, LabVIEW draws the corresponding pixel as transparent. If the array is empty,
LabVIEW draws all pixels without transparency. If the array does not contain a bit for each
pixel in the image, LabVIEW draws any pixels missing from the array without transparency.
• colors —
colors is an array of RGB color values that correspond to the values in image. The value of
image depth determines how LabVIEW interprets the value of this input. colors stores 32-bit
RGB values where the most-significant byte is zero, followed in order by red, green, and blue
values. Valid values include 0 through 255.
• Rectangle —
Rectangle is a cluster that contains coordinates that describe the bounding rectangle in
which you want to draw the image.
The VI clips the image to the width and height of the rectangle. The bottom and right edges
of the rectangle bounds do not contain image pixels. Horizontal coordinates increase to the
right, and vertical coordinates increase to the bottom.
• left —
2346 ni.com
Functions
• top —
• right —
• bottom —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Inputs/Outputs
• Scene Object In —
Clip Plane State specifies whether to enable the clip plane state.
0 Inherit Value (default)—The clip plane inherits the clip plane state of a parent object.
1 Off—Disables the clip plane so it does not apply to the object.
2 On—Enables the clip plane.
2348 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Scene Object In —
Clip Plane State specifies whether to enable the clip plane state.
0 Inherit Value (default)—The clip plane inherits the clip plane state of a parent object.
1 Off—Disables the clip plane so it does not apply to the object.
2 On—Enables the clip plane.
error in describes error conditions that occur before this node runs. This input provides
Clip Plane Refnum Out returns a reference to the clip plane object.
• error out —
error out contains error information. This output provides standard error out functionality.
Set Light
Creates and positions a light source in 3D space relative to a 3D object.
Inputs/Outputs
• Light State —
2350 ni.com
Functions
0 Inherit Value (default)—The light inherits the state of the parent object.
1 Off—Disables the light.
2 On—Enables the light.
• Scene Object In —
• Light Refnum In —
• Position —
Position specifies the x, y, and z coordinates that define the position of the light relative to its
owning object.
• X—
• Y—
• Z—
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Light State —
0 Inherit Value (default)—The light inherits the state of the parent object.
1 Off—Disables the light.
2 On—Enables the light.
• Scene Object In —
• Light Refnum In —
• Position —
Position specifies the x, y, and z coordinates that define the position of the light relative to its
owning object.
• X—
• Y—
2352 ni.com
Functions
• Z—
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Apply Texture
Maps a texture to the surface of a 3D object. You must manually select the polymorphic
instance to use.
Inputs/Outputs
• Vertical Wrap Mode —
Vertical Wrap Mode specifies how to vertically wrap the texture around a 3D object.
Clamp (default)—The texture does not repeat across the surface of the object when you pass
0 texture coordinates outside the range [0…1]. LabVIEW interprets any texture coordinates in
Image outside this range with clamped values.
Repeat—The texture repeats across the surface of the object when you pass texture
1 coordinates outside the range [0…1]. LabVIEW only considers the fractional part of the texture
coordinate. For example, LabVIEW interprets 0.4 and 3.4 as the same texture coordinate.
Horizontal Wrap Mode specifies how to horizontally wrap the texture around a 3D object.
Clamp (default)—The texture does not repeat across the surface of the object when you pass
0 texture coordinates outside the range [0…1]. LabVIEW interprets any texture coordinates in
Image outside this range with clamped values.
Repeat—The texture repeats across the surface of the object when you pass texture
1 coordinates outside the range [0…1]. LabVIEW only considers the fractional part of the texture
coordinate. For example, LabVIEW interprets 0.4 and 3.4 as the same texture coordinate.
• Scene Object In —
2354 ni.com
Functions
• Image Data —
• image type —
• image depth —
• image —
• mask —
• colors —
• Rectangle —
• left —
• top —
• right —
• bottom —
• Apply Mode —
Apply Mode specifies how LabVIEW applies the texture to the 3D object.
As a Decal (default)—Applies the texture as a decal, blending the colors of the texture and the
geometry of the object according to the following formula:
0
Result Color=(1–Alpha in texel)*Color of geometry+Alpha in texel*Color in texel
The alpha of the vertex does not change and is the same as the alpha in the geometry.
With Modulation—Applies the texture to the surface of the object and modulates the texture by
the color of the surface according to the following formulas:
1
Result Color=Color(texel)*Color(geometry)
Result Alpha=Alpha(texel)*Alpha(geometry)
With Blending—Blends the texture with the Blend Color of the texture according to the
following formula:
2
Result Color=(–Color in texel)*Color in geometry+Color in texel*Blend Color
As a Replacement—Replaces the color of the geometry with the color of the texture. LabVIEW
3
also replaces the alpha value of the geometry with the alpha value of the texture.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Filter Mode —
Filter Mode specifies the method to use to filter the texel colors applied to the geometry.
Different values affect the quality and speed of the texture mapping.
0 No Filtration (default)—LabVIEW uses the closest texel for the texture color.
Linear Filtration—Filters the texture by taking the weighted linear average of the 2x2 array of
1
texels that lies nearest to the center of the pixels of the texture map.
Simple Mipmap Filtration—Stores mipmaps, or multiple copies of the texture, at increasingly
2 smaller resolutions. LabVIEW chooses the mipmap with texels closest in size to the pixel it is
texturing and then chooses the nearest texel as the texture color.
Bilinear Filtration—Performs a linear filtration but uses the mipmap with texels closest in size
3
to the pixel LabVIEW is texturing.
Trilinear Filtration—LabVIEW chooses the two mipmaps that are closest in size to the pixel it is
4 texturing and then performs a linear filtration on both textures. The resulting texture color is
the weighted average of the two values.
• Blend Color —
2356 ni.com
Functions
Blend Color specifies the RGBA color to use to blend the texture you apply to the object. This
input blends a color with a texture when Apply Mode is set to With Blending.
• Red —
• Green —
• Blue —
• Alpha —
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• Vertical Wrap Mode —
Vertical Wrap Mode specifies how to vertically wrap the texture around a 3D object.
Clamp (default)—The texture does not repeat across the surface of the object when you pass
0 texture coordinates outside the range [0…1]. LabVIEW interprets any texture coordinates in
Image outside this range with clamped values.
Repeat—The texture repeats across the surface of the object when you pass texture
1 coordinates outside the range [0…1]. LabVIEW only considers the fractional part of the texture
coordinate. For example, LabVIEW interprets 0.4 and 3.4 as the same texture coordinate.
Horizontal Wrap Mode specifies how to horizontally wrap the texture around a 3D object.
Clamp (default)—The texture does not repeat across the surface of the object when you pass
0 texture coordinates outside the range [0…1]. LabVIEW interprets any texture coordinates in
Image outside this range with clamped values.
Repeat—The texture repeats across the surface of the object when you pass texture
1 coordinates outside the range [0…1]. LabVIEW only considers the fractional part of the texture
coordinate. For example, LabVIEW interprets 0.4 and 3.4 as the same texture coordinate.
• Scene Object In —
• Image Data —
• image type —
2358 ni.com
Functions
• image depth —
• image —
• mask —
• colors —
• Rectangle —
• left —
• top —
• right —
• bottom —
• Apply Mode —
Apply Mode specifies how LabVIEW applies the texture to the 3D object.
As a Decal (default)—Applies the texture as a decal, blending the colors of the texture and the
geometry of the object according to the following formula:
0
Result Color=(1–Alpha in texel)*Color of geometry+Alpha in texel*Color in texel
The alpha of the vertex does not change and is the same as the alpha in the geometry.
With Modulation—Applies the texture to the surface of the object and modulates the texture by
the color of the surface according to the following formulas:
1
Result Color=Color(texel)*Color(geometry)
Result Alpha=Alpha(texel)*Alpha(geometry)
2 With Blending—Blends the texture with the Blend Color of the texture according to the
following formula:
As a Replacement—Replaces the color of the geometry with the color of the texture. LabVIEW
3
also replaces the alpha value of the geometry with the alpha value of the texture.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Filter Mode —
Filter Mode specifies the method to use to filter the texel colors applied to the geometry.
Different values affect the quality and speed of the texture mapping.
0 No Filtration (default)—LabVIEW uses the closest texel for the texture color.
Linear Filtration—Filters the texture by taking the weighted linear average of the 2x2 array of
1
texels that lies nearest to the center of the pixels of the texture map.
Simple Mipmap Filtration—Stores mipmaps, or multiple copies of the texture, at increasingly
2 smaller resolutions. LabVIEW chooses the mipmap with texels closest in size to the pixel it is
texturing and then chooses the nearest texel as the texture color.
Bilinear Filtration—Performs a linear filtration but uses the mipmap with texels closest in size
3
to the pixel LabVIEW is texturing.
Trilinear Filtration—LabVIEW chooses the two mipmaps that are closest in size to the pixel it is
4 texturing and then performs a linear filtration on both textures. The resulting texture color is
the weighted average of the two values.
• Blend Color —
Blend Color specifies the RGBA color to use to blend the texture you apply to the object. This
input blends a color with a texture when Apply Mode is set to With Blending.
• Red —
2360 ni.com
Functions
• Green —
• Blue —
• Alpha —
• Texture Refnum —
• error out —
error out contains error information. This output provides standard error out functionality.
Application Control
Use the Application Control VIs and functions to programmatically control VIs and
LabVIEW applications on the local computer or across a network. You can use these VIs
and functions to configure multiple VIs at the same time.
Palette
Description
Object
Open
Application Returns a reference to a VI Server application running on the specified computer.
Reference
Palette
Description
Object
Function
Open VI
Returns a reference to a VI, custom control, or global variable specified by a path to
Reference
the file on disk, name string, or existing reference.
Function
Maintains a static reference to a VI. You can configure the Static VI Reference
Static VI function to output a generic or strictly typed VI reference. After you place the Static
Reference VI Reference function on a block diagram, double-click the function to display a file
dialog box where you can select a VI.
Close
Closes a refnum associated with an open VI, VI object, an open application instance,
Reference
or a .NET, ActiveX or Python object.
Function
Returns the arguments passed from the command line when LabVIEW or a
Get LabVIEW-built application launched. User-defined arguments start after two
Command hyphens (--) surrounded by spaces in the command line.
Line
Arguments If an argument contains double quotation marks ("), this VI returns the argument
without the quotation marks.
Gets (reads) and/or sets (writes) properties of a reference. Use the property node to
Property get or set properties and methods on local or remote application instances, VIs, and
Node objects. You also can use the Property Node to access the private data of a LabVIEW
class.
Invokes a method or action on a reference. Most methods have associated
Invoke Node
parameters.
Call By Calls the VI specified by reference. The reference VI must be a strictly typed VI
Reference reference.
Wait On
Asynchronous Waits for an asynchronous call to a target VI to finish executing and then returns the
Call VI
2362 ni.com
Functions
Palette
Description
Object
outputs of the target VI. To use the Wait On Asynchronous Call node on a reference,
you must include the 0x100 option flag as part of the options input of the Open VI
Reference function when you open the reference. You also must call the target VI
with the Start Asynchronous Call node.
To More
Typecasts a reference, such as a control or a type definition, to a more specific class
Specific Class
or interface in the inheritance hierarchy.
Function
To More
Typecasts a reference, such as a control or a type definition, to a more generic class
Generic Class
or interface in the inheritance hierarchy.
Function
Class
Selects the class of the output. You also can create a class specifier constant from a
Specifier
control refnum control or terminal.
Constant
Returns a static VI reference to the current VI by default. You can reconfigure this
reference to return a reference to the current application, to a control or indicator in
the VI, or to a pane by clicking on the block diagram icon and choosing from the
VI Server
shortcut menu. You can use this reference to access the properties and methods for
Reference
the associated VI, application, control, indicator, or pane. The VI Server Reference
always returns a fully authenticated reference. Use caution when passing
references to other VIs if you are concerned about password security.
Returns the chain of callers from the current VI to the top-level VI. Element 0 of the
Call Chain call chain array contains the name of the lowest VI in the call chain. Subsequent
Function elements are callers of the lower VIs in the call chain. The last element of the call
chain array is the name of the top-level VI.
Returns drag data from the current drag and drop operation. Only use this function
Get Drag Drop when it is necessary to access the drag data, not just to examine the data type. If a
Data Function drag and drop operation is not in progress, LabVIEW returns an error. If the data
requested is unavailable, LabVIEW returns an error.
Stops the VI in which it executes, just as if you clicked the Abort Execution button
on the toolbar. Before you call this function with a TRUE input, be sure to complete
Stop Function
all final tasks for the VI first, such as closing files, setting safe values for devices
being controlled, and so on.
Quit LabVIEW
Stops all executing VIs and ends the current instance of LabVIEW.
Function
Palette
Description
Object
Sets values to the controls for the VI you reference. This function offers better
Set Control
performance than VI Server objects that write to the terminal of a front panel
Values by
control, such as using the Value property in the Control class. However, this
Index
function requires more advanced application design than other methods for setting
Function
control values.
Gets values from the controls for the VI you reference. This function offers better
Get Control
performance than VI Server objects that read from the terminal of a front panel
Values by
control, such as using the Value property in the Control class. However, this
Index
function requires more advanced application design than other methods for getting
Function
control values.
Palette You can use the Palette Editing VIs to edit the Controls or Functions palette set
Editing programmatically.
CPU Use the CPU Information functions to obtain information on the characteristics of a
Information computer or target.
Memory Use the Memory Control VIs and functions to improve LabVIEW memory
Control performance.
You can use the VI Scripting VI and functions to create, edit, and run VIs
VI Scripting
programmatically.
Application
Use the Application Builder VIs to build, deploy, or clean build specifications.
Builder
If you specify an empty string for machine name, it returns a reference to the local
LabVIEW application in which this function is running. If you do specify a machine
name, it attempts to establish a TCP connection with a remote VI Server on that
2364 ni.com
Functions
Inputs/Outputs
• machine name ("": open local reference) —
machine name is the address of the computer that runs an application instance to which you
want to establish a connection.
This address can be in dotted decimal notation (such as 130.164.15.250) or domain name
notation (such as foo.ni.com). An empty string causes this function to return a reference to
the local application instance.
• port number or service name (3363) —
port number or service name can accept a numeric or a string input. The default is a numeric.
port number or service name is the port on which the remote LabVIEW application is listening.
If you specify a service name, LabVIEW queries the NI Service Locator for the port number that
the server registered. The default is to use the default VI Server listener port number (3363).
To establish communication between a VI and another LabVIEW application, you must know
both the machine name and the port number or service name on which the VI Server in the
other LabVIEW application is listening. If you have more than one LabVIEW application on the
same machine, one or more of those applications may be listening on a port other than the
default VI Server listener port. In this case, make sure to supply the port number or service
name. Use the VI Server page to set the port number and service name for a VI Server or use the
Server:Port and Server:Service Name properties to set the port number or service name
programmatically.
Note The VI Server settings in the Options dialog box apply to the default application
instance, or VIs not in a project. To set VI Server settings for a project application
instance, right-click the target in the Project Explorer window.
• timeout ms (60000) —
timeout ms specifies the time, in milliseconds, that the function waits to complete and return an
error. The default value is 60,000 ms or 1 minute. A value of –1 indicates to wait indefinitely.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• application reference —
• error out —
error out contains error information. This output provides standard error out functionality.
You can use the application reference output as an input to the Property and Invoke
Nodes to get or set properties and invoke methods on the application. Using it as the
input to the Open VI Reference function lets you get references to VIs in that
application. Close the reference with the Close Reference function. If you do not close
this reference, it closes automatically after the top-level VI associated with this
function completes execution. However, it is good practice to conserve the resources
involved in maintaining the connection by closing the reference when you finish using
it.
If you use the Open Application Reference function on a remote VI Server connection,
you may receive an error that the network connection was closed by a peer. Verify that
the machine is allowed access by selecting Tools»Options»VI Server on the server
side. You also can verify the user access settings in the User access section of the VI
Server page on the server side, also located in the Options dialog box.
Returns a reference to a VI, custom control, or global variable specified by a path to the
file on disk, name string, or existing reference.
2366 ni.com
Functions
Inputs/Outputs
• type specifier VI Refnum (for type only) —
type specifier VI Refnum (for type only) determines the connector pane information and data
type of vi reference. LabVIEW ignores the actual value of this input.
If you want to use the vi reference output of this function with the Call By Reference node or the
Start Asynchronous Call node, you must wire a strictly typed VI reference to this input.
If you wire a strictly typed VI reference to this input, the connector pane of the VI specified by vi
path must match the connector pane of this input.
By default, LabVIEW uses the application instance of the calling VI. You can obtain references to
other application instances with the Open Application Reference function. If you wire a reference
to another application instance to the application reference input, vi path refers to a location in
the file system of the computer that is running that application instance.
• vi path —
vi path accepts a path to the VI that you want to reference, a string containing the name of the VI
that you want to reference, or a VI reference to the VI that you want to reference.
If you wire a path, LabVIEW searches for a VI in memory that you previously loaded from that
path on the same target. If you wire a name string, the string must match the full delimited name
of a VI in memory on that target. If a matching VI is not found in memory, LabVIEW then tries to
load the VI from that file on disk. An error occurs if LabVIEW cannot find the file.
If the path is relative, the VI interprets the path as relative to the caller VI or to the application
directory, if the caller VI is not saved.
Note
If you specify a remote application instance with application reference, the path is
interpreted on the remote machine in the context of the remote file system. The path
is expressed using the local computer's path separators, but is translated to the
remote computer's path separators when the request arrives there.
If you wire a path or you wire both VI and application references, LabVIEW waits until the user
interface is idle to load the VI from disk. If you wire a name string or a VI reference without an
application reference, LabVIEW does not need to wait until the user interface is idle, as it does
not load a VI from disk. LabVIEW will only search in memory for a VI with a specified name.
Note LabVIEW does not support the ability to open a reference to a clone VI using a
name with the Open VI Reference function. Using this function to open a reference to
a clone VI may cause LabVIEW to crash.
• options —
Option
Description
flag
Record modifications—Use this option flag when you want an asterisk (*) to appear by
0x01 the VI title when changes have been made using VI Server. The VI must be in edit mode
for LabVIEW to record the modifications.
Open templates for editing—Use this option flag to open the original .vit file. If you do
not select this option flag, LabVIEW opens a new instance of the template VI. Edits made
0x02
to an instance do not affect the original .vit file. This option flag has no effect on non-
template files.
Prompt user to save—Use this option flag to prompt the user to save changes when this
VI reference closes if all the following conditions are true:
• The referenced VI or its subVIs contain unsaved changes.
0x04 • There are no other open references to the referenced VI.
• The referenced VI is able to leave memory. A VI is able to leave memory, for example,
if no other VIs call the VI, the front panel of the VI is closed, and the VI is not a
member of an open project library, and so on.
2368 ni.com
Functions
Option
Description
flag
Prepare for reentrant run—Use this option flag when you want a reference to a reentrant
clone of the target VI, instead of the target VI itself. Reentrant clones of a VI allow you to
open multiple front panels of the same VI or to run multiple copies of the same VI in
parallel. For each reference to the target VI, LabVIEW creates a separate clone of the
target VI. This clone is not part of the pool of shared clones used by regular subVI calls.
LabVIEW ignores this flag if you wire the type specifier VI Refnum (for type only) input
because when you provide a type specifier, you can always get a reentrant clone if the
0x08 target VI is reentrant. LabVIEW returns error 1096 if the target VI is not reentrant.
Tip Use this flag in combination with the Run VI method to execute multiple
reentrant clones in parallel. Use the Start Asynchronous Call node instead of
the Run VI method to run target VIs asynchronously. In addition to providing a
simpler interface and better performance, the Start Asynchronous Call node
allows you to collect the outputs of the target VI with a corresponding Wait On
Asynchronous Call node.
Prompt to find missing subVIs—Use this option flag to prompt the user to allow LabVIEW
0x10
to search for missing subVIs of the referenced VI.
Hide loading dialog box—Prevents LabVIEW from displaying the loading dialog box
when searching for missing subVIs of the referenced VI.
0x20
Note This option flag does not affect whether LabVIEW prompts you to find
the missing VIs or not.
Enable simultaneous calls on reentrant VIs—Use this option flag when you want to use
multiple Call By Reference or Start Asynchronous Call nodes to execute clones of a
reentrant target VI in parallel, as when you use these nodes within a For Loop with
parallel loop iterations. This option flag enables parallel execution because it gives each
Call By Reference node access to the data spaces of the clone VIs. If you do not use this
option flag, calls to the same target VI execute one at a time because they must wait for
0x40 access to the same data space.
Option
Description
flag
Note LabVIEW returns error 1591 if the 0x40 option flag is not valid for the
target VI or the other included option flags.
Prepare to call and forget—Use this option flag when you want to call a target VI
asynchronously with the Start Asynchronous Call node but you do not need to know
when or what the VI returns. Do not use this option flag with 0x08 or 0x100.
0x80
Note LabVIEW returns error 1578 if you use this option flag with a reference
to a remote VI.
Prepare to call and collect—Use this option flag when you want to collect the results of
an asynchronous call to a target VI with the Wait On Asynchronous Call node. If you use
this option flag, you must include one Wait On Asynchronous Call node for every call that
you begin with a Start Asynchronous Call node to ensure that LabVIEW does not retain
0x100 any started calls in memory indefinitely. Do not use this option flag with 0x08 or 0x80.
Note LabVIEW returns error 1578 if you use this option with a reference to a
remote VI.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• password ("") —
password is the password for the VI whose reference you want to open.
Wire a password to this input if you want to edit a password-protected target VI. If you wire the
correct password, the function returns an authenticated reference to the VI. If you wire an
incorrect password to this input, the function returns an error and an invalid VI reference.
LabVIEW ignores this input if the target VI is not password-protected. If you do not wire a
password to this input and the target VI is password-protected, the Open VI Reference function
returns a valid reference, but you cannot use the reference to edit the VI.
Note You can also use a VI Server Reference to get an authenticated reference to a VI.
• vi reference —
2370 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
The Open VI Reference function prepares a VI reference for dynamic calls by the Call By
Reference node, the Start Asynchronous Call node, and the Wait On Asynchronous Call
node. Use the type specifier VI Refnum (for type only) and the options inputs to
prepare a reference for dynamic execution.
If you want to call the specified VI dynamically with the Call By Reference Node or the
Start Asynchronous Call Node, you must use appropriate data for the following
parameters:
• type specifier VI Refnum (for type only)—Wire a strictly typed VI reference to this
input.
• options—Determine whether the 0x08, 0x40, 0x80, and 0x100 option flags apply to
the way you want to call the referenced VI.
If you wire a strictly typed VI reference to the type specifier VI Refnum (for type only),
the VI specified by vi path must meet the following criteria:
• Dynamic calls to reentrant target VIs execute serially unless you specify 0x40 as
You can abort all open VI references either manually from the front panel of the VI or
by using the Abort VI method. However, VI references prepared for asynchronous
execution have important caveats depending on the options used to open the
reference:
• 0x80—A call-and-forget VI aborts only if you manually abort it from its front panel
or call the Abort VI method on it. Otherwise, the VI runs to completion, even if you
close the reference or abort the calling VI.
• 0x100—Call-and-collect VIs abort for the following reasons:
◦ You abort the VI that opened the call-and-collect VI reference. In this case,
LabVIEW aborts all running instances of the VI.
◦ You manually abort a specific instance of the VI. In this case, exactly one Wait
On Asynchronous Call node returns an error indicating that the called VI
aborted. All other Wait On Asynchronous Call nodes that are waiting on calls to
the same VI reference continue waiting.
◦ You call the Abort VI method on the call-and-collect VI reference. In this case,
LabVIEW aborts all currently running instances of the VI. A corresponding
number of Wait On Asynchronous Call nodes return errors.
After you finish using a reference that you obtain with this function, close the reference
with the Close Reference function. Explicitly closing a reference enables LabVIEW to
free the resources involved in maintaining that reference, thereby contributing to
2372 ni.com
Functions
optimal memory allocation and performance. Otherwise, LabVIEW cannot close the
reference until the VI that opened the reference finishes executing.
Note Closing a reference that was opened with the 0x80 option flag does not
abort the referenced VI.
If you want to dynamically open a VI on both the development computer and within a
stand-alone application, use a relative path for vi path.
Miscellaneous Details
• If you set the Execution:Run When Opened, Execution:Show Front Panel On Load,
or Execution:Show Front Panel On Call properties or the corresponding options in
the VI Properties dialog box of the target VI, LabVIEW ignores the settings.
• To open a new Facade VI reference, wire a FacadeVI class to type specifier VI
Refnum (for type only).
Examples
Static VI Reference
Maintains a static reference to a VI. You can configure the Static VI Reference function
to output a generic or strictly typed VI reference. After you place the Static VI Reference
function on a block diagram, double-click the function to display a file dialog box
where you can select a VI.
Inputs/Outputs
• —
The Static VI Reference function acts as a subVI and appears in the VI hierarchy of the
top-level VI. By default, the output is a generic VI reference.
You can change the output of this function to a strictly typed VI reference. Right-click
the function and select Strictly Typed VI Reference from the shortcut menu to change
the output. A red star in the upper left corner of the function icon indicates the
reference is strictly typed. The strictly typed VI reference identifies the connector pane
of the VI you are calling. You can create a strictly typed VI reference only from a VI or VI
template, not from a polymorphic VI or other non-VI file such as a global variable or
control.
Use a strictly typed VI reference if you want to call the referenced VI with the Call By
Reference node or the Start Asynchronous Call node. When you create a strictly typed
VI reference, you cannot wire vi reference to the Run VI method. You cannot use the
Run VI method to run a VI that is already reserved for execution by another VI. A strictly
typed static VI reference also reserves any subVIs when a top-level VI is reserved, thus
making it ineligible for the Run VI method. Refer to the Run VI method for more
information.
LabVIEW loads the referenced VI into memory when you load the top-level VI. When
the Static VI Reference function outputs a strictly typed VI reference, LabVIEW reserves
the referenced VI as long as the top-level VI is running. LabVIEW closes this reference
when the top-level VI is no longer in memory. You do not have to explicitly close the
reference this function returns.
2374 ni.com
Functions
Note LabVIEW does not check whether the referenced VI can compile. If the
referenced VI is broken, LabVIEW does not recognize that it is broken until
you run the top-level VI. If you execute an Open VI Reference function that
references the broken VI, you receive an error.
If you want LabVIEW to check for a broken referenced VI before you run the
top-level VI, use the referenced VI directly in the top-level VI instead of using a
Static VI Reference function by clicking the Select a VI icon or text on the
Functions palette and navigating to the VI you want to add to the block
diagram.
Closes a refnum associated with an open VI, VI object, an open application instance, or
a .NET, ActiveX or Python object.
Inputs/Outputs
• reference —
reference is the refnum associated with an open VI, VI object, an open application instance, or a
.NET or ActiveX object. reference also accepts 1D arrays of references.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• error out —
error out contains error information. This output provides standard error out functionality.
When you create a refnum to a VI, LabVIEW loads the VI into memory. The VI stays in
memory until you close the refnum and until the VI meets the following conditions:
Returns the arguments passed from the command line when LabVIEW or a LabVIEW-
built application launched. User-defined arguments start after two hyphens (--)
surrounded by spaces in the command line.
If an argument contains double quotation marks ("), this VI returns the argument
without the quotation marks.
Inputs/Outputs
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• application name —
application name returns the name of the application that launched this VI. The application can
be LabVIEW or a LabVIEW-built application.
• arguments —
arguments returns the user-defined arguments passed from the command line. User-defined
arguments start after two hyphens (--) surrounded by spaces in the command line.
• error out —
2376 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Property Node
Gets (reads) and/or sets (writes) properties of a reference. Use the property node to get
or set properties and methods on local or remote application instances, VIs, and
objects. You also can use the Property Node to access the private data of a LabVIEW
class.
The Property Node automatically adapts to the class of the object that you reference.
LabVIEW includes Property Nodes preconfigured to access XML Properties, VISA
properties, .NET properties, and ActiveX properties.
Inputs/Outputs
• reference —
reference is the refnum associated with the object for which you want to set or get properties.
If the Property Node class is Application or VI, you do not have to wire a refnum to this input. For
the Application class, the default is the current application instance. For the VI class, the default
is the VI containing the Property Node.
You also can wire a LabVIEW class to the reference input to access the private data of the
LabVIEW class.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Property —
• reference out —
• error out —
error out contains error information. This output provides standard error out functionality.
• Property —
To select the class on which to execute the property, wire the refnum to the reference
input. For example, to select the VI, Generic, or Application class, wire the VI, VI object,
or application reference to the reference input. The node adapts to the class
automatically. You also can right-click the node and select a class from the shortcut
menu.
You can wire a LabVIEW class to the reference input of a Property Node. If the LabVIEW
class has accessor VIs that you can access through a Property Node, you can read from
or write to the accessor VIs using a Property Node.
You can quickly view the implementation of a LabVIEW class property if the block
diagram of the accessor VI is available. To view the implementation of a LabVIEW class
property, right-click the property and select Open Accessor VI from the shortcut menu.
If the property is dynamic with more than one implementation, selecting this option
displays the Choose Implementation dialog box. Use this dialog box to view all
implementations of the property, or dynamic dispatch member VI, and open one or
more implementations.
Note If you do not wire the Property Node, the class property still executes
2378 ni.com
Functions
at run-time.
If the Property Node opens and returns a reference to an object, use the Close
Reference function to close the reference.
Move the cursor over terminals in the Property Node to display more information
about the property in the Context Help window. You also can right-click a property
terminal and select Help For Property from the shortcut menu, where Property is
the name of the property.
You can read or write multiple properties using a single node. However, some
properties are not readable and some are not writable. Use the Positioning tool to
resize the Property Node to add new terminals. A small direction arrow to the right of
the property indicates a property you read. A small direction arrow to the left of the
property indicates a property you write. Right-click the property and select Change to
Read or Change to Write from the shortcut menu to change the operation of the
property.
The node executes from top to bottom. The Property Node does not execute if an error
occurs before it executes, so always check for the possibility of errors. If an error
occurs in a property, LabVIEW ignores the remaining properties and returns an error. If
you right-click the Property Node and select Ignore Errors Inside Node, LabVIEW
executes the remaining properties on the Property Node. Only the first error is
returned by the Property Node. The error out cluster contains information about
which property caused the error.
Properties have a short or long name that you can change by right-clicking and
selecting Name Format from the shortcut menu. The No Names format displays only
the data type for each property.
Note You can right-click the Property Node and select Downcast to Class
from the shortcut menu to typecast a reference to a more specific class in the
inheritance hierarchy. For example, select Downcast to Class from an
Interchangeable Virtual Instruments (IVI) class driver to view the IVI specific
driver properties. This item is not supported for all class types. If Downcast
to Class is disabled, you can use the To More Specific Class and To More
Invoke Node
If the node is configured for VI Server Application class or Virtual Instrument class and
reference is unwired, reference defaults to the current Application or VI. LabVIEW
includes Invoke Nodes preconfigured to access XML methods, .NET methods, and
ActiveX methods.
Inputs/Outputs
• reference —
reference is the refnum associated with the object on which you want to invoke a method or
perform an action. If the Invoke Node class is Application or VI, you do not have to wire a refnum
to this input. For the Application class, the default is the current application instance. For the VI
class, the default is the VI containing the Invoke Node.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• input 1 —
• reference out —
• error out —
2380 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
• return value —
• output 1 —
To select the class on which to execute the method, wire the refnum to the reference
input. For example, to select the VI, Control, or Application class, wire the VI, VI object,
or application reference to reference. The node adapts to the class automatically. You
also can right-click the node and select a class from the shortcut menu.
Right-click the node and select Help For Method from the shortcut menu, where
Method is the name of the method, for more information about the method and its
parameters.
You can get (read) and set (write) the values of the method parameters. Parameters
with a white background are required inputs and the parameters with a gray
background are recommended inputs.
If the small direction arrow on the parameter is on the right, you are getting the
parameter value. If the small direction arrow on a parameter is on the left, you are
setting the parameter value. Methods have a short or long name that you can change
by right-clicking and selecting Name Format from the shortcut menu. The No Names
format displays only the data type for each method.
Note You can right-click the Invoke Node and select Downcast to Class from
the shortcut menu to typecast a reference to a more specific class in the
inheritance hierarchy. For example, select Downcast to Class from an
Interchangeable Virtual Instruments (IVI) class driver to view the IVI specific
driver properties. This item is not supported for all class types. If Downcast
to Class is disabled, you can use the To More Specific Class and To More
Generic Class functions.
If you right-click the Invoke Node and select Select Class».NET»Browse from the
shortcut menu, LabVIEW displays the Select Object From Assembly dialog box.
On the front panel or block diagram, right-click a .NET object, select Create»Invoke
Node, and select a method from the shortcut menu to invoke a method for the object.
You also can invoke .NET-specific methods for a .NET object. On the block diagram,
right-click a .NET object, select Create»Invoke Node, and select a .NET-specific
method from the shortcut menu.
ActiveX does not support 64-bit integer data types. If you wire 64-bit integer data to a
variant parameter of an ActiveX Invoke Node, LabVIEW converts the data to a double-
precision, floating-point number. If you right-click the Invoke Node and select Select
Class»ActiveX»Browse from the shortcut menu, LabVIEW displays the Select Object
From Type Library dialog box.
Call By Reference
Inputs/Outputs
• reference —
2382 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• reference out —
• error out —
error out contains error information. This output provides standard error out functionality.
Both the Call By Reference node and the subVI node call a VI. The Call By Reference
node enables you to call any VI dynamically whose connector pane matches that of the
strictly typed reference input. Use the Open VI Reference function to obtain a strictly
typed reference. A subVI node only allows you to call a specific VI that is statically
determined when you place the subVI node on the block diagram.
Interface Details
• Accessing inputs and outputs of the target VI—When you wire a strictly typed VI
reference to the reference input of the Call By Reference node, the node displays
the connector pane of the referenced VI. Wire data to the input terminals of the
connector pane to pass the data to the called VI. Use the output terminals of the
connector pane to access the data that the called VI returns.
• Changing the connector pane of a wired Call By Reference node—To force the Call
By Reference node to display a different connector pane after you change the
reference input, right-click the node and select Adapt To Reference Input from the
shortcut menu.
Execution Details
The Call By Reference node is not the best choice for dynamically calling a VI in the
following circumstances:
2384 ni.com
Functions
Inputs/Outputs
• reference —
reference is a reference to a target VI that you want to call asynchronously.
The reference must meet the following criteria:
• Be strictly typed
• Be prepared for asynchronous execution by the Open VI Reference function using either the
0x80 or 0x100 option flag. You can combine other option flags with these asynchronous
options.
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• reference out —
reference out returns reference unchanged.
• error out —
error out contains error information. This output provides standard error out functionality.
Interface Details
• Access to inputs of the target VI—When you wire a strictly typed VI reference to the
reference input of the Start Asynchronous Call node, the node displays the input
portion of the connector pane of the referenced VI. Wire data to the input terminals
of the connector pane to pass the data to the target VI.
• No access to outputs of the target VI—Because the purpose of the Start
Asynchronous Call node is to start a VI call without waiting for it to complete, the
outputs of the VI call are not available from the Start Asynchronous Call node. To
collect the outputs of the target VI, use the Wait On Asynchronous Call node.
Execution Details
• If you include 0x40 as part of the options input, VI Server properties and
methods do not modify called VI clones—If you set the 0x40 option flag when you
open a reference to a target VI, the Start Asynchronous Call node starts a call to a
clone of the referenced VI, not to the referenced VI itself. Therefore, if you call a VI
Server property or method on the original reference that the Open VI Reference
function returns, the effects of that property or method are not reflected in the VI
clone that the Start Asynchronous Call node actually calls. To perform VI Server
tasks such as opening or positioning the front panel on the VI that is actually
called, you must call the property or method within the reentrant VI itself.
• Does not require the user interface thread to be idle
Examples
Waits for an asynchronous call to a target VI to finish executing and then returns the
outputs of the target VI. To use the Wait On Asynchronous Call node on a reference,
you must include the 0x100 option flag as part of the options input of the Open VI
Reference function when you open the reference. You also must call the target VI with
the Start Asynchronous Call node.
Inputs/Outputs
• reference —
2386 ni.com
Functions
Interface Details
The interface of this node includes the following features:
• No access to inputs of the target VI—The Wait On Asynchronous Call node does
not provide access to the inputs of the target VI. You can pass inputs to the target VI
when you call it with a Start Asynchronous Call node.
• Access to outputs of the target VI—When you wire a strictly typed VI reference to
the reference input of the Wait On Asynchronous Call node, the node displays the
output portion of the connector pane of the referenced VI. Use the output
terminals of the connector pane to access the data returned by the target VI.
Execution Details
This node exhibits the following execution behaviors:
• Ability to wait for only a specified amount of time—To specify how long this node
waits for the associated asynchronous call to complete, right-click the node and
select Timeout from the shortcut menu to display the Timeout for Wait On
Asynchronous Call dialog box. Use this dialog box to specify how long the node
waits on the corresponding VI call before returning a timeout error.
• Ability to wait on multiple calls to the same VI reference—If you pass the same VI
reference to multiple Start Asynchronous Call nodes, you cannot predict which
Wait On Asynchronous Call node will detect the completion of each call. You can
take precautions to match a Wait On Asynchronous Call Node to a specific VI call if
necessary.
Examples
For example, if Class A inherits from Class B, a variable of type B can hold a value of
type A. You can use the function to downcast from type B to type A. If the typecast is
invalid, this function returns an error at run time.
You can use the To More Specific Class function for casting any class hierarchy in
LabVIEW, including VI Server refnums, .NET/ActiveX refnums, and LabVIEW classes or
interfaces.
2388 ni.com
Functions
Inputs/Outputs
• target class —
target class is the class or interface to which you want to downcast reference.
You can wire a class specifier constant or any wire of the target type to this input.
• reference —
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
If the target class is incompatible with the reference, the function returns an error and specific
class reference is Not A Refnum.
• error out —
error out contains error information. This output provides standard error out functionality.
You can use the To More Specific Class function to manipulate the properties or
methods from a more specific class or interface than that of the reference. For
example, if you build an array of references to boolean, numeric, and string controls,
LabVIEW casts these references to the more generic Control class because an array can
contain only one data type, and each of these controls is a member of the Control
class. If you then want to manipulate the properties for only the boolean controls in
the array, you can create a reference to the array and use the To More Specific Class
function to downcast the array reference to the Boolean class.
Wire a VI refnum to reference and a Facade VI refnum to target class to downcast from
VI to Facade VI.
You also can use data value references to downcast classes. The To More Specific Class
function waits to execute until the reference is available for downcast. To downcast a
class or interface, wire the data value reference of the target class or interface to target
class.
Related Information
Examples
For example, if Class A inherits from Class B, the function upcasts a variable of type A
to a variable of type B.
You can use the To More Generic Class function for casting any class hierarchy in
LabVIEW, including VI Server refnums, .NET/ActiveX refnums, and LabVIEW classes or
interfaces.
Inputs/Outputs
• target class —
target class is the class or interface to which you want to upcast reference.
You can wire a class specifier constant or any wire of the target type to this input.
• reference —
2390 ni.com
Functions
This function does not have error in and error out parameters because LabVIEW can
determine at edit time whether you have wired the reference to a compatible target
class. If you wire the reference to an incompatible target class, the wire breaks and
you receive a Class conflict error.
You can use the To More Generic Class function to manipulate the properties or
methods from a more generic class or interface than that of the reference. For
example, you can wire an enum control reference to the To More Generic Class
function to upcast the reference to the Numeric class. You then can manipulate the
Numeric class properties of the control, but you no longer can access the specific
properties of the Enum class.
Wire a Facade VI refnum to reference and a VI refnum to target class to upcast from
Facade VI to VI.
Related Information
Selects the class of the output. You also can create a class specifier constant from a
control refnum control or terminal.
You can use the Class Browser window to create a class specifier constant for some VI
Server classes.
Use this constant with the To More Specific Class or To More Generic Class functions.
Since the value of the constant is always Not A Refnum, you cannot wire this
constant to the input of a Property Node.
VI Server Reference
Returns a static VI reference to the current VI by default. You can reconfigure this
reference to return a reference to the current application, to a control or indicator in
the VI, or to a pane by clicking on the block diagram icon and choosing from the
shortcut menu. You can use this reference to access the properties and methods for
the associated VI, application, control, indicator, or pane. The VI Server Reference
always returns a fully authenticated reference. Use caution when passing references to
other VIs if you are concerned about password security.
You also can right-click a front panel object or terminal and select Create»Reference
from the shortcut menu to create a VI Server reference.
To link the reference constant to the current application, VI, or a pane of the current VI,
click the VI Server reference on the block diagram and select This Application, This VI,
or Pane. You also can right-click the VI Server reference and select Link to»This
Application, Link to»This VI, or Link to»Pane from the shortcut menu. To link the
reference to a control or indicator within the VI, click or right-click the reference in the
same way and then select the control or indicator to which you want to link from the
shortcut menu.
Use a Property Node or Invoke Node to access the properties and methods for the
control or indicator using a VI Server reference.
If the VI Server reference is associated with a control or indicator, you can right-click
the VI Server reference and select Find Control or Find Indicator from the shortcut
menu to find the associated control or indicator. You also can right-click and select
Find»References to find the associated references. Although you can use VI Server
references with Property Nodes to pass data, you can achieve better performance
through other ways. Try wiring the data directly or using local or global variables
instead before using VI Server references to pass data.
Note If you place a VI Server reference on a Facade VI and select This VI, the
2392 ni.com
Functions
Inputs/Outputs
• This VI —
Examples
Returns the chain of callers from the current VI to the top-level VI. Element 0 of the call
chain array contains the name of the lowest VI in the call chain. Subsequent elements
are callers of the lower VIs in the call chain. The last element of the call chain array is
the name of the top-level VI.
Inputs/Outputs
• call chain —
call chain is the chain of callers from the current VI to the top-level VI.
Returns drag data from the current drag and drop operation. Only use this function
when it is necessary to access the drag data, not just to examine the data type. If a drag
and drop operation is not in progress, LabVIEW returns an error. If the data requested
is unavailable, LabVIEW returns an error.
Inputs/Outputs
• data name —
data name is the user-defined name of the drag data that you want to retrieve. You also can use
the built-in LabVIEW data types.
• type —
type is the data type of the drag data you want to retrieve.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data —
data is the drag data returned from LabVIEW. data can adapt to any data type.
• error out —
2394 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Examples
Stop Function
Stops the VI in which it executes, just as if you clicked the Abort Execution button on
the toolbar. Before you call this function with a TRUE input, be sure to complete all
final tasks for the VI first, such as closing files, setting safe values for devices being
controlled, and so on.
If you wired the input, stop occurs only if the input value is TRUE. The default is to stop
as soon as the node that is currently executing finishes.
Inputs/Outputs
• stop? (T) —
If you wire an error cluster to stop? and an error occurs, the error cluster passes a TRUE value to
the function.
If you need to abort execution of all VIs in a hierarchy from the block diagram, you can
use this function, but you must use it with caution. If you put this function in a subVI,
you should make its behavior clear to other users of the VI because this function
causes their VI hierarchies to abort execution.
In general, avoid using this function when you have a built-in termination protocol in a
VI. For example, I/O operations should be performed in While Loops so that the VI can
terminate the loop on an I/O error. Also, consider using a front panel stop button
Boolean control to terminate the loop at the request of the user rather than using this
function.
Stops all executing VIs and ends the current instance of LabVIEW.
This function shuts down only LabVIEW. The function does not affect other
applications. The function stops all running VIs the same way the Stop function does. If
there is any unsaved work in memory, you will be prompted to save. Selecting Cancel
will abort the quit.
Inputs/Outputs
• quit? (T) —
If you wire an error cluster to quit? and an error occurs, the error cluster passes a TRUE value to
the function.
Sets values to the controls for the VI you reference. This function offers better
performance than VI Server objects that write to the terminal of a front panel control,
such as using the Value property in the Control class. However, this function requires
more advanced application design than other methods for setting control values.
2396 ni.com
Functions
Inputs/Outputs
• VI Refnum —
VI Refnum specifies a reference to the VI for which you want to set multiple control values. You
can wire a strict or non-strict reference to this input. The default is a reference to the current VI.
• control indexes —
control indexes specifies the indexes of the front panel controls for which you want to set
values.
Use the Control Index property in the Control class to retrieve control indexes.
• data values —
data values specifies the values to write to the controls. The default is a variant, but you also can
specify the data type for the values you want to write to the control. To specify a single control,
wire a scalar index to control indexes and wire a single value to data values.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
The Set Control Values by Index function requires that the VI for which you want to set
control values is running or in run mode. Furthermore, the controls for which you want
to set values must have terminals on the block diagram.
This function iterates over the length of the shorter of the two arrays you wire to
control indexes and data values. The function attempts to set all values and does not
stop on the first error. If an error occurs for multiple indices or values, LabVIEW reports
only the first error.
Use the following recommendations to obtain the best performance when you set
control values with this function:
Gets values from the controls for the VI you reference. This function offers better
performance than VI Server objects that read from the terminal of a front panel
control, such as using the Value property in the Control class. However, this function
requires more advanced application design than other methods for getting control
values.
Inputs/Outputs
• VI Refnum —
VI Refnum specifies a reference to the VI from which you want to get control values. You can wire
a strict or non-strict reference to this input. The default is a reference to the current VI.
• control indexes —
control indexes specifies an array of indices of front panel controls for which you want to get
values.
Use the Control Index property in the Control class to retrieve control indexes.
• error in (no error) —
2398 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• data values —
• error out —
error out contains error information. This output provides standard error out functionality.
The Get Control Values by Index function requires that the VI from which you want to
get control values is running or in run mode. Furthermore, the controls for which you
want to get values must have terminals on the block diagram.
Use the following recommendations to obtain the best performance when you get
control values with this function:
Palette Editing
You can use the Palette Editing VIs to edit the Controls or Functions palette set
programmatically.
Note The LabVIEW Run-Time Engine does not support the Palette Editing
VIs. Error -4406 occurs if you call the Palette Editing VIs in the LabVIEW
Run-Time Engine.
Palette
Description
Object
Write
Writes palette data to a palette file (.mnu).
Palette
Read
Extracts data from a palette file (.mnu).
Palette
Write Palette
Inputs/Outputs
• application reference —
application reference is a reference to a target. The default is the local computer. If the target is
not the local computer, you must wire the application reference input to edit the Controls and
2400 ni.com
Functions
Create a project with the target you want to reference. Use the Project:Projects[] property to
obtain the target reference from the project. When you have the target reference, use the
Application property to obtain the application reference.
• palette path —
palette path is the path, including the filename, of the palette file (.mnu). The filename must
have a.mnu extension.
• palette type —
palette type determines whether the palette file (.mnu) contains data for the Controls palette or
Functions palette.
-2 Controls
-1 Functions
• palette data —
palette data contains the data this VI writes to the palette file (.mnu).
• display name —
If the selected palette format is Category (Standard) or Category (Icons and Text) and you
move the cursor over the palette icon, display name appears in a tip strip above the palette
icon. If the selected palette format is Icons or Icons and Text and you move the cursor over
the palette icon, display name appears at the top of the palette. If the selected palette
format is Text or Tree, display name appears as text to identify the palette.
• view format —
view format specifies the appearance of the palette items within the selected palette view.
You can select Icons, Text, or Icons and Text.
0 Icons
1 Text
• palette width —
palette width specifies how many palette items can fit in one palette row. palette width
must be greater than or equal to 0. If palette width is less than 0, the VI returns an error.
• items —
• item path —
item path is the path to the palette item or subpalette. item path accepts all type of
paths. To create an empty slot on the palette, leave item path empty. If item path is
empty, LabVIEW ignores any additional data in the items cluster.
An item is not added to the palette if the item does not exist on your disk. If you still
want to add the item, first ensure that the path provided is valid, and then append
<<file not found>> to the end of the item path.
• library path —
library path (.lvlib) is the path of the library that contains the palette item.
If the library does not exist on your disk, the item is added as a non-library item. If you
still want to add the library item, first ensure that the path provided is valid, and then
append <<file not found>> to the end of the library path.
use default lvlib palette configures the VI to use the default project library menu.
LabVIEW ignores this option unless library path (.lvlib) contains a valid path.
• short name —
short name is the abbreviated name of the palette item or subpalette. If the selected
view is Category (Icons and Text) or Icons and Text, short name appears below the
palette item or subpalette.
2402 ni.com
Functions
• place VI contents —
place VI contents places the VI contents on the block diagram if TRUE. If place VI
contents is FALSE, this VI places only the VI icon on the block diagram.
hide synchronized item hides the synchronized item if TRUE. hide synchronized item
is valid only if you synchronize this palette with a directory using the synchronize with
directory input.
reserve spot for synch item reserves a spot on the palette for the synchronized item.
This input is valid only if you synchronize this palette with a directory using the
synchronize with directory input.
256 color icon is the 8-bit color icon that signifies the palette item or subpalette.
B&W color icon is the black-and-white icon that signifies the palette item or subpalette.
• help information —
help information determines the help file to which the Context Help window links.
• help tag —
help tag contains the HTML filename or index keyword of the file you want to link to
from the Context Help window.
help file path contains the path or symbolic path to the file you want to link to from the
Context Help window. help file path is either an HTML file or a compiled help file.
• palette description —
palette description contains the text that appears in the Context Help window if you move
the cursor over the subpalette icon in the Controls or Functions palette or if you move the
cursor over an open area of the subpalette.
• synchronize information —
synchronize information contains the synchronization information for the palette file
(.mnu).
• —
synchronize with directory indicates whether the palette file (.mnu) synchronizes with
a directory.
synchronize directory path accepts any type of path when writing the palette file. This
VI ignores synchronize directory path if synchronize with directory is FALSE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
2404 ni.com
Functions
If you have not customized the data in the palette file, use the Read Palette VI to extract
data to the palette file. After you edit the palette data, use the Refresh Palettes method
to update the palettes programmatically.
Note LabVIEW loads a separate palette set for each target. If you write to a
palette set for a specific target without wiring the correct reference to the
target using application reference, the path this VI stores in the palette file
might be incorrect.
Read Palette
Use the Write Palette VI to write data to the palette file. After you edit the palette data,
use the Refresh Palettes method to update the palettes programmatically.
Inputs/Outputs
• application reference —
application reference is a reference to a target. The default is the local computer. If the target is
not the local computer, you must wire the application reference input to edit the Controls and
Functions palette set.
Create a project with the target you want to reference. Use the Project:Projects[] property to
obtain the target reference from the project. When you have the target reference, use the
Application property to obtain the application reference.
• palette path —
palette path is the path, including the filename, of the palette file (.mnu). The filename must
have a.mnu extension.
• palette type —
palette type determines whether the palette file (.mnu) contains data for the Controls palette or
Functions palette.
-2 Controls
-1 Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
duplicate palette path is the path of the palette file (.mnu) from which the VI reads data.
• palette data —
palette data contains the data the VI reads from the palette file (.mnu).
• display name —
If the palette view format is Category (Standard) or Category (Icons and Text) and you
move the cursor over the palette icon, display name appears in a tip strip above the palette
icon. If the selected palette view format is Icons or Icons and Text and you move the cursor
over the palette icon, display name appears at the top of the palette. If the selected palette
view format is Text or Tree, display name appears as text to identify the palette.
• view format —
view format specifies the appearance of the palette items within the selected palette view.
0 Icons
1 Text
2 Icons and Text
• palette width —
palette width specifies how many palette items can fit in one palette row. palette width
2406 ni.com
Functions
does not have a maximum value. If palette width is less than 0, the VI returns an error.
• items —
• item path —
item path is the path to the palette item or subpalette. item path returns an absolute
path when the VI reads the palette file.
If the item does not exist on your disk, the path returns appended with <<file not
found>>. When the full path is not available, the path returns the file name appended
with <<file not found>>. If the palette links to a directory, item path becomes
Folder Name/dir.mnu. If dir.mnu does not exist on your disk, the path returns
appended with <<file not found>>. If the palette item is an empty slot, item
path is empty.
If the palette contains functions or built-in LabVIEW controls and indicators, item path
returns a generic message in the form BUILT_IN_FUNC_**_**_**_***. To
prevent undefined behavior, do not manipulate the generic message the VI returns.
• library path —
library path (.lvlib) is the path of the library that contains the palette item. If the library
item does not exist on your disk, the path returns appended with <<file not
found>>.
use default lvlib palette configures the VI to use the default project library menu.
LabVIEW ignores this option unless library path (.lvlib) contains a valid path.
• short name —
short name is the abbreviated name of the palette item or subpalette. If the selected
view is Category (Icons and Text) or Icons and Text, short name appears below the
palette item or subpalette. If the item does not have an abbreviated name, the VI
returns an empty string.
• place VI contents —
place VI contents places the contents of the VI on the block diagram if TRUE. If place VI
contents is FALSE, this VI places only the VI icon on the block diagram.
hide synchronized item hides the synchronized item if TRUE. If you use the Edit
Controls and Functions Palette Set or the Palette Editing VIs to create a palette file,
then hide synchronized item returns FALSE unless synchronize with directory is TRUE.
reserve spot for synch item reserves a spot on the palette for the synchronized item.
If you use the Edit Controls and Functions Palette Set or the Palette Editing VIs to create
a palette file, then reserve spot for synch item returns FALSE unless synchronize with
directory is TRUE.
256 color icon is the 8-bit color icon that represents the palette item or subpalette.
B&W color icon is the black-and-white icon that represents the palette item or subpalette.
• help information —
help information determines the help file to which the Context Help window links.
• help tag —
help tag contains the HTML filename or index keyword of the file you want to link to
from the Context Help window.
2408 ni.com
Functions
help file path contains the path or symbolic path to the file you want to link to from the
Context Help window. help file path is either an HTML file or a compiled help file.
• palette description —
palette description contains the text that appears in the Context Help window if you move
the cursor over the subpalette icon in the Controls or Functions palette or if you move the
cursor over an open area of the subpalette.
• synchronize information —
synchronize information contains the synchronization information for the palette file
(.mnu).
• —
synchronize with directory indicates whether the palette file (.mnu) synchronizes with
a directory.
synchronize directory path returns an absolute path when this VI reads the palette file.
This VI ignores synchronize directory path if synchronize with directory is FALSE.
• error out —
error out contains error information. This output provides standard error out functionality.
If you read from a palette set for a specific target without wiring the correct reference
to the target using the application reference input, the paths the VI returns might be
incorrect.
Examples
Refresh Palettes
This method is similar to the Save Changes button on the Edit Controls and Functions
Palette Set dialog box.
Inputs/Outputs
• reference —
• Palettes:Refresh —
• reference out —
• error out —
• Palettes:Refresh —
CPU Information
2410 ni.com
Functions
Inputs/Outputs
• # of logical processors —
Note This function returns the total number of logical processors, which might be
different from the number currently available to LabVIEW. For example, this function
includes disabled processors in # of logical processors.
• # of packages —
# of logical processors per core is the number of processing units each core contains.
National Instruments recommends that you use the CPU Information function rather
than these properties to return information from the local computer.
Inputs/Outputs
• # of cache levels —
2412 ni.com
Functions
Inputs/Outputs
• cache level (2) —
cache level is the cache level for which to return information. The default is 2.
total cache size (in bytes) is the size of the cache for the cache level you specify.
cache entry size (in bytes) is the size of entries for the cache level you specify.
You can use the Application:Target:Data Cache Entry Sizes and Application:Target:Data
Cache Sizes properties to programmatically obtain information from a LabVIEW
application running on a remote computer or target about the system on which the
application runs.
National Instruments recommends that you use the Data Cache Size function rather
than these properties to return information from the local computer.
Memory Control
Use the Memory Control VIs and functions to improve LabVIEW memory performance.
Palette
Description
Object
New Data
Value Creates a reference to data that you can use to transfer and access the data in a
Reference serialized way.
Function
Delete Data
Removes LabVIEW access to the data that the data value reference or the external
Value
data value reference points to. This function deletes the reference but leaves the data
Reference
intact. Memory leakage might occur if you do not delete the reference.
Function
Palette
Description
Object
Get Memory Returns the amount of physical memory that the LabVIEW process uses. This VI also
Status returns the status of system-wide memory usage.
Swap Values Places the value of the y input into the x' output and the value of the x input into the
Function y' output without allocating memory to perform the operation.
Places the value of Input into a new memory location and returns the value in
Always Copy
Output. Use this function to control the outcome of the LabVIEW compiler buffer
Function
allocation process.
Request
Deallocation Deallocates unused memory after the VI that contains this function runs.
Function
Creates a reference to data that you can use to transfer and access the data in a
serialized way.
Inputs/Outputs
• data value —
data value is the data you want the reference to point to. Use the In Place Element structure to
alter the data and the Delete Data Value Reference function to recover the data.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
2414 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Data value references contain the same data type of the data they point to. Do not type
cast data value references. However, you can upcast or downcast data value references
that contain LabVIEW classes.
Removes LabVIEW access to the data that the data value reference or the external data
value reference points to. This function deletes the reference but leaves the data
intact. Memory leakage might occur if you do not delete the reference.
Note You must use this function to delete an external data value reference
and release the associated memory to the device driver that supports and
provides the reference; otherwise, the hardware does not have access to that
buffer space.
Inputs/Outputs
• data value reference —
data value reference points to the data you want to recover. LabVIEW deletes this reference after
you recover the data. Use the New Data Value Reference function to create a data value
reference.
error in describes error conditions that occur before this node runs. With the following
exception, this input provides standard error in functionality.
This node runs normally even if an error occurred before this node runs.
• data value —
• error out —
error out contains error information. This output provides standard error out functionality.
To avoid data copies, leave the data value output of this function unwired when
working with external data value references.
Returns the amount of physical memory that the LabVIEW process uses. This VI also
returns the status of system-wide memory usage.
Inputs/Outputs
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
total physical memory returns the total amount of physical memory, in kilobytes, on the
system.
memory allocated for LabVIEW returns the memory size, in kilobytes, allocated for the LabVIEW
process.
free physical memory returns the amount of physical memory, in kilobytes, on the system that
is not used.
2416 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Places the value of the y input into the x' output and the value of the x input into the y'
output without allocating memory to perform the operation.
Inputs/Outputs
• y—
• ?(T) —
?(T) specifies whether you want to swap the values of the x and y inputs.
• x—
• y' —
• x' —
Because this function swaps values without copying data from one place to another,
the function does not consume memory to complete the swap operation. National
Instruments recommends that you use this function to increase value swapping speed
and improve memory utilization efficiency, especially when the data size is large. Visit
ni.com/info and enter the Info Code extnfw for more information about using this
function.
Places the value of Input into a new memory location and returns the value in Output.
Use this function to control the outcome of the LabVIEW compiler buffer allocation
process.
Use this function when you want to control the LabVIEW compiler in order to produce
a different result regarding its buffer allocations.
Inputs/Outputs
• Input —
• Output —
Output returns the data from Input that LabVIEW copied to a new location in memory.
Deallocates unused memory after the VI that contains this function runs.
Use this function only for advanced performance optimizations. Deallocating unused
memory can improve performance in some cases. However, aggressively deallocating
memory can cause LabVIEW to reallocate space repeatedly rather than reusing an
allocation. Use this function if your VI allocates a large amount of data but never
reuses that allocation.
2418 ni.com
Functions
Inputs/Outputs
• flag —
If flag is TRUE, this function deallocates memory after the VI that contains this function runs.
When a top-level VI calls a subVI, LabVIEW allocates a data space of memory in which
that subVI runs. When the subVI finishes running, LabVIEW usually does not deallocate
the data space until the top-level VI finishes running or until the entire application
stops, which can result in out-of-memory conditions and degradation of performance.
Use this function to deallocate the data space immediately after the VI completes
execution.
Place the Request Deallocation function in the subVI you want to deallocate memory
for. When you set the flag Boolean input to TRUE, LabVIEW reduces memory usage by
deallocating the data space for the subVI.
VI Scripting
You can use the VI Scripting VI and functions to create, edit, and run VIs
programmatically.
Palette
Description
Object
New VI
Creates and returns a reference to a new VI.
Function
Open VI
Object
Opens a reference to the object whose label you specify with the name/order input.
Reference
Function
New VI Adds a new VI object to the front panel or block diagram of the VI specified by owner
Object refnum and returns a reference to the new object. VI objects include any controls,
Palette
Description
Object
nodes, calls to subVIs, and user-defined controls that you can create in the LabVIEW
Function
editing environment.
New VI
This cluster provides a way to define the location input of the New VI Object function
Object
as an offset from another object. Refer to the New VI Object Location Argument
Offset
example VI in the labview\examples\Application Control\VI
From
Scripting\Creating Objects directory for a visual comparison of the three
Referenced
acceptable types of arguments for the location input.
Object
Searches a target for objects of a particular type and returns an array of references to
Traverse
those objects. The target can be a front panel, a block diagram, or any object that can
for
contain other objects, such as a For Loop, a cluster, or a user-defined control. This VI
GObjects
also recursively finds objects nested within other container objects.
Get
Returns a string containing the label text of the object you specify and a reference to
GObject
that label. This VI returns the same value as the Label.Text property.
Label
Returns an array of class names, in descending order of inheritance, from the top-level
Get Class
class name to the class name you specify. For example, if you specify WhileLoop in
Hierarchy
Class Name this VI returns the array [Generic, Gobject, Node,
from Class
Structure, Loop, WhileLoop]. This VI works for any valid class name,
Name
regardless of whether you have scripting or private functionality turned on or off.
New VI Function
2420 ni.com
Functions
Inputs/Outputs
• type specifier VI Refnum (for type only) —
type specifier VI Refnum (for type only) determines the data type of the new VI that this
function returns in vi refnum. If you wire a reference to a pre-existing VI to this parameter,
LabVIEW assigns the data type of that VI to the new VI. Note that LabVIEW does not copy the
contents of the pre-existing VI into the new VI.
If you do not wire data to this input, LabVIEW returns a Generic VI reference for vi refnum.
• options —
options is a bit set that specifies two optional characteristics of the new VI reference that this
function creates. The default is 0x0.
Records VI Server modifications to the new VI created by this function. When you modify
the new VI using VI Server properties or methods, an asterisk (*) appears by the title of the
0x01
VI in its title bar, the list of open VIs displayed in the Window menu, and the All Windows
dialog box. The VI must be in edit mode for LabVIEW to record the modifications.
Prompts user at close. When you attempt to close vi refnum after making changes, LabVIEW
0x04
prompts you to save before closing the VI.
• application refnum —
application refnum is a reference to the LabVIEW application instance in which you want this
function to create the new VI. By default, the function creates the new VI in the same application
instance that called the New VI function. If you wire a reference to a remote application instance
to application refnum, LabVIEW creates the new VI in the remote application instance.
• template —
template is a path to a template VI whose contents you want LabVIEW to copy into the new VI
that this function creates.
When you create a new VI from a template by wiring a path to the template input, you avoid the
need to create each template object individually in the new VI. You can modify small parts of the
code that was copied from the template into the new VI to create a customized version of the
template. To make modifications, you must obtain references to objects in the copied code.
Then you can set properties or invoke methods to change the objects.
vi type specifies the exact type of VI that this function returns as vi refnum. vi type must be at
least as specific as type specifier VI Refnum (for type only).
0 invalid VI type
1 Standard VI (default)
2 Control VI
3 Global VI
4 Polymorphic VI
5 Configuration VI
6 SubSystem
7 Facade VI
8 Method VI
9 Statechart Diagram VI
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• password —
password is the password for the VI specified by the template parameter. If template is not
password protected, LabVIEW ignores password. If template is password protected but you do
not wire password, LabVIEW copies only the parts of the template VI that are not password
protected into the new VI.
• vi refnum —
vi refnum is a reference to the newly created VI. If LabVIEW fails to create a new VI, vi refnum
returns Not A Refnum.
• error out —
error out contains error information. This output provides standard error out functionality.
By default, this function does not show the front panel or block diagram of the VI that
it creates. Although you can inspect or modify the new VI without showing the front
panel or block diagram, you can use the following VI properties and method to display
and position the new VI:
2422 ni.com
Functions
• Front Panel:Open
• Front Panel Window:Window Bounds
• Block Diagram Window:Open
• Block Diagram Window:Window Bounds
• Block Diagram Window:Origin
Opens a reference to the object whose label you specify with the name/order input.
Inputs/Outputs
• vi object class —
vi object class indicates the class of object whose reference you wish to obtain. To specify a class
type, wire a class specifier constant to this input. A class specifier constant displays a
hierarchical menu that contains the classes of all of the objects in LabVIEW. You can navigate this
hierarchy to find the class of the object you need to reference.
This function also uses vi object class to determine the type of reference returned by object
refnum. For example, if you wire a Boolean-typed Class Specifier Constant to vi object class, the
returned object refnum changes to a Boolean reference.
• owner refnum —
owner refnum is a reference to the owner of the object whose reference you want to obtain. The
owner must be a front panel, a cluster, a block diagram, or a structure diagram. For example, to
obtain a reference for a control on the front panel, wire a reference to the front panel to owner
refnum. Likewise, to obtain a reference for an object inside a For Loop, wire a reference to the
diagram of the For Loop to owner refnum.
• name/order —
name/order indicates the object whose reference you want to obtain. name/order must match
the label of the desired object. If you are obtaining the reference for an object within a cluster,
you can use an array of strings that contain the names of the container hierarchy.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• object refnum —
object refnum returns a reference to the object that matches both the class specified by vi
object class and the label specified by name/order. This reference is of the class specified by vi
object class.
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Open VI Object Reference function to obtain a reference to any labeled object
in a target VI. To obtain a reference to an object whose label is not known, you must
navigate to the object from a known reference or use the Traverse for GObjects VI
instead.
Note You cannot use the Open VI Object Reference function to open a
reference to a pane on the front panel. Instead, use the Traverse for GObjects
VI or the Pane[] property to return an array of references to all the panes on
the front panel, and then find the appropriate reference by the name of the
pane.
Block diagram objects do not display a label by default. Because the Open VI Object
Reference function uses the label to locate the desired object, you must display the
label of an object at least once before the function can find the object. You can display
the label of any block diagram object by selecting Visible Items»Label from the
shortcut menu of the object.
If two objects in the target code have the same label, Open VI Object Reference
returns a reference to only one of the two objects. To predictably obtain the desired
object reference, use unique labels for objects of interest in target code.
The Open VI Object Reference function does not search nested objects within the
owner. For example, if you specify a block diagram to be the owner of the object you
2424 ni.com
Functions
want to find, the Open VI Object Reference function does not search inside of For
Loops on that block diagram. To use the Open VI Object Reference function to obtain a
reference to an object within a For Loop, you must specify the relevant For Loop to be
the owner of the object.
Adds a new VI object to the front panel or block diagram of the VI specified by owner
refnum and returns a reference to the new object. VI objects include any controls,
nodes, calls to subVIs, and user-defined controls that you can create in the LabVIEW
editing environment.
Inputs/Outputs
• auto wire? (F) —
auto wire? specifies whether LabVIEW attempts to automatically wire the terminals of the new
object with compatible terminals of the source object wired to location. National Instruments
recommends that you do not use this input. Instead, use VI Scripting to wire the new object to
other objects precisely.
• vi object class —
vi object class indicates the class of the object you want to create. To specify a class, wire a class
specifier constant to this input. A class specifier constant displays a hierarchical menu that
contains the classes of all of the objects in LabVIEW. To identify which class to use for a specific
object, explore the anatomy of common VI objects.
• owner refnum —
owner refnum is a reference to the container into which you want to place the new object. The
most common containers are VIs, clusters, and the diagrams of loops and other structures. For
example, to add a new control to the front panel of a VI, wire a reference to either the relevant VI
or the front panel of the relevant VI to owner refnum. To place a new object inside of a For Loop,
wire a reference to the diagram of the relevant For Loop to owner refnum.
• style —
style indicates the exact kind of object to create. When you create a constant from the style
terminal, you obtain a list of all the objects that are native to LabVIEW. Select a value for style
that is compatible with the class specified by vi object class. For example, you can select the
Round Push Button style if viobject class is Boolean, and you can select the Add style if viobject
class is Function. However, LabVIEW returns a run time error if you select the Add style when
viobject class is Boolean because this pairing is not compatible.
• location —
location specifies where the function places the new object within the container referenced by
owner refnum. The location terminal accepts the following three kinds of arguments:
• Pair of x, y coordinates—LabVIEW places the new object at the given coordinates in relation
to the origin of the owner. To quickly create this type of cluster, create a constant from the
location terminal.
• Reference to a pre-existing object—LabVIEW places the new object next to the referenced
object.
• New VI Object Offset From Referenced Object cluster—LabVIEW places the new object a
specified distance from the object referenced by this cluster.
Refer to the New VI Object Location Argument VI in the Examples section of this topic for a visual
comparison of these argument types.
• Horizontal —
• Vertical —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• path —
2426 ni.com
Functions
path is a path to a subVI or pre-existing custom control. Wire data to path only when you want to
add one of these objects to the owner.
• bounds —
bounds specifies the width and height of the new object if the new object is resizable. LabVIEW
ignores bounds for fixed-sized objects.
• Width —
• Height —
• object refnum —
object refnum returns a reference to the new object created by this function. The reference is of
the class specified by vi object class.
• error out —
error out contains error information. This output provides standard error out functionality.
This cluster provides a way to define the location input of the New VI Object function
as an offset from another object. Refer to the New VI Object Location Argument
example VI in the labview\examples\Application Control\VI
Scripting\Creating Objects directory for a visual comparison of the three
acceptable types of arguments for the location input.
You must initialize the Refnum element to a reference to a pre-existing object by using
the Bundle or Bundle By Name function.
Refnum is a reference to the object next to which you want the New VI Object function to
place a new object.
Relative Direction is the direction relative to the object referenced by Refnum where you
want the new object to be placed.
0 Right
1 Left
2 Top
3 Bottom
4 Top Right
5 Top Left
6 Bottom Right
7 Bottom Left
Point32 indicates the offset of the new object in the given direction from the referenced
object.
Horizontal is the horizontal offset from the location specified by Relative Direction.
Vertical is the vertical offset from the location specified by Relative Direction.
The New VI Object Offset From Referenced Object cluster contains a reference to
another object, an enumerated list of relative directions from that object, and a sub-
2428 ni.com
Functions
cluster of offset coordinates. Together, the relative direction and offset specify where
the New VI Object function places the new object in relation to the referenced object.
Examples
Searches a target for objects of a particular type and returns an array of references to
those objects. The target can be a front panel, a block diagram, or any object that can
contain other objects, such as a For Loop, a cluster, or a user-defined control. This VI
also recursively finds objects nested within other container objects.
Inputs/Outputs
• Other Refnum —
Other Refnum is a reference to the container object you want to search if you specify the
Traverse Target as Other. The reference must be a VI Server class that inherits from GObject,
FlatSequenceFrame, or Page. LabVIEW ignores this input if Traverse Target is either FP or BD.
• Traverse Target —
Traverse Target indicates the type of container object that you want to traverse. The following
table contains the possible values for this input:
0 FP—Front panel
1 BD—Block diagram
2 Other—Container objects other than the front panel or block diagram. These include structure
• VI Refnum —
VI Refnum is the reference to the VI you want to traverse. LabVIEW uses this input when Traverse
Target is either FP or BD. LabVIEW ignores this input if you wire a reference to a specific
container object to Other Refnum.
• Class Name —
Class Name is the VI Server class name of the object for which you are searching.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
Traverse Generated Code specifies whether to traverse code that LabVIEW generates in the
process of implementing certain functions. The default is FALSE.
• dup VI Refnum —
• References —
References is an array of GObject references to the objects this VI finds. Use the To More Specific
Class function to downcast each reference if necessary.
• # of Refs —
• error out —
error out contains error information. This output provides standard error out functionality.
To use this VI, specify a Traverse Target of BD for block diagram or FP for front panel
and the Class Name of the object you want to find. To traverse a specific container
object instead of a front panel or block diagram, specify the target as Other and wire
2430 ni.com
Functions
Examples
Returns a string containing the label text of the object you specify and a reference to
that label. This VI returns the same value as the Label.Text property.
Inputs/Outputs
• GObject —
GObject specifies the reference to the object whose label you want to get.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• dup GObject —
dup GObject returns the same GObject reference you wire to GObject.
• Object Label —
Object Label returns a string that contains the label text of the object you specify in GObject.
This parameter returns the same value as the Label.Text property.
• error out —
error out contains error information. This output provides standard error out functionality.
• Label Reference —
Label Reference returns a reference to the label of the object you specify in GObject.
This VI gets the label text of an object without requiring you to manually cast the
GObject reference to the proper subclass. Instead, this VI attempts to cast the GObject
reference to different LabVIEW subclasses until it casts to the correct one. Once the VI
casts the GObject reference to the proper subclass, the VI returns the Label text and
label reference values for that object.
Returns an array of class names, in descending order of inheritance, from the top-level
class name to the class name you specify. For example, if you specify WhileLoop in
Class Name this VI returns the array [Generic, Gobject, Node,
Structure, Loop, WhileLoop]. This VI works for any valid class name,
regardless of whether you have scripting or private functionality turned on or off.
This VI works on any class name that you can select in a Class Specifier Constant,
which includes anything under the VI Server class hierarchy except for Application and
VI.
Inputs/Outputs
• Class Name —
Class Name is the VI Server class name of the object for which you want to get a class hierarchy.
2432 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Class Hierarchy —
Class Hierarchy returns an array of class names, in descending order of inheritance, from the
top-level class name to the class name you specify. For example, if you specify WhileLoop in
Class Name this VI returns the array [Generic, Gobject, Node, Structure, Loop,
WhileLoop].
• error out —
error out contains error information. This output provides standard error out functionality.
Application Builder
Use the Application Builder VIs to build, deploy, or clean build specifications.
Palette
Description
Object
Builds a build specification using the properties in memory that you configure when
you right-click a build specification and select Properties. To use this VI, you
Build
previously configure the build specification using the Properties shortcut menu
option.
Deploys the output of a build specification to a target. To use this VI, build the build
Deploy
specification using the Build VI.
Deletes the build specification files that LabVIEW creates during the most recent
Clean
build.
Palette
Description
Object
Get Build Gets the version information of a build specification. This VI returns the Major, Minor,
Specification Fix, and Build version numbers, which correspond to the version numbers on the
Version Version Information page of the properties dialog box for the build specification.
Sets the version information of a build specification. This VI sets the Major, Minor,
Fix, and Build version numbers, which correspond to the version numbers on the
Set Build
Version Information page of the properties dialog box for the build specification.
Specification
LabVIEW saves version information automatically only if you wire a path to this VI.
Version
Therefore, if you wire a project reference to this VI, you must manually save the
project after you set the version information.
Build
Builds a build specification using the properties in memory that you configure when
you right-click a build specification and select Properties. To use this VI, you
previously configure the build specification using the Properties shortcut menu
option.
You cannot use the Build VI with the LabVIEW Run-Time Engine. If you plan to run a
build specification on the LabVIEW Run-Time Engine, do not include the Build VI in any
of the VIs for the build specification.
• Build (path) VI
• Build (project reference) VI
Build (path) VI
Builds a build specification using the properties in memory that you configure when
you right-click a build specification and select Properties. To use this VI, you
2434 ni.com
Functions
previously configure the build specification using the Properties shortcut menu
option.
You cannot use the Build VI with the LabVIEW Run-Time Engine. If you plan to run a
build specification on the LabVIEW Run-Time Engine, do not include the Build VI in any
of the VIs for the build specification.
Inputs/Outputs
• Path to project —
Path to project specifies the full path to the LabVIEW project (.lvproj) file that contains the
build specification.
Name of build specification specifies the name of the build specification. Enter the name that
appears under Build Specifications in the Project Explorer window to specify which build
specification builds. You can change the name of the build specification in the Build
specification name text box on the Information page of the build specification properties dialog
box.
If you do not specify a build specification, the VI builds all build specifications under the
specified target.
Name of target specifies the target that contains the build specification. The target is My
Computer by default.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• Generated files —
• error out —
error out contains error information. This output provides standard error out functionality.
You cannot use the Build VI with the LabVIEW Run-Time Engine. If you plan to run a
build specification on the LabVIEW Run-Time Engine, do not include the Build VI in any
of the VIs for the build specification.
Inputs/Outputs
• Project reference —
Project reference specifies a reference to the LabVIEW project (.lvproj) that contains the
build specification.
Name of build specification specifies the name of the build specification. Enter the name that
appears under Build Specifications in the Project Explorer window to specify which build
specification builds. You can change the name of the build specification in the Build
specification name text box on the Information page of the build specification properties dialog
box.
If you do not specify a build specification, the VI builds all build specifications under the
2436 ni.com
Functions
specified target.
Name of target specifies the target that contains the build specification. The target is My
Computer by default.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• project ref —
project ref returns a reference to the LabVIEW project that contains the build specification.
• Generated files —
• error out —
error out contains error information. This output provides standard error out functionality.
Deploy
Deploys the output of a build specification to a target. To use this VI, build the build
specification using the Build VI.
Inputs/Outputs
• Path to project —
Path to project specifies the full path to the LabVIEW project (.lvproj) file that contains the
build specification.
Name of build specification specifies the name of the build specification for the build output
you want to deploy. The name appears under Build Specifications in the Project Explorer
window. You can change the name of the build specification in the Build specification name text
box on the Information page of the build specification properties dialog box.
If you do not specify a build specification, the VI deploys all build specifications to the specified
target.
• Name of target —
Name of target specifies the target to which you want to deploy the build specification output.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Clean
Deletes the build specification files that LabVIEW creates during the most recent build.
Inputs/Outputs
• Path to project —
Path to project specifies the full path to the LabVIEW project (.lvproj) file that contains the
build specification.
2438 ni.com
Functions
Name of build specification specifies the name of the build specification. The name appears
under Build Specifications in the Project Explorer window. You can change the name of the
build specification in the Build specification name text box on the Information page of the build
specification properties dialog box.
If you do not specify a build specification, the VI cleans all build specifications under the
specified target.
Name of target specifies the target that contains the build specification. The target is My
Computer by default.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Gets the version information of a build specification. This VI returns the Major, Minor,
Fix, and Build version numbers, which correspond to the version numbers on the
Version Information page of the properties dialog box for the build specification.
You can use this VI to get the version information for a stand-alone applications,
installers, .NET interop assemblies, packed libraries, shared libraries, and source
distributions.
Note Installer build specifications contain only Major, Minor, and Fix version
numbers.
This VI returns an error if you attempt to get version information for a zip file.
The following block diagram displays a common use case of how this VI works with the
Set Build Specification Version VI and Build VI to manage an automatic nightly build
process.
Get Build Specification Version.vi—Gets the Major, Minor, Fix, and Build version numbers after
reading a project path or project reference.
In Place Element Structure—Reads the Major, Minor, Fix, and Build version numbers returned
by the Get Build Specification Version VI and increments only the Build version number.
Set Build Specification Version.vi—Sets the new version information with an incremented
Build number.
Build.vi—Creates the new build output with the new version information.
You can use this VI to get the version information for a stand-alone applications,
installers, .NET interop assemblies, packed libraries, shared libraries, and source
distributions.
Note Installer build specifications contain only Major, Minor, and Fix version
numbers.
2440 ni.com
Functions
This VI returns an error if you attempt to get version information for a zip file.
Inputs/Outputs
• Path to project —
Path to project specifies the full path to the LabVIEW project (.lvproj) file that contains the
build specification.
Name of build specification specifies the name of the build specification for which you want to
get version information. Enter the name that appears under Build Specifications in the Project
Explorer window to retrieve the version information of a build specification.
Name of target specifies the target that contains the build specification. The target is My
Computer by default.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• error out —
error out contains error information. This output provides standard error out functionality.
Build Specification Version returns the version information of the build specification.
• Major —
Major specifies the major version. This number may increment to reflect significant feature
changes.
• Minor —
Minor specifies the minor version. Similar to the Major version number, this number may
increment to reflect minor feature changes.
• Fix —
Fix specifies the fix version number. This number may increment for smaller changes, such
as bug fixes.
• Build —
Build specifies the build number. This number may increment to reflect nightly builds.
The following block diagram displays a common use case of how this VI works with the
Set Build Specification Version VI and Build VI to manage an automatic nightly build
process.
Get Build Specification Version.vi—Gets the Major, Minor, Fix, and Build version numbers after
reading a project path or project reference.
In Place Element Structure—Reads the Major, Minor, Fix, and Build version numbers returned
by the Get Build Specification Version VI and increments only the Build version number.
Set Build Specification Version.vi—Sets the new version information with an incremented
Build number.
Build.vi—Creates the new build output with the new version information.
2442 ni.com
Functions
You can use this VI to get the version information for a stand-alone applications,
installers, .NET interop assemblies, packed libraries, shared libraries, and source
distributions.
Note Installer build specifications contain only Major, Minor, and Fix version
numbers.
This VI returns an error if you attempt to get version information for a zip file.
Inputs/Outputs
• Project reference —
Project reference specifies a reference to the LabVIEW project (.lvproj) that contains the
build specification.
Name of build specification specifies the name of the build specification for which you want to
get version information. Enter the name that appears under Build Specifications in the Project
Explorer window to retrieve the version information of a build specification.
Name of target specifies the target that contains the build specification. The target is My
Computer by default.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
dup Project reference returns an unchanged reference to the LabVIEW project that contains the
build specification.
• error out —
error out contains error information. This output provides standard error out functionality.
Build Specification Version returns the version information of the build specification.
• Major —
Major specifies the major version. This number may increment to reflect significant feature
changes.
• Minor —
Minor specifies the minor version. Similar to the Major version number, this number may
increment to reflect minor feature changes.
• Fix —
Fix specifies the fix version number. This number may increment for smaller changes, such
as bug fixes.
• Build —
Build specifies the build number. This number may increment to reflect nightly builds.
The following block diagram displays a common use case of how this VI works with the
Set Build Specification Version VI and Build VI to manage an automatic nightly build
2444 ni.com
Functions
process.
Get Build Specification Version.vi—Gets the Major, Minor, Fix, and Build version numbers after
reading a project path or project reference.
In Place Element Structure—Reads the Major, Minor, Fix, and Build version numbers returned
by the Get Build Specification Version VI and increments only the Build version number.
Set Build Specification Version.vi—Sets the new version information with an incremented
Build number.
Build.vi—Creates the new build output with the new version information.
Sets the version information of a build specification. This VI sets the Major, Minor, Fix,
and Build version numbers, which correspond to the version numbers on the Version
Information page of the properties dialog box for the build specification. LabVIEW
saves version information automatically only if you wire a path to this VI. Therefore, if
you wire a project reference to this VI, you must manually save the project after you set
the version information.
You can use this VI to set the version information for a stand-alone application,
installer, .NET interop assembly, packed library, shared library, or source distribution.
Note Installer build specifications contain only Major, Minor, and Fix version
numbers.
This VI returns an error if you attempt to set version information for a zip file.
You can use this VI to set the version information for a stand-alone application,
installer, .NET interop assembly, packed library, shared library, or source distribution.
Note Installer build specifications contain only Major, Minor, and Fix version
numbers.
This VI returns an error if you attempt to set version information for a zip file.
Inputs/Outputs
• Path to project —
Path to project specifies the full path to the LabVIEW project (.lvproj) file that contains the
build specification.
Name of build specification specifies the name of the build specification for which you want to
set version information. Enter the name that appears under Build Specifications in the Project
Explorer window to set the version information of a build specification.
2446 ni.com
Functions
Name of target specifies the target that contains the build specification. The target is My
Computer by default.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
Build Specification Version returns the version information of the build specification.
• Major —
Major returns the major version. Increment this number to reflect significant feature
changes.
• Minor —
Minor returns the minor version. Similar to the Major version number, increment this
number to reflect minor feature changes.
• Fix —
Fix returns the fix version number. Increment this number for smaller changes, such as bug
fixes.
• Build —
Build returns the build number. Increment this number for nightly builds.
• error out —
error out contains error information. This output provides standard error out functionality.
You can use this VI to set the version information for a stand-alone application,
installer, .NET interop assembly, packed library, shared library, or source distribution.
Note Installer build specifications contain only Major, Minor, and Fix version
numbers.
This VI returns an error if you attempt to set version information for a zip file.
Inputs/Outputs
• Project reference —
Project reference specifies a reference to the LabVIEW project (.lvproj) that contains the
build specification.
Name of build specification specifies the name of the build specification for which you want to
set version information. Enter the name that appears under Build Specifications in the Project
Explorer window to set the version information of a build specification.
2448 ni.com
Functions
Name of target specifies the target that contains the build specification. The target is My
Computer by default.
• error in —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
Build Specification Version returns the version information of the build specification.
• Major —
Major returns the major version. Increment this number to reflect significant feature
changes.
• Minor —
Minor returns the minor version. Similar to the Major version number, increment this
number to reflect minor feature changes.
• Fix —
Fix returns the fix version number. Increment this number for smaller changes, such as bug
fixes.
• Build —
Build returns the build number. Increment this number for nightly builds.
dup Project reference returns an unchanged reference to the LabVIEW project that contains the
build specification.
• error out —
error out contains error information. This output provides standard error out functionality.
Report Generation
Use the Report Generation VIs to create and manipulate reports of LabVIEW
applications. You also can use the VIs on this palette to insert text, tables, and graphs
into bookmark locations.
The VIs on this palette can return report generation error codes.
You can use the Report Generation VIs to generate reports that contain VI
documentation or data the VI returns.
Note Some of the VIs on this palette include inputs and outputs the VI
ignores unless you install the Report Generation Toolkit.
Note In some cases, VIs on this palette store graphic files (jpg, png, ...) on the
windows temp folder. Links to these files are used in reports, html files, and
other results. It is not possible to delete the files automatically because it is
uncertain how long the reports are going to be used. It might be necessary to
delete them manually from time to time.
Allows you to pass in a block of text along with optional formatting information
Create Easy
and print the report to a designated printer or publish the report to a specified file
Text Report
path.
Print VI Panel
Prints a front panel or VI documentation or saves the front panel or VI
or
documentation to a report.
Documentation
VI
Use the VI Documentation VIs to customize the VI documentation you print or save
Documentation
2450 ni.com
Functions
to a report. VI documentation can include the icon and connector pane, front
panel, block diagram, VI hierarchy, revision history, controls and indicators, and
so on.
Print Report Prints a report to a designated printer or to the default printer on the computer.
Save Report to
Saves an HTML report to the file specified in report file path.
File
Dispose Report Closes the report and releases its interface, which saves memory.
HTML Reports Use the HTML Reports Only VIs to manipulate HTML reports you create in
Only LabVIEW.
Set Report Font Sets the font properties of the report, including those in the headers and footers.
Append Report Appends text to the selected report. Wire data to the text input to determine the
Text polymorphic instance to use or manually select the instance.
Appends a 2D array to a report as a table with the given column width. Wire data
Append Table
to the text data input to determine the polymorphic instance to use or manually
to Report
select the instance.
Append List to
Adds a list of elements to the report.
Report
Use the Report Layout VIs to manipulate the layout of reports you create in
Report Layout
LabVIEW.
Append Front Creates an image of the front panel of the VI you specify in VI and appends it to a
Panel Image to report. Wire data to the VI input to determine the polymorphic instance to use or
Report manually select the instance.
Append
Creates an image of the front panel object specified in ctrl reference and appends
Control Image
it to a report.
to Report
For an HTML report, the VI embeds a link to an image into the report.
Append Image
You can wire either a path to the image or a string that contains the image URL to
to Report
this polymorphic VI. Wire data to the path or URL of image input to determine the
polymorphic instance to use or manually select the instance.
Advanced
Use the Advanced Report Generation VIs to manipulate reports you create in
Report
LabVIEW.
Generation
Examples
2452 ni.com
Functions
Allows you to pass in a block of text along with optional formatting information and
print the report to a designated printer or publish the report to a specified file path.
Inputs/Outputs
• font settings —
• charset (-1) —
charset is the character set to use for report text. The default is -1.
• weight (-1) —
• name —
• size —
• print or save? —
print or save? specifies whether the VI prints or saves the report. The default is print. Set this
input to save if you specify a file path in printer name or file path.
print
0
(default)—Prints the report.
save
1
—Saves the report.
• margins —
margins sets the page margins to use when printing the report.
• margins (1.00) —
margins sets the size of the page margins. The default is 1.00 for each margin.
If the margins are smaller than the minimum margins for the printer, the VI returns an error.
• top —
top sets the distance in inches or centimeters between the top of the page and the top
of the content on the page.
• left —
left sets the distance in inches or centimeters between the left edge of the page and the
left edge of the content on the page.
• right —
right sets the distance in inches or centimeters between the right edge of the page and
the right edge of the content on the page.
• bottom —
bottom sets the distance in inches or centimeters between the bottom of the page and
the bottom of the content on the page.
2454 ni.com
Functions
• text to be printed —
text to be printed is the information you want to include in the report. Any information you want
to include must be in a string.
Note If this string contains printing codes, the VI might not behave as expected. For
example, the string \00 prints a blank page on some computers. If the VI does not
behave as expected, make sure this string does not contain printer codes.
printer name or file path is the name of the printer to which you want to print a report or the file
path to which you want to send a report, depending on report type. If you specify a printer
name, the printer must be configured for use with the computer from which you print the report.
If you specify a file path, you must set the print or save? input to save. If you do not wire this
input, the VI uses the default printer in LabVIEW.
If you wire a file path, you must enter the path as a string or use the Path to String function. If you
do not specify a path, LabVIEW displays error -41003.
HTML
0
—Creates an HTML report.
Word
1
(Report Generation Toolkit) —Creates a Word report.
Excel
2
(Report Generation Toolkit)—Creates an Excel report.
• orientation (portrait) —
0 Portrait (default)—Prints the report so the short edge of the paper is the top of the page.
1 Landscape—Prints the report so the long edge of the paper is the top of the page.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• headers —
headers specifies what information appears in the header of each page of the report.
• left —
left is the information you want to appear in the left side of the header.
• center —
center is the information you want to appear in the center portion of the header.
• right —
right is the information you want to appear in the right side of the header.
• footers —
footers specifies what information appears in the footer of each page of the report.
• left —
left is the information you want to appear in the left side of the footer.
• center —
center is the information you want to appear in the center portion of the footer.
• right —
right is the information you want to appear in the right side of the footer.
• error out —
2456 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Use tokens with this VI to generate information in the report, such as in the headers
and footers. For example, you can insert a time stamp in the footers of the report.
You cannot use tokens with Microsoft Word and Excel reports.
You cannot use this VI with any other Report Generation VIs. Also, this VI does not give
you fine-grain control over the formatting of a report. You can use this VI to specify the
text font, set the header and footer, set margins, specify a printer, and set the page
orientation. This VI disposes of the report automatically, which frees memory space.
However, you cannot control where information is placed, append information from
another file, or clear the report of font styles, headers and footers, or text. Use the
other Report Generation VIs to generate complicated reports, such as those with many
different kinds of information.
If a front panel is not visible, LabVIEW does not update the values in the objects on the
front panel. If you call a VI whose front panel is not visible and you use the Print VI
Panel or Documentation VI to create an image of the front panel, the image does not
reflect any value changes that occurred when you ran the VI.
If you want the image to reflect value changes, make sure the front panel is open
before any values change. If you do not want to display the front panel but want the
image to reflect value changes, create a Property Node from any front panel terminal
on the block diagram of the VI for which you want to create a front panel image.
You also can use the Front Panel:Get Image and Get Panel Image Scaled methods to
return a front panel image programmatically. Use the VI Documentation VIs to print
specific components of VI documentation or to save the components to a report.
Inputs/Outputs
• layout options —
layout options sets the page layout and printing options for the report, if report type is Quick
Print. Otherwise, LabVIEW ignores this input.
• orientation (unchanged) —
You also can use the Printing:Page Orientation property to set the page orientation
programmatically.
panel scaling for page sets whether to scale the front panel so it fits on the printed page.
2458 ni.com
Functions
You also can use the Printing:Front Panel Scaling? property to set the scaling option
programmatically.
• margins —
margins sets the page margins of the printed report and the units of measurement for the
margins.
You also can use the Printing:Margins property to set the page margins programmatically.
If override VI margins is TRUE, the VI uses the margins you set in margins. If FALSE
(default), the VI uses the default margins for the VI.
• margins (1.00) —
margins sets the size of the page margins. The default is 1.00 for each margin.
If the margins are smaller than the minimum margins for the printer, the VI returns an
error.
• top —
top sets the distance in inches or centimeters between the top of the page and the
top of the content on the page.
• left —
left sets the distance in inches or centimeters between the left edge of the page
and the left edge of the content on the page.
• right —
right sets the distance in inches or centimeters between the right edge of the page
and the right edge of the content on the page.
• bottom —
bottom sets the distance in inches or centimeters between the bottom of the page
and the bottom of the content on the page.
• printer options —
printer options sets the printer to use and the printer options.
destination printer name is the name of the printer to which you want to print the
report.
If you wire a printer name, that printer must be configured for use with the computer
from which you want to print the report.
If you do not wire a printer name, the VI uses the default printer in LabVIEW. The
computer from which you want to print must have a default printer.
You can use the Query Available Printers VI to obtain a list of the printers available on
the computer, including the default printer in LabVIEW.
2460 ni.com
Functions
This input is similar to the Standard printing, PostScript printing, and Bitmap printing
buttons on the Printing page of the Options dialog box.
You also can use the Printing:Method property to set how LabVIEW prints
programmatically.
This input is similar to the Color/Grayscale printing checkbox on the Printing page of
the Options dialog box.
You also can use the Printing:Color/Grayscale? property to configure the colors of the
output programmatically.
page header options sets whether to print page headers and configures the contents of the
headers.
page headers sets whether to print page headers for the report.
You also can use the Printing:Page Headers? property to print page headers
programmatically.
Unchanged (default)—Uses the default setting for the VI. If you wire this value, the VI
0
ignores the page header content options input.
Include page headers—Prints headers for the report using the values you wire to the
1
page header content options input.
2 Do not include page headers—Prints no headers for the report.
page header content options sets which data to include in the page headers.
You also can use the Printing:Header Content properties to customize the contents of
the headers programmatically.
• Include VI Name —
If Include VI Name is TRUE (default), the report headers include the VI name.
• Include VI Path —
If Include VI Path is TRUE (default), the report headers include the VI path.
If Include Last Modification Date is TRUE (default), the report headers include the
last modification date.
If Include Date Printed is TRUE (default), the report headers include the date
printed.
2462 ni.com
Functions
If Include Page Number is TRUE (default), the report headers include the page
number.
• Include VI Icon —
If Include VI Icon is TRUE (default), the report headers include the VI icon.
• VI path —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
custom contents options sets which data to print or include in the report if you set contents to
Documentation: Custom.
You also can use the Printing:Custom properties to set which data to print programmatically.
If include VI connector and icon is TRUE, the report includes the VI icon and connector
pane. The default is FALSE.
• include VI description —
If include VI description is TRUE, the report includes the VI description. The default is
FALSE.
If include front panel is TRUE, the report includes the front panel. The default is FALSE.
If surround front panel with border is TRUE, the VI prints a border around the front panel.
The default is FALSE.
2464 ni.com
Functions
list of controls options sets whether to include a list of controls and indicators in the report
and sets the data to include in the list.
If include list of controls is TRUE, the report includes a list of controls and indicators.
The default is FALSE.
list which controls? sets which controls and indicators to include in the list.
If include control descriptions? is TRUE, the report includes control and indicator
descriptions. The default is FALSE.
If include control data types? is TRUE, the report includes control and indicator data
types. The default is FALSE.
block diagram options sets whether to include the block diagram in the report and how to
print structures on the block diagram.
If include block diagram is TRUE, the report includes the block diagram. The default is
FALSE.
• hidden frames —
If hidden frames is TRUE, the block diagram image includes all visible subdiagrams of
each Case, Event, and Stacked Sequence structure, followed by all hidden subdiagrams
for each structure. If FALSE (default), the image includes only visible subdiagrams.
If ordered is TRUE, the block diagram image includes all visible subdiagrams of each
Case, Event, and Stacked Sequence structure, followed by all subdiagrams for each
structure in order, including visible and hidden subdiagrams. If FALSE (default), the
image does not repeat visible subdiagrams in the ordered list of subdiagrams.
• include VI hierarchy —
If include VI hierarchy is TRUE, the report includes the VI hierarchy. The default is FALSE.
If include list of subVIs is TRUE, the report includes a list of subVIs, including icons, names,
and paths. The default is FALSE.
• include VI history —
If include VI history is TRUE, the report includes revision history information. The default is
FALSE.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
2466 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
If a front panel is not visible, LabVIEW does not update the values in the objects on the
front panel. If you call a VI whose front panel is not visible and you use the Print VI
Panel or Documentation VI to create an image of the front panel, the image does not
reflect any value changes that occurred when you ran the VI.
If you want the image to reflect value changes, make sure the front panel is open
before any values change. If you do not want to display the front panel but want the
image to reflect value changes, create a Property Node from any front panel terminal
on the block diagram of the VI for which you want to create a front panel image.
You also can use the Front Panel:Get Image and Get Panel Image Scaled methods to
return a front panel image programmatically. Use the VI Documentation VIs to print
specific components of VI documentation or to save the components to a report.
Inputs/Outputs
• layout options —
layout options sets the page layout and printing options for the report, if report type is Quick
Print. Otherwise, LabVIEW ignores this input.
• orientation (unchanged) —
You also can use the Printing:Page Orientation property to set the page orientation
programmatically.
panel scaling for page sets whether to scale the front panel so it fits on the printed page.
You also can use the Printing:Front Panel Scaling? property to set the scaling option
programmatically.
• margins —
margins sets the page margins of the printed report and the units of measurement for the
margins.
You also can use the Printing:Margins property to set the page margins programmatically.
If override VI margins is TRUE, the VI uses the margins you set in margins. If FALSE
(default), the VI uses the default margins for the VI.
• margins (1.00) —
margins sets the size of the page margins. The default is 1.00 for each margin.
If the margins are smaller than the minimum margins for the printer, the VI returns an
error.
2468 ni.com
Functions
• top —
top sets the distance in inches or centimeters between the top of the page and the
top of the content on the page.
• left —
left sets the distance in inches or centimeters between the left edge of the page
and the left edge of the content on the page.
• right —
right sets the distance in inches or centimeters between the right edge of the page
and the right edge of the content on the page.
• bottom —
bottom sets the distance in inches or centimeters between the bottom of the page
and the bottom of the content on the page.
• printer options —
printer options sets the printer to use and the printer options.
destination printer name is the name of the printer to which you want to print the
report.
If you wire a printer name, that printer must be configured for use with the computer
from which you want to print the report.
If you do not wire a printer name, the VI uses the default printer in LabVIEW. The
computer from which you want to print must have a default printer.
You can use the Query Available Printers VI to obtain a list of the printers available on
the computer, including the default printer in LabVIEW.
This input is similar to the Standard printing, PostScript printing, and Bitmap printing
buttons on the Printing page of the Options dialog box.
You also can use the Printing:Method property to set how LabVIEW prints
programmatically.
This input is similar to the Color/Grayscale printing checkbox on the Printing page of
the Options dialog box.
You also can use the Printing:Color/Grayscale? property to configure the colors of the
output programmatically.
2470 ni.com
Functions
page header options sets whether to print page headers and configures the contents of the
headers.
page headers sets whether to print page headers for the report.
You also can use the Printing:Page Headers? property to print page headers
programmatically.
Unchanged (default)—Uses the default setting for the VI. If you wire this value, the VI
0
ignores the page header content options input.
Include page headers—Prints headers for the report using the values you wire to the
1
page header content options input.
2 Do not include page headers—Prints no headers for the report.
page header content options sets which data to include in the page headers.
You also can use the Printing:Header Content properties to customize the contents of
the headers programmatically.
• Include VI Name —
If Include VI Name is TRUE (default), the report headers include the VI name.
• Include VI Path —
If Include VI Path is TRUE (default), the report headers include the VI path.
If Include Last Modification Date is TRUE (default), the report headers include the
last modification date.
If Include Date Printed is TRUE (default), the report headers include the date
printed.
If Include Page Number is TRUE (default), the report headers include the page
number.
• Include VI Icon —
If Include VI Icon is TRUE (default), the report headers include the VI icon.
• VI reference —
You can use the Open VI Reference function to obtain a reference to another VI.
2472 ni.com
Functions
Documentation: Using the panel—Prints the VI description, front panel, and controls and
3 indicators, including data types, names, and descriptions. LabVIEW prints the controls and
indicators in tabbing order.
Documentation: Using as a subVI—Prints the VI description, icon and connector pane, and
connected controls and indicators, including data types, names, and descriptions. LabVIEW
4
prints the controls and indicators in tabbing order. This format is similar to the format of the VI
and function reference topics in the LabVIEW Help.
Documentation: Complete—Prints the VI description, icon and connector pane, front panel,
5 controls and indicators, including data types, names, and descriptions, block diagram, a list of
subVIs, including icons, names, and paths, revision history information, and the VI hierarchy.
Documentation: Custom—Uses the values you wire to custom contents options to determine
6
which data to print.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
custom contents options sets which data to print or include in the report if you set contents to
Documentation: Custom.
You also can use the Printing:Custom properties to set which data to print programmatically.
If include VI connector and icon is TRUE, the report includes the VI icon and connector
pane. The default is FALSE.
• include VI description —
If include VI description is TRUE, the report includes the VI description. The default is
FALSE.
If include front panel is TRUE, the report includes the front panel. The default is FALSE.
If surround front panel with border is TRUE, the VI prints a border around the front panel.
The default is FALSE.
list of controls options sets whether to include a list of controls and indicators in the report
and sets the data to include in the list.
If include list of controls is TRUE, the report includes a list of controls and indicators.
The default is FALSE.
list which controls? sets which controls and indicators to include in the list.
If include control descriptions? is TRUE, the report includes control and indicator
descriptions. The default is FALSE.
If include control data types? is TRUE, the report includes control and indicator data
types. The default is FALSE.
2474 ni.com
Functions
block diagram options sets whether to include the block diagram in the report and how to
print structures on the block diagram.
If include block diagram is TRUE, the report includes the block diagram. The default is
FALSE.
• hidden frames —
If hidden frames is TRUE, the block diagram image includes all visible subdiagrams of
each Case, Event, and Stacked Sequence structure, followed by all hidden subdiagrams
for each structure. If FALSE (default), the image includes only visible subdiagrams.
If ordered is TRUE, the block diagram image includes all visible subdiagrams of each
Case, Event, and Stacked Sequence structure, followed by all subdiagrams for each
structure in order, including visible and hidden subdiagrams. If FALSE (default), the
image does not repeat visible subdiagrams in the ordered list of subdiagrams.
• include VI hierarchy —
If include VI hierarchy is TRUE, the report includes the VI hierarchy. The default is FALSE.
If include list of subVIs is TRUE, the report includes a list of subVIs, including icons, names,
and paths. The default is FALSE.
• include VI history —
If include VI history is TRUE, the report includes revision history information. The default is
FALSE.
information for any Express VIs on the block diagram. The default is FALSE.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
error out contains error information. This output provides standard error out functionality.
If a front panel is not visible, LabVIEW does not update the values in the objects on the
front panel. If you call a VI whose front panel is not visible and you use the Print VI
Panel or Documentation VI to create an image of the front panel, the image does not
reflect any value changes that occurred when you ran the VI.
If you want the image to reflect value changes, make sure the front panel is open
before any values change. If you do not want to display the front panel but want the
image to reflect value changes, create a Property Node from any front panel terminal
on the block diagram of the VI for which you want to create a front panel image.
You also can use the Front Panel:Get Image and Get Panel Image Scaled methods to
return a front panel image programmatically. Use the VI Documentation VIs to print
specific components of VI documentation or to save the components to a report.
2476 ni.com
Functions
Inputs/Outputs
• layout options —
layout options sets the page layout and printing options for the report, if report type is Quick
Print. Otherwise, LabVIEW ignores this input.
• orientation (unchanged) —
You also can use the Printing:Page Orientation property to set the page orientation
programmatically.
panel scaling for page sets whether to scale the front panel so it fits on the printed page.
You also can use the Printing:Front Panel Scaling? property to set the scaling option
programmatically.
• margins —
margins sets the page margins of the printed report and the units of measurement for the
margins.
You also can use the Printing:Margins property to set the page margins programmatically.
If override VI margins is TRUE, the VI uses the margins you set in margins. If FALSE
(default), the VI uses the default margins for the VI.
• margins (1.00) —
margins sets the size of the page margins. The default is 1.00 for each margin.
If the margins are smaller than the minimum margins for the printer, the VI returns an
error.
• top —
top sets the distance in inches or centimeters between the top of the page and the
top of the content on the page.
• left —
left sets the distance in inches or centimeters between the left edge of the page
and the left edge of the content on the page.
• right —
right sets the distance in inches or centimeters between the right edge of the page
and the right edge of the content on the page.
• bottom —
bottom sets the distance in inches or centimeters between the bottom of the page
and the bottom of the content on the page.
• printer options —
printer options sets the printer to use and the printer options.
2478 ni.com
Functions
destination printer name is the name of the printer to which you want to print the
report.
If you wire a printer name, that printer must be configured for use with the computer
from which you want to print the report.
If you do not wire a printer name, the VI uses the default printer in LabVIEW. The
computer from which you want to print must have a default printer.
You can use the Query Available Printers VI to obtain a list of the printers available on
the computer, including the default printer in LabVIEW.
This input is similar to the Standard printing, PostScript printing, and Bitmap printing
buttons on the Printing page of the Options dialog box.
You also can use the Printing:Method property to set how LabVIEW prints
programmatically.
This input is similar to the Color/Grayscale printing checkbox on the Printing page of
the Options dialog box.
You also can use the Printing:Color/Grayscale? property to configure the colors of the
output programmatically.
page header options sets whether to print page headers and configures the contents of the
headers.
page headers sets whether to print page headers for the report.
You also can use the Printing:Page Headers? property to print page headers
programmatically.
Unchanged (default)—Uses the default setting for the VI. If you wire this value, the VI
0
ignores the page header content options input.
Include page headers—Prints headers for the report using the values you wire to the
1
page header content options input.
2 Do not include page headers—Prints no headers for the report.
page header content options sets which data to include in the page headers.
You also can use the Printing:Header Content properties to customize the contents of
the headers programmatically.
2480 ni.com
Functions
• Include VI Name —
If Include VI Name is TRUE (default), the report headers include the VI name.
• Include VI Path —
If Include VI Path is TRUE (default), the report headers include the VI path.
If Include Last Modification Date is TRUE (default), the report headers include the
last modification date.
If Include Date Printed is TRUE (default), the report headers include the date
printed.
If Include Page Number is TRUE (default), the report headers include the page
number.
• Include VI Icon —
If Include VI Icon is TRUE (default), the report headers include the VI icon.
• VI name —
VI name is the name of the VI you want to print or save to a report. The VI must be in memory.
Icon, description, panel and diagram—Prints the VI description, icon and connector pane,
2
front panel, and block diagram.
Documentation: Using the panel—Prints the VI description, front panel, and controls and
3 indicators, including data types, names, and descriptions. LabVIEW prints the controls and
indicators in tabbing order.
Documentation: Using as a subVI—Prints the VI description, icon and connector pane, and
connected controls and indicators, including data types, names, and descriptions. LabVIEW
4
prints the controls and indicators in tabbing order. This format is similar to the format of the VI
and function reference topics in the LabVIEW Help.
Documentation: Complete—Prints the VI description, icon and connector pane, front panel,
5 controls and indicators, including data types, names, and descriptions, block diagram, a list of
subVIs, including icons, names, and paths, revision history information, and the VI hierarchy.
Documentation: Custom—Uses the values you wire to custom contents options to determine
6
which data to print.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
custom contents options sets which data to print or include in the report if you set contents to
Documentation: Custom.
You also can use the Printing:Custom properties to set which data to print programmatically.
2482 ni.com
Functions
If include VI connector and icon is TRUE, the report includes the VI icon and connector
pane. The default is FALSE.
• include VI description —
If include VI description is TRUE, the report includes the VI description. The default is
FALSE.
If include front panel is TRUE, the report includes the front panel. The default is FALSE.
If surround front panel with border is TRUE, the VI prints a border around the front panel.
The default is FALSE.
list of controls options sets whether to include a list of controls and indicators in the report
and sets the data to include in the list.
If include list of controls is TRUE, the report includes a list of controls and indicators.
The default is FALSE.
list which controls? sets which controls and indicators to include in the list.
If include control descriptions? is TRUE, the report includes control and indicator
descriptions. The default is FALSE.
If include control data types? is TRUE, the report includes control and indicator data
types. The default is FALSE.
block diagram options sets whether to include the block diagram in the report and how to
print structures on the block diagram.
If include block diagram is TRUE, the report includes the block diagram. The default is
FALSE.
• hidden frames —
If hidden frames is TRUE, the block diagram image includes all visible subdiagrams of
each Case, Event, and Stacked Sequence structure, followed by all hidden subdiagrams
for each structure. If FALSE (default), the image includes only visible subdiagrams.
If ordered is TRUE, the block diagram image includes all visible subdiagrams of each
Case, Event, and Stacked Sequence structure, followed by all subdiagrams for each
structure in order, including visible and hidden subdiagrams. If FALSE (default), the
image does not repeat visible subdiagrams in the ordered list of subdiagrams.
• include VI hierarchy —
If include VI hierarchy is TRUE, the report includes the VI hierarchy. The default is FALSE.
If include list of subVIs is TRUE, the report includes a list of subVIs, including icons, names,
and paths. The default is FALSE.
• include VI history —
2484 ni.com
Functions
If include VI history is TRUE, the report includes revision history information. The default is
FALSE.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
error out contains error information. This output provides standard error out functionality.
If a front panel is not visible, LabVIEW does not update the values in the objects on the
front panel. If you call a VI whose front panel is not visible and you use the Print VI
Panel or Documentation VI to create an image of the front panel, the image does not
reflect any value changes that occurred when you ran the VI.
If you want the image to reflect value changes, make sure the front panel is open
before any values change. If you do not want to display the front panel but want the
image to reflect value changes, create a Property Node from any front panel terminal
on the block diagram of the VI for which you want to create a front panel image.
You also can use the Front Panel:Get Image and Get Panel Image Scaled methods to
return a front panel image programmatically. Use the VI Documentation VIs to print
specific components of VI documentation or to save the components to a report.
VI Documentation
Use the VI Documentation VIs to customize the VI documentation you print or save to a
report. VI documentation can include the icon and connector pane, front panel, block
diagram, VI hierarchy, revision history, controls and indicators, and so on.
Palette
Description
Object
Append
Creates an image of the front panel of the VI you specify in VI and appends it to a
Front Panel
report. Wire data to the VI input to determine the polymorphic instance to use or
Image to
manually select the instance.
Report
Append VI
Creates an image of the block diagram of the VI you specify in VI and appends the
Block
image to a report. Wire data to the VI input to determine the polymorphic instance
Diagram to
to use or manually select the instance.
Report
Append VI
Appends the description of the VI you specify in VI to a report. Wire data to the VI
Description
input to determine the polymorphic instance to use or manually select the instance.
to Report
Append VI
Appends the icon of the VI you specify in VI to a report. Wire data to the VI input to
Icon to
determine the polymorphic instance to use or manually select the instance.
Report
Append VI
Appends the hierarchy of the VI you specify in VI to a report. Wire data to the VI input
Hierarchy to
to determine the polymorphic instance to use or manually select the instance.
Report
Append VI Appends the revision history of the VI you specify in VI to a report. Wire data to the
History to VI input to determine the polymorphic instance to use or manually select the
Report instance.
Append VI
Appends a list of controls and indicators of the VI you specify in VI to a report. Wire
List of
data to the VI input to determine the polymorphic instance to use or manually select
Controls to
the instance.
Report
Append VI
Appends a list of subVIs of the VI you specify in VI to a report. The list includes subVI
List of SubVIs
2486 ni.com
Functions
Palette
Description
Object
icons, names, and paths. Wire data to the VI input to determine the polymorphic
to Report
instance to use or manually select the instance.
Creates an image of the front panel of the VI you specify in VI and appends it to a
report. Wire data to the VI input to determine the polymorphic instance to use or
manually select the instance.
The VI also includes an instance whose connector pane is compatible with versions of
the VI in LabVIEW 6.1 and earlier.
For an HTML report, the VI saves the image file to the temporary directory and adds a
link to the image file in the report.
If a front panel is not visible, LabVIEW does not update the values in the objects on the
front panel. If you call a VI whose front panel is not visible and you use the Append
Front Panel Image to Report VI to create an image of the front panel, the image does
not reflect any value changes that occurred when you ran the VI.
If you want the image to reflect value changes, make sure the front panel is open
before any values change. If you do not want to display the front panel but want the
image to reflect value changes, create a Property Node from any front panel terminal
on the block diagram of the VI for which you want to create a front panel image.
Note If you set Image Format to GIF, the VI does not work when you
You also can use the following methods to return a front panel image
programmatically:
The VI also includes an instance whose connector pane is compatible with versions of
the VI in LabVIEW 6.1 and earlier.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
2488 ni.com
Functions
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the path to the VI whose image you want to append to the report. The default is the path to
the VI that contains this VI as a subVI.
• description —
description is the description of the graphic to display if you open the HTML report in a Web
browser set to display text only.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
If visible area only? is TRUE, the VI creates an image of only the currently visible portion of the
front panel. The default is FALSE.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI path out —
2490 ni.com
Functions
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
For an HTML report, the VI saves the image file to the temporary directory and adds a
link to the image file in the report.
If a front panel is not visible, LabVIEW does not update the values in the objects on the
front panel. If you call a VI whose front panel is not visible and you use the Append
Front Panel Image to Report VI to create an image of the front panel, the image does
not reflect any value changes that occurred when you ran the VI.
If you want the image to reflect value changes, make sure the front panel is open
before any values change. If you do not want to display the front panel but want the
image to reflect value changes, create a Property Node from any front panel terminal
on the block diagram of the VI for which you want to create a front panel image.
Note If you set Image Format to GIF, the VI does not work when you
include it in a stand-alone application.
You also can use the following methods to return a front panel image
programmatically:
The VI also includes an instance whose connector pane is compatible with versions of
the VI in LabVIEW 6.1 and earlier.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
2492 ni.com
Functions
3 TOP
4 TEXTTOP
5 MIDDLE
6 ABSMIDDLE
7 BASELINE
8 BOTTOM
9 ABSBOTTOM
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is a reference to the VI whose data you want to append to the report. The default is a reference
to the VI that contains this VI as a subVI.
• description —
description is the description of the graphic to display if you open the HTML report in a Web
browser set to display text only.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
If visible area only? is TRUE, the VI creates an image of only the currently visible portion of the
front panel. The default is FALSE.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
2494 ni.com
Functions
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
For an HTML report, the VI saves the image file to the temporary directory and adds a
link to the image file in the report.
If a front panel is not visible, LabVIEW does not update the values in the objects on the
front panel. If you call a VI whose front panel is not visible and you use the Append
Front Panel Image to Report VI to create an image of the front panel, the image does
not reflect any value changes that occurred when you ran the VI.
If you want the image to reflect value changes, make sure the front panel is open
before any values change. If you do not want to display the front panel but want the
image to reflect value changes, create a Property Node from any front panel terminal
on the block diagram of the VI for which you want to create a front panel image.
Note If you set Image Format to GIF, the VI does not work when you
include it in a stand-alone application.
You also can use the following methods to return a front panel image
programmatically:
The VI also includes an instance whose connector pane is compatible with versions of
the VI in LabVIEW 6.1 and earlier.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
• report in —
2496 ni.com
Functions
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the name of the VI whose data you want to append to the report. The default is the name of
the VI that contains this VI as a subVI. The VI must be in memory.
• description —
description is the description of the graphic to display if you open the HTML report in a Web
browser set to display text only.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
If visible area only? is TRUE, the VI creates an image of only the currently visible portion of the
front panel. The default is FALSE.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI name out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
2498 ni.com
Functions
For an HTML report, the VI saves the image file to the temporary directory and adds a
link to the image file in the report.
If a front panel is not visible, LabVIEW does not update the values in the objects on the
front panel. If you call a VI whose front panel is not visible and you use the Append
Front Panel Image to Report VI to create an image of the front panel, the image does
not reflect any value changes that occurred when you ran the VI.
If you want the image to reflect value changes, make sure the front panel is open
before any values change. If you do not want to display the front panel but want the
image to reflect value changes, create a Property Node from any front panel terminal
on the block diagram of the VI for which you want to create a front panel image.
Note If you set Image Format to GIF, the VI does not work when you
include it in a stand-alone application.
You also can use the following methods to return a front panel image
programmatically:
Creates an image of the block diagram of the VI you specify in VI and appends the
image to a report. Wire data to the VI input to determine the polymorphic instance to
use or manually select the instance.
You also can use the Get Diagram Image Scaled method to return a block diagram
image programmatically.
You also can use the Get Diagram Image Scaled method to return a block diagram
image programmatically.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• hidden frames —
2500 ni.com
Functions
If hidden frames is TRUE, the block diagram image includes all visible subdiagrams of each
Case, Event, and Stacked Sequence structure, followed by all hidden subdiagrams for each
structure. If FALSE (default), the image includes only visible subdiagrams.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the path to the VI whose image you want to append to the report. The default is the path to
the VI that contains this VI as a subVI.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
If ordered is TRUE, the block diagram image includes all visible subdiagrams of each Case,
Event, and Stacked Sequence structure, followed by all subdiagrams for each structure in order,
including visible and hidden subdiagrams. If FALSE (default), the image does not repeat visible
subdiagrams in the ordered list of subdiagrams.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
2502 ni.com
Functions
• VI path out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
You also can use the Get Diagram Image Scaled method to return a block diagram
image programmatically.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• hidden frames —
If hidden frames is TRUE, the block diagram image includes all visible subdiagrams of each
Case, Event, and Stacked Sequence structure, followed by all hidden subdiagrams for each
structure. If FALSE (default), the image includes only visible subdiagrams.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is a reference to the VI whose data you want to append to the report. The default is a reference
to the VI that contains this VI as a subVI.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
2504 ni.com
Functions
2 RIGHT
3 TOP
4 TEXTTOP
5 MIDDLE
6 ABSMIDDLE
7 BASELINE
8 BOTTOM
9 ABSBOTTOM
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
If ordered is TRUE, the block diagram image includes all visible subdiagrams of each Case,
Event, and Stacked Sequence structure, followed by all subdiagrams for each structure in order,
including visible and hidden subdiagrams. If FALSE (default), the image does not repeat visible
subdiagrams in the ordered list of subdiagrams.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
2506 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
You also can use the Get Diagram Image Scaled method to return a block diagram
image programmatically.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• hidden frames —
If hidden frames is TRUE, the block diagram image includes all visible subdiagrams of each
Case, Event, and Stacked Sequence structure, followed by all hidden subdiagrams for each
structure. If FALSE (default), the image includes only visible subdiagrams.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the name of the VI whose data you want to append to the report. The default is the name of
the VI that contains this VI as a subVI. The VI must be in memory.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
If ordered is TRUE, the block diagram image includes all visible subdiagrams of each Case,
Event, and Stacked Sequence structure, followed by all subdiagrams for each structure in order,
including visible and hidden subdiagrams. If FALSE (default), the image does not repeat visible
subdiagrams in the ordered list of subdiagrams.
2508 ni.com
Functions
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI name out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Appends the description of the VI you specify in VI to a report. Wire data to the VI input
to determine the polymorphic instance to use or manually select the instance.
2510 ni.com
Functions
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the path to the VI whose image you want to append to the report. The default is the path to
the VI that contains this VI as a subVI.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI path out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
2512 ni.com
Functions
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is a reference to the VI whose data you want to append to the report. The default is a reference
to the VI that contains this VI as a subVI.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI out —
2514 ni.com
Functions
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the name of the VI whose data you want to append to the report. The default is the name of
the VI that contains this VI as a subVI. The VI must be in memory.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
2516 ni.com
Functions
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI name out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Appends the icon of the VI you specify in VI to a report. Wire data to the VI input to
determine the polymorphic instance to use or manually select the instance.
Note The Append VI Icon to Report VI does not work when you include it in a
stand-alone application.
Note The Append VI Icon to Report VI does not work when you include it in a
stand-alone application.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the path to the VI whose image you want to append to the report. The default is the path to
2518 ni.com
Functions
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
caption or alternative string is the text to display instead of the image if you view the report in a
Web browser set to display only text.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI path out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
2520 ni.com
Functions
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Note The Append VI Icon to Report VI does not work when you include it in a
stand-alone application.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
• VI —
VI is a reference to the VI whose data you want to append to the report. The default is a reference
to the VI that contains this VI as a subVI.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
caption or alternative string is the text to display instead of the image if you view the report in a
Web browser set to display only text.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
2522 ni.com
Functions
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Note The Append VI Icon to Report VI does not work when you include it in a
stand-alone application.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
2524 ni.com
Functions
• VI —
VI is the name of the VI whose data you want to append to the report. The default is the name of
the VI that contains this VI as a subVI. The VI must be in memory.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
caption or alternative string is the text to display instead of the image if you view the report in a
Web browser set to display only text.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI name out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
2526 ni.com
Functions
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Appends the hierarchy of the VI you specify in VI to a report. Wire data to the VI input to
determine the polymorphic instance to use or manually select the instance.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the path to the VI whose image you want to append to the report. The default is the path to
the VI that contains this VI as a subVI.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
2528 ni.com
Functions
9 ABSBOTTOM
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI path out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
2530 ni.com
Functions
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is a reference to the VI whose data you want to append to the report. The default is a reference
to the VI that contains this VI as a subVI.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
9 ABSBOTTOM
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
2532 ni.com
Functions
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the name of the VI whose data you want to append to the report. The default is the name of
the VI that contains this VI as a subVI. The VI must be in memory.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
2534 ni.com
Functions
9 ABSBOTTOM
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI name out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Appends the revision history of the VI you specify in VI to a report. Wire data to the VI
input to determine the polymorphic instance to use or manually select the instance.
2536 ni.com
Functions
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the path to the VI whose image you want to append to the report. The default is the path to
the VI that contains this VI as a subVI.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI path out —
2538 ni.com
Functions
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is a reference to the VI whose data you want to append to the report. The default is a reference
to the VI that contains this VI as a subVI.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
2540 ni.com
Functions
• VI out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the name of the VI whose data you want to append to the report. The default is the name of
the VI that contains this VI as a subVI. The VI must be in memory.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
2542 ni.com
Functions
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI name out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Appends a list of controls and indicators of the VI you specify in VI to a report. Wire
data to the VI input to determine the polymorphic instance to use or manually select
the instance.
stand-alone application.
Inputs/Outputs
• image format (jpeg) —
0 PNG
1 JPEG
2544 ni.com
Functions
(default)
2 GIF
If include only controls in con pane? is TRUE, the report includes only connected controls and
indicators. If FALSE (default), the report includes all controls and indicators.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the path to the VI whose image you want to append to the report. The default is the path to
the VI that contains this VI as a subVI.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
If include control descriptions? is TRUE, the report includes control and indicator descriptions.
The default is FALSE.
If include control data types? is TRUE, the report includes control and indicator data types. The
default is FALSE.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
2546 ni.com
Functions
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI path out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
If include only controls in con pane? is TRUE, the report includes only connected controls and
indicators. If FALSE (default), the report includes all controls and indicators.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is a reference to the VI whose data you want to append to the report. The default is a reference
to the VI that contains this VI as a subVI.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
2548 ni.com
Functions
2 RIGHT
3 TOP
4 TEXTTOP
5 MIDDLE
6 ABSMIDDLE
7 BASELINE
8 BOTTOM
9 ABSBOTTOM
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
If include control descriptions? is TRUE, the report includes control and indicator descriptions.
The default is FALSE.
If include control data types? is TRUE, the report includes control and indicator data types. The
default is FALSE.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
2550 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
If include only controls in con pane? is TRUE, the report includes only connected controls and
indicators. If FALSE (default), the report includes all controls and indicators.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the name of the VI whose data you want to append to the report. The default is the name of
the VI that contains this VI as a subVI. The VI must be in memory.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
If include control descriptions? is TRUE, the report includes control and indicator descriptions.
The default is FALSE.
If include control data types? is TRUE, the report includes control and indicator data types. The
default is FALSE.
2552 ni.com
Functions
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI name out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Appends a list of subVIs of the VI you specify in VI to a report. The list includes subVI
icons, names, and paths. Wire data to the VI input to determine the polymorphic
instance to use or manually select the instance.
Note You cannot include the Append VI List of SubVIs to Report VI in a stand-
alone application.
2554 ni.com
Functions
Note You cannot include the Append VI List of SubVIs to Report VI in a stand-
alone application.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the path to the VI whose image you want to append to the report. The default is the path to
the VI that contains this VI as a subVI.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
1 LEFT
2 RIGHT
3 TOP
4 TEXTTOP
5 MIDDLE
6 ABSMIDDLE
7 BASELINE
8 BOTTOM
9 ABSBOTTOM
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
2556 ni.com
Functions
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI path out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Note You cannot include the Append VI List of SubVIs to Report VI in a stand-
alone application.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is a reference to the VI whose data you want to append to the report. The default is a reference
to the VI that contains this VI as a subVI.
2558 ni.com
Functions
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
2560 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Note You cannot include the Append VI List of SubVIs to Report VI in a stand-
alone application.
Inputs/Outputs
• image format (jpeg) —
0 PNG
JPEG
1
(default)
2 GIF
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• VI —
VI is the name of the VI whose data you want to append to the report. The default is the name of
the VI that contains this VI as a subVI. The VI must be in memory.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
2562 ni.com
Functions
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• VI name out —
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Create Report
If you do not use the Create Easy Text Report VI, to create a report, you must use this VI.
Inputs/Outputs
• window state (normal) —
window state (Report Generation Toolkit) sets the Microsoft Word or Excel window to display as
normal, minimized, or maximized. The VI ignores this input for HTML reports.
0 maximized
1 minimized
normal
2
(default)
3 no change
display alerts? (Report Generation Toolkit) determines whether prompts and alerts appear in
Microsoft Word or Excel. The default is FALSE, which disables alerts. The VI ignores this input for
HTML reports.
• report type —
2564 ni.com
Functions
HTML
0 —Creates an HTML report and returns a reference to it in report out so you can use other
Report Generation VIs to customize, save, or print the report.
Word
1 (Report Generation Toolkit)—Creates a report in Word and returns a reference to it in report
out so you can use other Report Generation VIs to customize, save, or print the report.
Excel
2 (Report Generation Toolkit)—Creates a report in Excel and returns a reference to it in report out
so you can use other Report Generation VIs to customize, save, or print the report.
• template (empty) —
template (Report Generation Toolkit) specifies a path to a Word document or Excel worksheet
that acts as a report template. Enter the path to an existing Word document or Excel worksheet
to open and edit an existing report for a template.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
machine name (Report Generation Toolkit) specifies a computer from which Microsoft Word or
Excel runs remotely. The VI ignores this input for HTML reports.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
error out contains error information. This output provides standard error out functionality.
Print Report
If you use this VI to print an HTML report, the computer printing the report must have
Internet Explorer installed.
Note If you use this VI to print a Microsoft Word report and you assign a
printer to the printer name input other than the default system printer,
Microsoft Word resets the default system printer to the printer you assigned
to the printer name input.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
printer name is the name of the printer to which you want to print the report.
If you wire a printer name, that printer must be configured for use with the computer from which
you want to print the report. If you do not wire a printer name, the VI uses the default printer for
the computer. The computer from which you want to print must have a default printer.
If you print an HTML report, the VI ignores this input and uses the default printer for Internet
Explorer.
number of copies specifies how many copies of the report you want to print.
2566 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
report file path specifies the path where you want to save the report and the name of the report.
prompt to replace? determines whether the VI displays a dialog box if you specify an existing
filename in report file path. The default is FALSE, which overwrites existing files without
prompting.
• password ("") —
password (Report Generation Toolkit) creates a read-only report with password protection. You
must enter the password to modify the report.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
error out contains error information. This output provides standard error out functionality.
Dispose Report
Closes the report and releases its interface, which saves memory.
After the VI runs, you cannot perform further operations on the report. The Dispose
Report VI should be the last VI you use when you create a report.
2568 ni.com
Functions
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
wait until printing completed? (Report Generation Toolkit) specifies whether the VI closes the
report if printing is still in progress. The default is TRUE, which specifies to wait to close the
report until the report prints.
The VI ignores this input for HTML, standard, and Excel reports.
save changes? (Report Generation Toolkit) specifies whether the VI saves changes to the report.
The default is FALSE, which specifies to close the report without saving any changes.
The VI ignores this input if the Close Report input is FALSE. The VI ignores this input for HTML
reports.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
close report? (Report Generation Toolkit) specifies whether the VI closes the report. The default
is TRUE, which specifies to close the report file. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Use the HTML Reports Only VIs to manipulate HTML reports you create in LabVIEW.
The VIs on this palette can return report generation error codes.
Append Horizontal
Creates a horizontal rule in an HTML report.
Line to Report
Append Hypertext
Link Anchor to Creates and adds a hypertext link anchor to a HTML report.
Report
Append User
Formatted HTML Inserts text that is not preformatted by LabVIEW in the HTML report.
to Report
Displays an HTML report in the default Web browser. Wire data to the report in
Open HTML Report
input to determine the polymorphic instance to use or manually select the
in Browser
instance.
Inputs/Outputs
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
2570 ni.com
Functions
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• size (default) —
The default is 1.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
• align (default) —
• width (100=default) —
width sets the width of the horizontal rule, either in pixels or as a percentage of the page,
depending on the value you wire to width units.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• width units —
width units determines whether the width you specify is in pixels or a percentage of the page.
0 Pixels
Percentage
1
(default)
• noshade (F) —
If TRUE, the VI adds the noshade attribute to the horizontal rule tag. The default is FALSE.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
2572 ni.com
Functions
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
This VI also creates and adds a hypertext link anchor to a Microsoft Word or Excel
report.
Inputs/Outputs
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
URL of link - href is the URL of the website or document that you want to link to from the HTML
report.
Use forward slashes (/) to separate directory and filenames in URLs. For example, if you want to
link to report.html in the factory directory on the website www.mycompany.com, use a
URL of http://www.mycompany.com/factory/report.html.
If you link to documents or sites on a local computer, the links might not work if you post the
report on the Web. If you use relative paths in the links and the documents or sites move, the
2574 ni.com
Functions
• link text —
link text is the text you want to appear as a link in the report.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Use this VI to insert tags not currently supplied by the Report Generation VIs.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• HTML text —
HTML text is the text LabVIEW adds to the HTML document without extra tags. This input allows
the use of tags not currently supplied by the Report Generation VIs.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
error out contains error information. This output provides standard error out functionality.
Displays an HTML report in the default Web browser. Wire data to the report in input to
determine the polymorphic instance to use or manually select the instance.
If you wire a URL or path that contains a space character to this VI, the VI encodes the
space as %20 before displaying the URL or HTML file in the Web browser.
2576 ni.com
Functions
Examples
If you wire a URL or path that contains a space character to this VI, the VI encodes the
space as %20 before displaying the URL or HTML file in the Web browser.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
temporary HTML file created is the path in which the VI saved the temporary HTML file
containing the report before displaying the HTML file in the Web browser.
After the VI runs, you can delete the temporary HTML file to free disk space.
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
If you wire a URL or path that contains a space character to this VI, the VI encodes the
space as %20 before displaying the URL or HTML file in the Web browser.
Inputs/Outputs
• path —
path is the path to the HTML file you want to display in the default Web browser.
If the path is relative, the VI interprets the path as relative to the application directory, such as
the labview directory or the directory containing the stand-alone application.
2578 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• path out —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
If you wire a URL or path that contains a space character to this VI, the VI encodes the
space as %20 before displaying the URL or HTML file in the Web browser.
Inputs/Outputs
• URL —
URL is the URL you want to display in the default Web browser.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• URL out —
• error out —
error out contains error information. This output provides standard error out functionality.
Examples
Sets the font properties of the report, including those in the headers and footers.
Inputs/Outputs
• font settings source (VI Inputs) —
font settings source (Report Generation Toolkit) specifies the way in which you want to select
font settings.
2580 ni.com
Functions
VI Inputs (default)—The VI uses the values you set in the font settings input. If you do not wire
0
font settings, the VI uses the default font settings of the report class.
1 Font Dialog Box—A dialog box appears that you can use to select font settings.
You can wire a color box constant to this input. The default is T, which leaves the text
unchanged.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• text options —
• Italic —
Italic determines whether subsequent text appears in italics in the report. The default is
Italic Unchanged.
0 Italic Unchanged
1 Italic On
2 Italic Off
• Strike Through —
Strike Through determines whether subsequent text appears with a strikethrough effect in
the report. The default is Strike Through Unchanged.
• Underline —
Underline determines whether subsequent text appears underlined in the report. The
default is Underline Unchanged.
0 Underline Unchanged
1 Underline On
2 Underline Off
• Bold —
Bold determines whether subsequent text appears bold in the report. The default is Bold
Unchanged.
0 Bold Unchanged
1 Bold On
2 Bold Off
• font settings —
• Charset (-1) —
charset is the character set to use for report text. The default is -1.
• Weight (-1) —
• Name —
• Size —
2582 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• font out —
font out (Report Generation Toolkit) contains the font settings the VI uses for formatting, which
you can use in other VIs. The values are valid for Microsoft Office reports only.
• font name —
font name indicates the name of the font used, such as Times New Roman.
• font size —
font size indicates the size at which the font appears, in points.
• bold —
• italic —
• underline —
• strike through —
• font color —
• error out —
error out contains error information. This output provides standard error out functionality.
The available properties include italic, bold, strikethrough, underline, color, font
name, font size, character set, and weight. The font you specify in the VI becomes the
default font for the report.
If you use the Set Report Font VI to set a font in an HTML report, the <font> tag is used
to set the font. This tag remains valid until the end of the file. There is no </font> used.
The table generated by the Append Table to Report VI does not use the font defined by
the Set Report Font VI. The header and body texts of the table have different default
fonts. You can use HTML tags to configure the text font for each cell of the table. Refer
to the example at ni.com for more information about how to generate tables with
different fonts.
Appends text to the selected report. Wire data to the text input to determine the
polymorphic instance to use or manually select the instance.
The selected report is the one you wire to report in. You can append the text to the
current position of the cursor in the report or on a new line.
Appends text to the selected report. Wire data to the text input to determine the
polymorphic instance to use or manually select the instance.
The selected report is the one you wire to report in. You can append the text to the
current position of the cursor in the report or on a new line.
2584 ni.com
Functions
Inputs/Outputs
• format string (%.3f) —
format string specifies the number formatting to use when LabVIEW converts the numbers to
characters. Use format string when you wire numeric data to the text input.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• text —
append on new line? appends the information on a new line in the report when set to TRUE.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
2586 ni.com
Functions
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Appends text to the selected report. Wire data to the text input to determine the
polymorphic instance to use or manually select the instance.
The selected report is the one you wire to report in. You can append the text to the
current position of the cursor in the report or on a new line.
Inputs/Outputs
• format string (%.3f) —
format string specifies the number formatting to use when LabVIEW converts the numbers to
characters. Use format string when you wire numeric data to the text input.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• text —
text is the information you want to include in the report. Use the format string input to format
the numeric data.
append on new line? appends the information on a new line in the report when set to TRUE.
2588 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Appends a 2D array to a report as a table with the given column width. Wire data to the
text data input to determine the polymorphic instance to use or manually select the
instance.
Examples
• labview\examples\reports\TextReportExample.llb\Text
Report Example.vi
Appends a 2D array to a report as a table with the given column width. Wire data to the
text data input to determine the polymorphic instance to use or manually select the
instance.
Inputs/Outputs
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
• position (excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
• row —
• column —
• name (excel) —
2590 ni.com
Functions
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
measurement system for column width determines whether the value you enter in column
width is in inches or centimeters.
column width defines the width of each column in the report table.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• column headers —
• row headers —
• text data —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
separate page? specifies whether to place the table on a new page of the report. The default is
FALSE.
show grid lines specifies whether to display the grid lines of the table. The default is TRUE.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
range (wd) - start (xl) (Report Generation Toolkit) indicates the place where the VI inserts the
table.
start (wd) - row (xl) is the point where the table begins.
end (wd) - col (xl) is the point where the table ends.
• end (xl) —
end (xl) (Report Generation Toolkit) indicates the last cell in the Excel worksheet where the VI
inserts the table.
• row (xl) —
• col (xl) —
• error out —
error out contains error information. This output provides standard error out functionality.
2592 ni.com
Functions
Examples
• labview\examples\reports\TextReportExample.llb\Text
Report Example.vi
Appends a 2D array to a report as a table with the given column width. Wire data to the
text data input to determine the polymorphic instance to use or manually select the
instance.
Inputs/Outputs
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
measurement system for column width determines whether the value you enter in column
width is in inches or centimeters.
column width defines the width of each column in the report table.
The value you enter must be in inches or centimeters, depending on the settings you enter in
measurement system for column width. The default is 1. For HTML reports, the VI multiplies the
value by 100 to set the column width in pixels.
2594 ni.com
Functions
Note If you set column width to a large value and send several columns of data to
the VI, the VI automatically resizes the column width to fit the width of the report on a
single page. If you are using a template and do not want the column width to vary,
use the value -1.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• column headers —
• row headers —
• numerical data —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
format string specifies the number formatting to use when converting the numbers to
characters. The default is %.3f.
• separate page? —
separate page? specifies whether to place the table on a new page of the report. The default is
FALSE.
show grid lines specifies whether to display the grid lines of the table. The default is TRUE.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
range (wd) - start (xl) (Report Generation Toolkit) indicates the place where the VI inserts the
table.
start (wd) - row (xl) is the point where the table begins.
end (wd) - col (xl) is the point where the table ends.
• end (xl) —
end (xl) (Report Generation Toolkit) indicates the last cell in the Excel worksheet where the VI
inserts the table.
• row (xl) —
• col (xl) —
• error out —
error out contains error information. This output provides standard error out functionality.
2596 ni.com
Functions
Examples
• labview\examples\reports\TextReportExample.llb\Text
Report Example.vi
Inputs/Outputs
• unordered item type (default) —
unordered item type determines the symbol used to denote a list item in an unordered list. You
can specify a symbol only if the report is HTML-based. The default for HTML-based reports is a
bullet.
0 (default)
1 disc
2 square
3 circle
ordered item type determines how the ordered list appears, numerical or alphabetical. The
default is arabic numerals.
0 (default)
1 arabic numerals
2 lower alpha
3 upper alpha
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• list elements —
list elements are the items you want to include in the list.
list type specifies whether the list appears ordered or unordered in the report.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
ordered start determines the number or letter the list starts with. Enter the number or the letter
that corresponds to the number with which you want to start. For example, A equals 1, B equals
2, or a equals 1, b equals 2. The default is 1.
• bookmark (Word) —
bookmark (Report Generation Toolkit) contains the name of the bookmark in a Microsoft Word
document from which the insertion occurs. The VI ignores this input for HTML reports.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
2598 ni.com
Functions
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Report Layout
Use the Report Layout VIs to manipulate the layout of reports you create in LabVIEW.
The VIs on this palette can return report generation error codes.
Set Report Footer Text Sets the text of the report footer.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• margins (1.00) —
margins sets the size of the page margins. The default is 1.00 for each margin.
If the margins are smaller than the minimum margins for the printer, the VI returns an error.
• top —
top sets the distance in inches or centimeters between the top of the page and the top of
the content on the page.
• left —
left sets the distance in inches or centimeters between the left edge of the page and the left
edge of the content on the page.
• right —
right sets the distance in inches or centimeters between the right edge of the page and the
2600 ni.com
Functions
• bottom —
bottom sets the distance in inches or centimeters between the bottom of the page and the
bottom of the content on the page.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
page width (Report Generation Toolkit) reports the width of the page after the VI has set the
margins. The VI sets the margins in the units of measurement specified in measurement system.
The VI ignores this input for HTML, standard, or Excel reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• orientation (portrait) —
0 Portrait (default)—Prints the report so the short edge of the paper is the top of the page.
1 Landscape—Prints the report so the long edge of the paper is the top of the page.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
error out contains error information. This output provides standard error out functionality.
2602 ni.com
Functions
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
number of lines specifies how many lines the VI adds to the report. The default is 1.
2604 ni.com
Functions
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
error out contains error information. This output provides standard error out functionality.
Header text for Microsoft Excel reports appears only when you print the report.
Use tokens with this VI to generate information in the headers. For example, you can
insert a time stamp in the headers of the report.
You cannot use tokens with Microsoft Word and Excel reports.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
left header text is the information you want to appear in the left side of the header.
center header text is the information you want to appear in the center portion of the header.
right header text is the information you want to appear in the right side of the header.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
HTML header size is the HTML heading tag to use for the header. Use this parameter only for
HTML reports.
0 <H1>
1 <H2>
2 <H3> (default)
3 <H4>
4 <H5>
5 <H6>
6 <H7>
• header placement —
Note If you insert a header in a Microsoft Word report, the header is added to all
pages regardless of the placement specified.
Top of Document
0
(default)
Append to Body
1
(the header is added to the top of each page)
• report out —
2606 ni.com
Functions
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
error out contains error information. This output provides standard error out functionality.
Use tokens with this VI to generate information in the footers. For example, you can
insert a time stamp in the footers of the report.
You cannot use tokens with Microsoft Word and Excel reports.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
left footer text is the information you want to appear in the left side of the footer.
center footer text is the information you want to appear in the center portion of the footer.
right footer text is the information you want to appear in the right side of the footer.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
HTML footer size is the HTML heading tag to use for the footer. Use this parameter only for HTML
reports.
0 <H1>
1 <H2>
2 <H3> (default)
3 <H4>
4 <H5>
5 <H6>
6 <H7>
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
error out contains error information. This output provides standard error out functionality.
Creates an image of the front panel of the VI you specify in VI and appends it to a
report. Wire data to the VI input to determine the polymorphic instance to use or
manually select the instance.
The VI also includes an instance whose connector pane is compatible with versions of
the VI in LabVIEW 6.1 and earlier.
2608 ni.com
Functions
For an HTML report, the VI saves the image file to the temporary directory and adds a
link to the image file in the report.
If a front panel is not visible, LabVIEW does not update the values in the objects on the
front panel. If you call a VI whose front panel is not visible and you use the Append
Front Panel Image to Report VI to create an image of the front panel, the image does
not reflect any value changes that occurred when you ran the VI.
If you want the image to reflect value changes, make sure the front panel is open
before any values change. If you do not want to display the front panel but want the
image to reflect value changes, create a Property Node from any front panel terminal
on the block diagram of the VI for which you want to create a front panel image.
Note If you set Image Format to GIF, the VI does not work when you
include it in a stand-alone application.
You also can use the following methods to return a front panel image
programmatically:
Creates an image of the front panel object specified in ctrl reference and appends it to
a report.
Inputs/Outputs
• image file type (.jpg) —
0 .jpg (default)
1 .png
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• image depth —
image depth specifies the color depth of the image, which is the number of bits to use to
describe the color of each pixel in the image. Valid values include 1, 4, 8, and 24 bits per pixel.
2610 ni.com
Functions
image depth affects how LabVIEW interprets the values of image and colors.
• ctrl reference —
ctrl reference is a reference to the control whose image you want to append to the report.
• description —
description is the description of the graphic to display if you open the HTML report in a Web
browser set to display text only.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
For an HTML report, the VI saves the image file to the temporary directory and adds a
link to the image file in the report.
If a front panel is not visible, LabVIEW does not update the values in the objects on the
front panel. If you call a VI whose front panel is not visible and you use the Append
Control Image to Report VI to create an image of a front panel object, the image does
not reflect any value changes that occurred when you ran the VI.
If you want the image to reflect value changes, make sure the front panel is open
before any values change. If you do not want to display the front panel but want the
image to reflect value changes, create a Property Node from any front panel terminal
2612 ni.com
Functions
on the block diagram of the VI for which you want to create a control image.
You also can use the Get Image method to return an image of a front panel object.
For an HTML report, the VI embeds a link to an image into the report.
You can wire either a path to the image or a string that contains the image URL to this
polymorphic VI. Wire data to the path or URL of image input to determine the
polymorphic instance to use or manually select the instance.
Note When you append an image to an HTML report, using a file that cannot
be interpreted by the Web browser could make the image unreadable.
For an HTML report, the VI embeds a link to an image into the report.
You can wire either a path to the image or a string that contains the image URL to this
polymorphic VI. Wire data to the path or URL of image input to determine the
polymorphic instance to use or manually select the instance.
Note When you append an image to an HTML report, using a file that cannot
be interpreted by the Web browser could make the image unreadable.
Inputs/Outputs
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
2614 ni.com
Functions
insertion occurs.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
path or URL of image designates the path to the linked image. If you move the image, you must
update the path.
caption or alternative string is the text to display instead of the image if you view the report in a
Web browser set to display only text.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
For an HTML report, the VI embeds a link to an image into the report.
You can wire either a path to the image or a string that contains the image URL to this
polymorphic VI. Wire data to the path or URL of image input to determine the
polymorphic instance to use or manually select the instance.
Note When you append an image to an HTML report, using a file that cannot
be interpreted by the Web browser could make the image unreadable.
Inputs/Outputs
• MS Office parameters —
2616 ni.com
Functions
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• alignment (default) —
alignment sets the alignment of the image in a report. (Report Generation Toolkit) For Microsoft
Word reports, you can use only the LEFT, RIGHT, and MIDDLE options.
2 RIGHT
3 TOP
4 TEXTTOP
5 MIDDLE
6 ABSMIDDLE
7 BASELINE
8 BOTTOM
9 ABSBOTTOM
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
path or URL of image designates the URL of the linked image. If you intend to post this page to
the World Wide Web, use forward slashes (/) in paths. If the images are on your local computer or
on a network, use backslashes (\) in the paths. If you move the images, you must update the
links.
caption or alternative string is the text to display instead of the image if you view the report in a
Web browser set to display only text.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
2618 ni.com
Functions
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
error out contains error information. This output provides standard error out functionality.
Use the Advanced Report Generation VIs to manipulate reports you create in LabVIEW.
The VIs on this palette can return report generation error codes.
Report Type Returns the report type, such as HTML, of a specified report.
Get Report
Retrieves information about the current font and text settings of a given report.
Settings
Append File to
Appends the text from a text file into the current report.
Report
Clear Report Clears all text, headers, footers, and formatting information from the report.
Clear Report Clears the text and related formatting information from the report. This VI does
Text not affect header and footer information.
Query Available Lists the printers available on the computer, including the default printer in
Printers LabVIEW.
Report Type
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• report type —
0 HTML
Word
1
(Report Generation Toolkit)
Excel
2
(Report Generation Toolkit)
• error out —
error out contains error information. This output provides standard error out functionality.
2620 ni.com
Functions
Retrieves information about the current font and text settings of a given report.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• text options —
• Italic —
• StrikeThrough —
StrikeThrough indicates whether text appears with a strikethrough effect in the report.
• Underline —
• Bold —
• font settings —
font settings indicates what font settings currently are used in a report.
• charset —
charset is the character set to use for report text. The default is -1.
• name —
• weight —
• size —
• error out —
error out contains error information. This output provides standard error out functionality.
• text color —
Appends the text from a text file into the current report.
2622 ni.com
Functions
Inputs/Outputs
• MS Office parameters —
MS Office parameters (Report Generation Toolkit) specifies the point in a Microsoft Word or
Excel report where you want an insertion to occur. The VI ignores this input for HTML reports.
You can specify a bookmark in Word or a named range or cell coordinates in Excel. If you set the
report type to Word but do not specify a bookmark, the insertion occurs at the end of the
document.
• position (Excel) —
position contains the row and column coordinates of the point in an Excel worksheet from
which the insertion occurs.
Row and column values in Excel are zero-based, so the row and column coordinates of (0,0)
correspond to cell A1.
• row —
• column —
• name (Excel) —
name contains the name of the cell in a Microsoft Excel worksheet from which the insertion
occurs.
• bookmark (Word) —
bookmark contains the name of the bookmark in a Word document from which the
insertion occurs.
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
• file path —
file path is the path of the text file from which you want to pull information into your report.
is spreadsheet file? (Report Generation Toolkit) embeds a spreadsheet file into the Microsoft
Excel worksheet as a table when set to TRUE. The VI ignores this input for HTML and Word
reports.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
start out (Report Generation Toolkit) represents the index of the character at the beginning of
the text inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
end out (Report Generation Toolkit) represents the index of the character at the end of the text
inserted in the Microsoft Word document. The VI ignores this input for HTML reports.
• error out —
2624 ni.com
Functions
error out contains error information. This output provides standard error out functionality.
Clear Report
Clears all text, headers, footers, and formatting information from the report.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
error out contains error information. This output provides standard error out functionality.
Clears the text and related formatting information from the report. This VI does not
affect header and footer information.
You cannot use this VI with Microsoft Word and Excel reports.
Inputs/Outputs
• report in —
report in is a reference to the report whose appearance, data, and printing you want to control.
Use the Create Report VI to generate this LabVIEW class object.
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
• report out —
report out is a reference to the report whose appearance, data, and printing you want to control.
• error out —
error out contains error information. This output provides standard error out functionality.
Lists the printers available on the computer, including the default printer in LabVIEW.
Inputs/Outputs
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
2626 ni.com
Functions
system configured printers contains the names of printers available on the computer.
You also can use the Printing:Available Printers property to obtain a list of printer names
programmatically.
• default printer —
When you start LabVIEW, the default printer in LabVIEW is the same as the system default printer.
However, any time you print in LabVIEW, the printer you use becomes the default printer in
LabVIEW. LabVIEW no longer recognizes changes to the system default printer until you restart
LabVIEW.
You can use the Printing:Default Printer property to set the default printer in LabVIEW
programmatically.
• error out —
error out contains error information. This output provides standard error out functionality.
Report
Option Description
Report
Contains the following options:
Information
Option Description
• Report title—
• Author name—
• Company name—
• Operator name—
Specifies the name of the operator who generated the data for the report.
• Page number—
• Total pages—
This option prints the total number of pages in the following formats:
◦ (Word 2000, XP, and 2003) Page x of n
◦ (Word 2007) x/n
• VI documentation (appendix)—
• Comments—
2628 ni.com
Functions
Option Description
• Title—
• Include table—
• Title—
• Include table—
Destination Specifies where to send the report. You can export the report to a Microsoft Word
Option Description
Path to
Path where you want to save the report.
save report
Inputs/Outputs
• error in (no error) —
• Additional Comments —
• Signal 1 —
• Signal 2 —
• Enabled? —
• error out —
Contains error information. This output provides standard error out functionality.
Components
Specifies the name of the operator who generated the data for the report.
2630 ni.com
Functions
Specifies where to send the report. You can export the report to a Microsoft Word
document or a Microsoft Excel worksheet, print to a printer, or save the report in HTML
format for use on a Web page.
Measurement I/O
Use the Measurement I/O VIs and functions to interface with NI-DAQmx and other data
acquisition devices. This palette displays the VIs and functions for the hardware drivers
you install.
If driver VIs you expected to find on this palette are missing, you must install support
for the driver in the current version of LabVIEW.
Note If you installed a driver with a previous version of LabVIEW, you must
reinstall that driver with the current version of LabVIEW. You can search for
National Instrument drivers at NI Drivers and Updates on the National
Instruments Web site or install them using the installation media that
shipped with your purchase.
NI Scan Engine Use the NI Scan Engine VIs to interface with the NI Scan Engine.
NI Scan Engine
Use the NI Scan Engine VIs to interface with the NI Scan Engine.
2632 ni.com
Functions
Palette
Description
Object
Synchronize Synchronizes execution timing to the scan period of the NI Scan Engine. This VI
to Scan waits for each scan to complete and triggers subsequent code to execute once the
Engine scan engine has updated all values.
Get Scan
Engine Returns the scan period of the NI Scan Engine on the target.
Period
Set Scan
Engine Sets the scan period of the NI Scan Engine on the target.
Period
Get Scan
Returns the operating mode of the NI Scan Engine on the target.
Engine Mode
Set Scan
Sets the operating mode of the NI Scan Engine on the target.
Engine Mode
Discovers new I/O modules on any local or networked target. If a local I/O module is
Refresh
detected in a slot that was not previously deployed from a LabVIEW project, this VI
Modules
creates new I/O variables for the I/O module.
Use the Forcing VIs to force and unforce I/O variables programmatically.
Forcing
The VIs on this palette can return general LabVIEW error codes.
Use the Faults VIs to view, set, and clear NI Scan Engine faults programmatically.
Faults
The VIs on this palette can return general LabVIEW error codes.
Fault Use the Fault Configuration VIs to view and configure the level and triggering
Configuration behavior of system faults.
Synchronizes execution timing to the scan period of the NI Scan Engine. This VI waits
for each scan to complete and triggers subsequent code to execute once the scan
engine has updated all values.
Use the Scan Engine page to configure the scan period. You also can use the Set Scan
Engine Period VI to set the scan period programmatically.
Inputs/Outputs
• error in (no error) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
scans since last call returns the number of times the scan engine has completed a scan since the
last call of this VI. You can use this information to identify missed scan iterations and determine
whether the synchronized code consistently finishes executing on time.
• error out —
error out contains error information. This output provides standard error out functionality.
Use this VI for code running outside of a timed structure. For most NI Scan Engine use
cases, NI recommends using a timed structure with the Synchronize to Scan Engine
timing source.
Examples
2634 ni.com
Functions
Inputs/Outputs
• target address (localhost) —
error in describes error conditions that occur before this node runs. This input provides
standard error in functionality.
scan period (uSec) returns the period of the scan engine running on the target.
• error out —
error out contains error information. This output provides standard error out functionality.
Inputs/Outputs
• target address (localhost) —