Home
LabWindows/CVI User Manual
Contents
1. esee 2 25 Creating a Distribution Kit for VXIplug amp play Instrument Drivers 2 34 Creating a Distribution Kit for IVI Instrument Drivers sess 2 36 Advanced Distribution Kit Options esesseeeeeeeeer 2 38 Run Menu for the Workspace Window eese nennen 2 40 RUM De DUG 5o recedet rit Prem eee en pre toe ere eina 2 40 RUM CONTINUE m ue ee er eite e D ERE HERES Med 2 40 Run Step Over eode te PEG d die aces 2 40 R n Step Into e derenan nba e ERE EH EHE ied 2 40 Run Einish Function nte itirsin dette ib p bee er Roger 2 40 Run Terminate Execution esses enne nennen ene 2 40 R n Break Qrni csso2nspo amd sep OH HD ts 2 41 Run Breakpoirits e eee teda tete ete ctecs REX PORE R EN ER Io teen eT 2 41 Run Stack Trace negra tee eere EOD GER ET 2 41 Run Up Call Stack e ttt treten eet 2 42 Run Down Call Stack 5 cette eee pepe gerer ends 2 42 Run Specify External Process esses nennen enne 2 42 Run Execute eee eos usosev chase appen emp qoe s 2 42 Run Command Line 5 entis hr etre pred 2 42 Run Threads 25 5 gae ener go eun Hs 2 43 Run Loaded Modules 5 a t e te esie eter ret ee YES 2 43 Instrument Menu for the Workspace Window sees 2 43 Instruments Loadrite rt ree eee t se rene ipte i 2 43 Instrument Unload 2 2 m nane ee PCR dot aed 2 44 Instr rent Edit z
2. The commands in the Help menu work in the same way as the commands for the Help menu for the Workspace window Refer to the Help Menu for the Workspace Window section of Chapter 2 Workspace Window for more information LabWindows CVI User Manual 11 6 ni com Configuring LabWindows CVI This appendix describes special options that override some of the configuration defaults established during the LabWindows CVI installation or through the configuration dialog boxes within the environment These options inform LabWindows CVI where to find system files where to place temporary files and so on You might not need to set any of these options Getting Started with LabWindows CVI contains installation instructions for LabWindows CVI and a hands on tutorial It is a good idea to be familiar with the material in Getting Started with LabWindows CVI before you go through this manual LabWindows CVI Startup Options You can append certain options to the cvi command line separating various parameters by spaces The valid startup options appear in the following table Option Purpose lt filename gt LabWindows CVI automatically loads the file at startup The file can be any of the types available under the File Open command run This option automatically invokes the Run Debug command run_then_exit This option automatically invokes Run Debug and then automatically invokes File Exit LabWindows CVI when the projec
3. When you select Code Generate Control Callbacks LabWindows CVI produces the include statements and the function skeleton for each selected control and places them in the target file You also can generate a control callback function skeleton by right clicking a control in the uir file and selecting Generate Control Callback from the context menu Generating Menu Callbacks Selecting Code Generate Menu Callbacks opens the Select Menu Bar Objects dialog box Select the menu bar objects for which you want to generate callbacks and then click OK When you click OK LabWindows CVI produces the include statements the function prototypes and the opening and closing brackets for each callback function LabWindows CVI does not generate switch construct or case statements because the usual default events do not apply to menu callback functions You must add the code to implement the actions you want to take place when a user selects a menu bar item Code View Use the Code View command to look at code for a given callback function To view the code for a function from the uir file select a panel or control and then select View Panel Callback or View Control Callback The source file that contains the callback function appears with the function name highlighted You also can view the code for a control callback function by right clicking the control and selecting View Control Callback from the context menu When you choose the View
4. The full path of the All Users Desktop folder which contains items on the Windows desktop Common values for this directory are C Documents and Settings All Users VM Desktop for Windows 2000 and C WindowsNDesktop for Windows 98 Favorites Directory The full path of the Favorites folder for the current user Common values for this directory are C Documents and Settings V Logon User Favorites for Windows 2000 and C Windows NFavoritesN for Windows 98 Fonts Directory The full path of the system Fonts folder IVI Standard Root Directory The full path of the IVI Standard Root directory If IVI is already installed on the system the installer will use that directory otherwise the installer will use its default directory Note If you use the Create Distribution Kit option to create an installer for an IVI instrument driver your installer will not be compliant with the installation requirements defined by the IVI Foundation To create a compliant IVI Driver installer contact National Instruments directly or send an email to instrument driver ni com NILabVIEW Directory The full path of the most recently installed version of NI LabVIEW If LabVIEW is already installed on the system the installer will use that directory otherwise the installer will use its default directory NI LabWindows CVI Directory The full path of the most recently installed version of NI LabWindows CVI If LabWindows CVI is a
5. These files are not in the same directory as the p file The import libraries are in the IVI Lib msc and IVI Lib bc subdirectories The DLL is in the IVI bin subdirectory The installation program adds the IvI bin directory to the PATH environment variable so that the DLL can be found using the standard Windows DLL search algorithm If the p file is under the IVI framework directory LabWindows CVI can find the appropriate import library If LabWindows CVI finds the import library it gives it precedence over the c file as the program file for the instrument driver LabWindows CVI User Manual 5 2 ni com Chapter 5 Using Instrument Drivers Loading Unloading Instrument Drivers You can load and unload instrument drivers manually using the Instruments folder in the Library Tree or using the Instrument menu Instrument drivers loaded through the Instruments Folder or Instrument menu do not have to be listed in the project and you can load or unload them at any time except during program execution You also can load instrument drivers by dropping p files onto the Library Tree directly To incorporate instrument drivers into the project select File Add to Project in a Function Panel window or the Function Tree Editor or select Edit Add Files to Project in the Workspace window If you drop the p file onto a project in the Project Tree LabWindows CVI adds the file to the project and loads the instrument driver if the project is
6. Window Close All Use this command to close all open windows within the Window Confinement Region This command does not close released windows Window Workspace Use this command to change the keyboard focus to the Workspace trees or to activate the Workspace window from a different window Window Build Errors If you attempt to build a project and the project has build errors such as syntax or link errors the Build Errors window contains a list of the errors To bring the Build Errors window to the front for viewing select Window Build Errors You can double click an error in the Build Errors window to highlight the line of code where the error occurred The context menu in the Build Errors window contains the following items Clear Window Removes all items from the Build Errors window Copy Item Copies a single highlighted item to the clipboard Copy All Items Copies all items in the Build Errors window to the clipboard Save to File Saves the contents of the Build Errors window to a text file Goto Item Highlights the selected line of code Release Confine Window Releases the window from the Output Window Region if confined Confines the window into the Output Window Region if released Hide Confined Error Windows Removes all windows from the Output Window Region To access the context menu right click an empty area of the Build Errors window Window Run Time Errors If you attempt to run a proje
7. eese 4 21 Build Generate Prototypes s aoi ae enne enne 4 21 Build Next Previous Error Item eese 4 21 Build Build Errors in Next File essere 4 21 Run Menu for the Source and Interactive Execution Windows sssss 4 22 Introduction to Breakpoints and Watch Expressions ceescceseeceneeeeeeenee 4 22 Breakpoint State iei deer eme a iai iea 4 22 Setting and Clearing Breakpoints ssesseeeee 4 23 Conditional Breakpoint eeesseeeeeeeeenen eee 4 23 Watch EXpressions uie HU Het ed ase reiecit 4 23 Run Run Interactive Statements eese 4 24 Run Time Error Reporting eese 4 24 Ru Go to CUfISQE racer crece rte etr eet esae e ode RE ERAI eS 4 24 Run Set Next Statement eret dee eee tes 4 25 Run Toggle Breakpoint eeeesseeeseeeseeeseeeee eene akaa te enne nnne 4 25 Run View Variable Value essere 4 25 Run Add Watch Expression escccesccesscesseeeseecececeseeeeaecsceseaeeeateseaeeeaeeeaee 4 25 Run Evaluate Data Tooltip essent 4 25 Instrument Menu for the Source and Interactive Execution Windows 4 25 Library Menu for the Source and Interactive Execution Windows 4 26 National Instruments Corporation xi LabWindows CVI User Manual Contents Tools M
8. essere 3 27 Help Control Help ote tem 3 27 National Instruments Corporation ix LabWindows CVI User Manual Contents Chapter 4 Source and Interactive Execution Windows source WINDOWS ss rcr eI TRA ERE X ERREUR ES duets EY ERE EE E oa ARR VER Re ROUTE 4 1 Notification of External Modification ccccccccccssecceesesssceccceessseeecccesssaeeceeesstsseeceeeess 4 1 Context Menus in Source Windows cccccccccsssssecccesssssceccecesseeecceeessnseeecesesseeeeeeeeses 4 2 Interactive Execution Window cccccccccccsssccceessssseeccesssssseecccesssseececcsssseeececestssseeeeeees 4 3 Using Subwindows wi 5 ed etes habete DT RT 4 4 Selecting Text in the Source and Interactive Execution Windows 4 5 File Menu for the Source and Interactive Execution Windows eese 4 7 File New Open Save Save All Most Recently Closed Files and Exit LabWirndows CVL iuii eere errans NaN 4 7 File Open Quoted Text eager erret rete tien ie er eU 4 7 File Save As Save Copy As Add File to Project and Read Only 4 7 Fale lose 45255 nie eite ote see tree verit eerta 4 7 File Printz annee e a ted 4 7 Edit Menu for the Source and Interactive Execution Windows cccsscccceeessseeeeeees 4 8 Edit Undo and Redo eccesccccccsssssecccccesssnceeccesssneececesessseeecesessaeeecesessteeeeeees 4 8 Edit Cut nd Copy rr ee rere rte ne rr ve es 4 8
9. CVI DLL is defined if target type is Dynamic Link Library e CVI LIB is defined if target type is Static Library e LINK CVIRTE is defined if the project run time support is Full Run Time Engine The target will link to cvirte d11 e LINK INSTRSUP is defined if the project run time support is Instrument Driver Only The target will link to instrsup dl1 LINK CVI LVRT is defined if the project run time support is LabVIEW Real Time Only The target will link to cvi 1vrt dl1 e DEFALIGNis defined to the default structure alignment 8 for Microsoft 1 for Borland e NI VC is defined to 220 if in Microsoft Visual C C compatibility mode e NI BC is defined to 451 if in Borland C C compatibility mode WINDOWS i WIN32 _WIN32 WIN32 e LISNITS e M IX86 is defined to 400 e FLAT isdefined to 1 CVI USE FUNCS FOR VARS e PUSHPOP SUPPORTED e LabWindows CVI does not define _MSC_VER or BORLANDC The external compilers each define one of these macros If you port code originally developed under one of these external compilers to LabWindows CVI you might have to manually define one of these macros National Instruments Corporation 2 69 LabWindows CVI User Manual Chapter 2 Workspace Window Options Change Shortcut Keys Use this dialog box to reassign shortcut keys Window Contains all of the windows in the LabWindows CVI environment Current Shortcut Keys Li
10. Chapter 8 Function Panel Editor Window Menu for the Function Panel Editor The Window menu for the Function Panel Editor works in the same way as the Window menu for the Workspace window For more information about these commands refer to the Window Menu for the Workspace Window section of Chapter 2 Workspace Window Options Menu for the Function Panel Editor Use the commands in the Options menu to invoke the Function Tree Editor operate the function panel or toggle the scroll bars Options Data Types Use the Data Types command to specify the names of user defined data types Data types you specify with the Data Types command appear in the Data Type ring control on the Edit Control dialog boxes for input slide binary ring output and global variable controls yl Note The h file for the instrument driver must define the types that you specify with the Data Types command When you select Options Data Types the Edit Data Type List dialog box appears The items in the Edit Data Type List dialog box are as follows e Type Specifies the name of a user defined data type e The list box in the dialog box displays the currently available user defined data types Intrinsic Data Type Allows you to associate each user defined data type with one of the intrinsic C data types that you can use in a numeric control If you select an item other than None you can use the user defined data type as the data type for a numeric
11. Contents About This Manual GIRO RR TERR c xxi Related Documentation esesseeeeeeeeeeee nn n nnne nnne nennen nene nnn nnn nnne ss sese nena xxii Chapter 1 Components of LabWindows CVI Standard Libraries ned te tepida Rede 1 2 LabWindows CVI Environment eese 1 2 How to Create Applications with LabWindows CVI eee 1 3 Creating a User Interface uve eem e dede erre 1 4 Creating Programs and DLLs eeeeeeeeeeeeeeeneneeeneen een 1 4 Chapter 2 Workspace Window Workspace Window Overview sseeseseeseeseeseeenreneen nennen nennen ener 2 1 Opening and Loading Files Projects and Workspaces sese 2 5 File Menu for the Workspace Window eese emen renns 2 5 File New auctae merger i E 2 5 Pils Open eicere atn oartealiieot et UI RH Rs 2 6 Files Save AL ua nitate eaten etnies 2 6 Files Set Active Project aec eee nee entere nee enge ere eee aT 2 6 File Sayve Ptoject Ji iet Reo eo e ene eee tee eir de 2 7 File Save Project As eere tette eere Rennen Rer ITERAR 2 7 PilesSave WOrkspace onere ete ere e rego o edge een 2 7 File Auto Save Workspace 0 cece eeeeseeseeeseesceeseceeeeaecssceaeeseeeseseeeeaesneeeaees 2 7 File Most Recently Closed Files eene 2 7 File Exit LabWindows CVI eseeseseeeeeeeeeeeenee nennen ene 2 7 Edit Menu for the Worksp
12. Set this option to If Needed to include the DataSocket support files in your distribution only if your project uses the DataSocket Library Set this option to Always to include the DataSocket files in your distribution regardless of whether your project uses the DataSocket Library Set this option to Never if you do not want to include DataSocket files in your distribution DataSocket requires Internet Explorer 5 0 or later installed on the target machine to execute properly Install NI Report Support Set this option to If Needed to include the NI Report support files and ActiveX server in your distribution only if your project uses the NI Report instrument driver Set this option to Always to include the NI Report files and ActiveX server in your distribution regardless of whether your project uses the NI Report instrument driver Set this option to Never if you do not want to include NI Report files in your distribution Install Low Level Support Driver Selects whether to install the LabWindows CVI low level support driver on the user s computer The Utility Library functions shown in the following table require the LabWindows CVI low level driver If you use any of these functions in your application you must enable this option Platforms that Require the Low Level Function Support Driver inp Windows 2000 NT XP inpw Windows 2000 NT XP outp Windows 2000 NT XP outpw
13. The new help style uses the standard Windows character set and provides help for each individual function panel In addition the new help style automatically generates control name and data type information when displaying control help and automatically generates a function prototype when displaying function help Also the help text editor for the new style help uses word wrap mode Changing the help style changes only how the program interprets help If you use special extended ASCII characters in your help and then change to the new style you must change the help text to a Windows compatible character set Use the new help style whenever possible National Instruments Corporation 7 9 LabWindows CVI User Manual Chapter 7 Function Tree Editor Options Transfer Window Help to Function Help Transfer Window Help to Function Help helps you convert function panels from old to new style For each Function Panel window the window help text is transferred to the first function unless the function already has help text Options Generate Function Prototypes Generate Function Prototypes creates an untitled h file that contains prototypes for the functions in the function tree Options Generate Documentation Generate Documentation creates a window that contains a doc file for the function panel file Options Generate Windows Help Generate Windows Help creates a Windows help file h1p help project file pj and two sour
14. Transport Control Protocol TCP DataSocket Windows Dynamic Data Exchange DDE communication File I O Data formatting ANSIC Analysis or Advanced Analysis available in the Full Development System e A graphical User Interface Editor CodeBuilder wizard and library for building displaying and controlling a graphical user interface e A wizard and library for controlling ActiveX servers e A wizard and library for creating IVI instrument drivers which are highly structured VXIplug amp play compatible instrument drivers that use an attribute model to enable advanced features such as state caching simulation and compatibility with generic instrument classes e A set of instrument drivers that contains high level functions and interactive function panels for controlling specific instruments e A tool for creating and editing NI DAQmx tasks e A tool for creating instrument control tasks National Instruments Corporation 1 1 LabWindows CVI User Manual Chapter 1 Components of LabWindows CVI e A development environment with windows to manage projects and source code with complete editing debugging and user protection features Standard Libraries LabWindows CVI includes the following standard libraries e User Interface Library Analysis Library Advanced Analysis Library e RS 232 Library e NI DAQmx Library Traditional NI DAQ Library e GPIB GPIB 488 2 Library e VISA Library e IVI Libr
15. 2 61 preprocessing 4 37 required in project file list 2 4 Source option Add Files to Project command 2 9 Source window Build menu 4 20 context menus 4 2 Edit menu 4 8 File menu 4 7 Instrument menu 4 25 Library menu 4 26 notification of external modification 4 1 ni com opening with New command 2 5 with Open command 2 6 Options menu 4 27 purpose and use 1 3 4 1 Run menu 4 22 selecting text 4 5 subwindows 4 4 Tools menu 4 26 View menu 4 16 Window menu 4 27 space character difference from NUL byte 10 1 11 3 Specify External Process 2 42 stack size setting 2 65 Stack Trace command 2 41 standard libraries 1 2 startup options for LabWindows CVI table A 1 static libraries creating 2 13 target settings 2 23 status dialog box displaying 2 66 Step Into command 2 40 Step Over command 2 40 Stop on first file with errors option 2 68 String Display command 10 8 String Display window Edit menu 11 4 File menu 11 4 Format menu 11 5 Help menu 11 6 multi dimensional strings 11 3 Options menu 11 6 purpose and use 1 3 11 3 Run menu 11 5 View menu 11 5 Window menu 11 6 structures child structure 10 2 parent structure 10 2 National Instruments Corporation Index pointer linked structures 10 7 replacing 10 7 Retrace Pointer Chain command 10 7 subwindows in Source and Interactive Execution windows 4 4 support technical B 1 symbols options for exporting symbols in
16. Revert to Default Panel Size The Revert to Default Panel Size command sizes and positions the function panel so that it fills up the exact default Function Panel window size Options Panels Movable Use the Panels Movable command to specify whether panels are movable within the Function Panel Editor Panels are never movable in operate mode Options Toggle Scroll Bars The Toggle Scroll Bars command adds or removes horizontal and vertical scroll bars from a function panel Options Open Function Panels in New Window Use this command to open a new Function Panel window for every function panel you open Options Edit Function Tree The Edit Function Tree command opens the Function Tree Editor Options Operate Function Panel Use the Operate Function Panel command to operate the current Function Panel window National Instruments Corporation 8 13 LabWindows CVI User Manual Chapter 8 Function Panel Editor Options Save in XML Format This command works in the same way as the command for the Function Tree Editor Refer to the Options Menu for the Function Tree Editor section of Chapter 7 Function Tree Editor Options Load from XML Format This command works in the same way as the command for the Function Tree Editor Refer to the Options Menu for the Function Tree Editor section of Chapter 7 Function Tree Editor Help Menu for the Function Panel Editor The Help menu for the Function Panel Editor works in the sa
17. Use commands in the Options menu to set preferences in the LabWindows CVI environment Options Environment The Environment command opens the Environment dialog box you can use to set the following options e Hide Windows Hides all LabWindows CVI windows until execution terminates or a breakpoint occurs e Use Only One Browse Info Window Overwrites the current browse info window each time you select a new file function variable data type or macro National Instruments Corporation 2 61 LabWindows CVI User Manual Chapter 2 Workspace Window Save Changes before Debugging Sets LabWindows CVI to never save modified files to always save modified files or to ask whether to save modified files before debugging Lines in Debug Output Window Shows the last n number of lines that you specify Bring Debug Output Window to Front whenever Modified Allows LabWindows CVI to bring the Debug Output window to the front whenever your program adds text to the window Use Console Window for Standard I O when Debugging Allows LabWindows CVI to use the Microsoft DOS console window for displaying output and receiving input while you debug a project Copy Standard I O to Debug Output Window Copies the contents of the Standard I O window to the Debug Output You must enable this option prior to debugging in order for LabWindows CVI to copy the contents to the Debug Output window Enable Data ToolTips Allows LabWindow
18. Where to Copy DLL option 2 18 documentation conventions used in manual xxi online library B 1 related documentation xxii documenting instrument drivers 5 15 Down Call Stack command 2 42 drivers instrument B 1 software B 1 DSTRules configuration option A 4 E Edit ActiveX Server command 2 48 Edit Breakpoint dialog box 2 41 Edit Character command 11 4 Edit command 2 44 Edit Control command 8 3 Edit Control dialog box Control Appearance section 3 10 Control Settings section 3 9 Edit Label Value Pairs dialog box 3 10 Label Appearance section 3 10 Quick Edit Window 3 10 Source Code Connection section 3 9 Edit Custom Controls command 3 11 Edit Custom Controls dialog box 3 12 Edit Data Type List dialog box 8 12 Edit Function command 8 4 Edit Function Panel command 4 27 6 15 9 5 Edit Function Panel Window command 7 2 Edit Function Tree command 8 13 9 5 Edit Instrument dialog box 2 44 Edit Help command 7 2 Edit Instrument Attributes command 4 26 Edit Instrument dialog box 2 44 Edit Label Value Pairs dialog box 3 10 Edit menu Array Display window Edit Value command 11 4 National Instruments Corporation l 9 Index Find command 11 4 Goto command 11 4 Function Panel Editor Change Control Type command 8 3 Control Coordinates command 8 4 Control Help command 8 5 Copy Controls command 8 3 Customize Controls command 8 4 Cut controls command 8 3 Edit Control command 8 3 Edi
19. You also can register for instructor led hands on courses at locations around the world e System Integration If you have time constraints limited in house technical resources or other project challenges NI Alliance Program members can help To learn more call your local NI office or visit ni com alliance If you searched ni com and could not find the answers you need contact your local office or NI corporate headquarters Phone numbers for our worldwide offices are listed at the front of this manual You also can visit the Worldwide Offices section of ni com niglobal to access the branch office Web sites which provide up to date contact information support phone numbers email addresses and current events National Instruments Corporation B 1 LabWindows CVI User Manual Glossary A active window Array Display auto exclusion binary control breakpoint button C checkbox click Clipboard CodeBuilder common control compiler define National Instruments Corporation G 1 The window that user input affects at a given moment The title of an active window is highlighted A window for viewing and editing numeric arrays A mechanism that prevents existing lines from executing in the Interactive Execution window A function panel control that resembles a physical on off switch and can produce one of two values depending on the position of the switch An interruption in the execution
20. and save workspace cws files A project contains a list of files your application uses A workspace file contains the settings that do not affect the way a project builds Workspaces can contain multiple projects User Interface Editor Use the User Interface Editor to build graphical user interfaces with pull down menus dialog boxes controls graphs and strip charts and save them to user interface resource uir files Source window Use Source windows to create edit run debug and save source code Interactive Execution window Use the Interactive Execution window to execute selected portions of code You do not need to have a complete program in the Interactive Execution window as is the case in a Source window For instance you can execute variable declarations and assignment statements in C without declaring a main function Function panels Use function panels to interactively execute library functions and insert code into a Source window Variables Array Display String Display and Watch windows Use these windows to debug programs You can view values of program variables in the Variables and Watch windows The Array Display and String Display windows show contents of arrays and string variables at breakpoints Function Tree Editor Use the Function Tree Editor to build the tree structure of function panel files Function Panel Editor windows Use Function Panel Editor windows to build function panels Fun
21. background color child panel frame color and child panel title bar color To change each of these three options in the User Interface Editor you can use the Paintbrush tool on the background frame or title bar of a panel To set these colors programmatically use SetPanelAttribute with the ATTR_BACKCOLOR ATTR FRAME COLOR and ATTR TITLE BACKCOLOR attributes Use the Preferences for New Controls section of the Editor Preferences dialog box to set initial attribute values for each control that you create in the User Interface Editor e Control Text Style Sets the initial font and text style for all new controls e Label Text Style Sets the initial font and text style for all labels Click More to open the Other User Interface Editor Preferences dialog box Other User Interface Editor Preferences e Use the Undo Preferences section of the Other User Interface Editor Preferences dialog box to set the number of actions you can undo for each file If you want the undo buffer to empty every time you save a file select Purge undo actions when saving file e Use the Constant Name Assignment section to set preferences for constant name assignment when you do not assign constant names yourself Constant names link user GUI objects and your program The User Interface Editor writes all assigned constant names to a header file corresponding to the uir file Select Immediately assign constant names for new objects to generate a constan
22. contents of the set letters a z A Z matches all letters and the character LabWindows CVI User Manual 4 14 ni com Chapter 4 Source and Interactive Execution Windows Purpose Character Description Example Special characters t Match any tab t3 matches every backslash t character occurrence of a tab character followed by a 3 x Match any x2a matches every backslash x character specified occurrence of the in hex character Include the matches every backslash subsequentregular occurrence of followed expression by character in the search Edit Replace The Replace command provides similar options as Find plus the option to replace one search string with another string In the Replace dialog box enter the text you want to find in Find What and enter in Replace With the new text you want to appear Specify the same options described in the Edit Find section Click Find Next to search for the next match of the search string The Replace button bar appears with the following options e Find Next Skips to the next occurrence of the search string without making a change e Replace Replaces the currently selected text and goes to the next occurrence of the search string e Replace All Finds and replaces all occurrences of the specified text without asking for confirmation e Stop Terminates the search leaving the keyboard cursor at the curr
23. instrument source instr c e instrument documentation instr doc e instrument function panels instr fp e instrument help instr hlp nstall to application directory no relative path e Instrument Include Files This group should contain only the instrument header file instr h nstall to application directory Set the relative path to N include e Instrument KnowledgeBase This group should contain the knowledge base file for the instrument instr kb Setthe group destination to VXI PnP Directory Setthe relative path to kbase National Instruments Corporation 2 35 LabWindows CVI User Manual Chapter 2 Workspace Window e Instrument Driver DLL This group should contain the instrument DLL nstall to application directory Setthe relative path to bin e Import Library Borland This group should contain the Borland C import library for your DLL instr lib nstall to application directory Set the relative path to 1lib be e Import Library Microsoft This group should contain the Microsoft Visual C import library for your DLL instr lib nstall to application directory Setthe relative path to lib msc Creating a Distribution Kit for IVI Instrument Drivers 5 Note If you use the Create Distribution Kit option to create an installer for an IVI instrument driver your installer will not be compliant with the inst
24. value not set C HKEY CURRENT USER ab CompatiblityMode REG Sz Msvc C3 HKEY LOCAL MACHINE RCVI Objects Installed REG DWORD 0x00000001 1 SOFTWARE lab Feature REG_SZ FDS oar National Instruments ab InstallDir REG SZ C Program Files Natione 2 Common ab ProgramFolder REG SZ National InstrumentsVCV e ea i 8 vx1 Installed REG_DWORD 0x00000001 1 4 AutoloadLibraries E User Info H CVI Run Time Engine evirte RegisteredApps My ComputeriHKEY LOCAL MACHINEISOFTWARElNational Instruments C I 7 0 LA You do not have to include an unused configuration string in the Registry You must specify an absolute pathname including a drive letter for configuration strings that take a directory name LabWindows CVI User Manual A 2 ni com Appendix A Configuring LabWindows CVI Prompt before Shutdown Option When you click the X close button of the Workspace window LabWindows CVI displays a message box as shown in the following figure cw LabWindows C I Message Are you sure you want to quit LabWindows CVI Do not show this message again If you select Do not show this message again and later want to display the message box you can make a change to the following registry key where version is the version of the LabWindows CVI environment HKEY_CURRENT_USER Software National Instruments CVI version Enviro
25. 2 v Variables IDE x File Edit View Format Run Window Options Help 9 hquework e hquework begin next hquework begin next value ehquework gt begin gt next gt next Y hquework gt end ALI 00A6253C 2 00A62548 00A6259C Figure 10 2 Child Structure Pointer in a Chain View Retrace Pointer Chain Retrace Pointer Chain replaces the current structure with its parent Notice the presence of the left arrow icon after selecting Follow Pointer Chain in Figure 10 2 This indicates that the structure hquework gt begin gt next is a child structure in a chain Clicking the left arrow icon or selecting Retrace Pointer Chain causes the variable display to revert back as shown in Figure 10 1 National Instruments Corporation 10 7 LabWindows CVI User Manual Chapter 10 Variables and Watch Windows S Note Retrace Pointer Chain is valid only when you displayed the current structure with Follow Pointer Chain View Go to Execution Position The Go to Execution Position command is available only in the Variables window when the currently highlighted item is a function name or the name of a formal parameter or local variable The command opens the Source window that contains the call to the function in which your program suspended execution and highlights the function call To execute the Go to Execution Position command you can double click the function name or press Ctrl P if you have de
26. 2 60 ni com Chapter 2 Workspace Window Window Function Panel All open Function Panel windows dynamically appear in the Window menu Select a window from the Function Panel submenu to bring that window to the front Window Function Tree All open Function Tree files dynamically appear in the Window menu If the file is in the Window Confinement Region only the filename appears If the file is not in the Window Confinement Region the full pathname appears Select a p file from the Function Tree submenu to bring the corresponding Function Tree Editor window to the front Window Help Editor All open Help Editor windows dynamically appear in the Window menu Select a window from the Help Editor submenu to bring that Help Editor window to the front Window lInteractive Execution Use the Interactive Execution command to bring the Interactive Execution window to the front Unlike the Source window you can execute incomplete programs in the Interactive Execution window For example you can execute variable declarations and assignment statements in C without declaring a main function Window Open Source Files The Window menu lists open source files at the bottom If the file is in the Window Confinement Region only the filename appears If the file is not in the Window Confinement Region the full pathname appears Select a source file from this menu to bring its window to the front Options Menu for the Workspace Window
27. 3 14 Variables and Watch windows Array Display command 10 8 11 1 Close Variable command 10 2 10 6 Expand Variable command 10 2 10 6 Follow Pointer Chain command 10 2 10 7 Go to Definition command 10 8 Go to Execution Position command 10 8 Graphical Array View command 10 9 Memory Display command View menu 10 8 Retrace Pointer Chain command 10 2 10 7 LabWindows CVI User Manual Index Source Code Browser command 10 8 String Display command 10 8 11 3 Workspace window Columns command 2 10 Library Tree command 2 9 Project Tree command 2 9 Toolbar command 2 10 Window Confinement Region command 2 10 View Variable Value command 6 5 6 11 Code menu Array Display window 11 1 String Display window 11 3 Variables window 10 1 Run menu Array Display window 11 1 Source and Interactive Execution windows 4 25 String Display window 11 3 Variables window 10 1 VISA data types 5 11 VXIplug amp play instrument driver files 5 2 W Watch command 2 60 10 2 watch variables expressions Add Edit Watch Expression dialog box 10 2 applicable only in source code modules note 4 22 purpose and use 4 22 selecting 10 2 suspending program execution conditionally 4 23 Watch window Add Edit Watch Expression dialog box 10 2 Edit menu 10 3 File menu 10 3 LabWindows CVI User Manual l 32 Format menu 10 12 Help menu 10 14 opening 10 2 Options menu 10 13 purpose and use 1 3 10 2 Run menu 10 12
28. Control dialog box appears National Instruments Corporation 8 9 LabWindows CVI User Manual Chapter 8 Function Panel Editor The following items appear in the Create Return Value Control dialog box e Control Label The label that appears above the control on the function panel e Data Type The data type of the variable or value displayed in the return value control The data type can be any data type other than an array type or a meta data type Display Format The format in which the return value control displays values You can display integers longs shorts and chars in decimal hexadecimal octal or ASCII format You can display doubles and floats in either scientific or floating point notation If the data type is char or void the display format control is not valid e Control Width The width of the control in pixels The minimum allowed is 24 The maximum allowed is 2 048 The default control width is 145 pixels Create Global Variable A global variable control displays the value of a global variable defined in LabWindows CVI when users operate the function panel When you select Create Global Variable the Create Global Variable Control dialog box appears The following items appear in the Create Global Variable Control dialog box e Control Label The label that appears above the control on the function panel e Global Variable Name The name of the variable whose contents are shown in the global contr
29. Cut Panel commands follow these steps 1 Select the panel you want to place on the clipboard by clicking the panel or pressing lt Shift Ctrl gt and the left or right arrow key until the panel is highlighted 2 Select Edit Copy Panel or Cut Panel Edit Menu Bars The Menu Bars command opens the Menu Bar List dialog box The list contains all of the menu bars in the resource file listed by constant prefix The Menu Bar List dialog box has the following options e Create Opens a new Edit Menu Bar dialog box After you create a menu bar it appears below the currently selected menu bar in the menu bar list Edit Opens the Edit Menu Bar dialog box for the selected menu bar e Cut Deletes the currently highlighted item in the menu bar list and copies it to the menu bar clipboard e Copy Copies the currently highlighted item in the menu bar list to the menu bar clipboard LabWindows CVI User Manual 3 6 ni com Chapter 3 User Interface Editor e Paste Inserts the contents of the menu bar clipboard to the menu bar list When you use the Paste button the menu bar is inserted above the currently highlighted item in the menu bar list e Done Closes the Menu Bar List dialog box Edit Menu Bar The Edit Menu Bar dialog box contains the following options e Menu Bar Constant Prefix Sets the resource ID for the menu bar Pass this resource ID to LoadMenuBar to load the menu bar into memory The menu bar const
30. Destination to Windows System Directory and the Relative Path to Test you expect the Group Destination to resolve to C Windows NSystem and the relative path to resolve to C Windows Test However due to the behavior of the installer the relative path resolves to C Test because the common Windows locations behave as if they were one single directory no matter how many elements are in the path LabWindows CVI User Manual 2 32 ni com Chapter 2 Workspace Window Set the Group Destination to Windows Directory and set the Relative Path to Test to obtain the expected location Distribute Objects Libraries for Both Compilers Helps distribute object files static libraries and DLL import libraries for both compatible external compilers When enabled this option affects all the obj and 1ib files listed in the selected file group LabWindows CVI includes two versions of each file in the distribution kit LabWindows CVI expects these versions to be in subdirectories under the specified location of each file The subdirectories must be named msvc or borland For example if you specify the file c myapp distr big 1ib in a file group and you enable the Distribute Objects Libraries for Both Compilers option when LabWindows CVI creates the distribution kit you must have the following files on your disk c myapp distr msvc big lib c myapp distr borland big 1lib To have LabWindows CVI create these files automatically enable th
31. Edit P ste uisei IA CRT WR EE i La E E IIS 4 8 Edit Del te e onec et D 4 9 Edit Select ATL sin SE Rau de re e 4 9 Edit Clear WandoWw 44d etreee ett a eda iv erit er 4 9 Edit Toggle Exclusion tette rte eren eene t 4 9 Edit Resolve All Excluded Lines esee 4 9 Edit Insert Constr ct er ee er tertie esi e e eto e ER re evade ese cado den 4 10 Edit Balance Edit Diff Edit Go to Definition ccccccccccssseccccessssseccceessnsecececcssseeecceeeesseeeceeeesseeeees 4 11 Edit Go to Next Reference 5 5 uec petet testen eerie E 4 11 Edit Go B ck on deter te etre a eraterde ies 4 11 Edit Show Completions eese nennen nennen 4 11 Edit SHOW Prototypeus entere ree be edet rette 4 11 Edit Finde eie nta ie D RR E e RIEN ETT 4 12 Regular Expression Characters see 4 13 Edit Replace epe reete ERG ara 4 15 Edit Quick Search iet eee EN deed 4 16 Edit9 Next Elle eA ettet ate ae der e IE e epe erae 4 16 View Menu for the Source and Interactive Execution Windows esses 4 16 Views Line Numbers nee ERE E ERE ae TENERE SNe 4 16 Naew lLane Icons sutiteeeetteee Iter En vers 4 16 View Toolbar 2 rre heir dae ER e siedieveveenslecassssselecescdevedes 4 16 Vie W L1ne 4 Antes tie ccrta lia lr erret E 4 17 View Beginning End of Selection 4 17 LabWindows CVI User Manual X ni com Contents Niews TOs ele Tae iu
32. GUI interface provided by your source code control system Tools Source Code Browser The Source Code Browser is a cross reference tool that lists all files functions variables data types and macros in a program You can use the browser to identify how different parts of a program interact with each other The Identifier Filename box lists the last eight items accessed Browse information is not available in Release configuration To access the Source Code Browser select Tools Source Code Browser View Source Code Browser or press lt Ctrl F1 gt while placing the cursor over functions variables data types and macros in code You also can enable the Generate source code browse information option in the Build Options dialog box Generate source code browse information generates browse information in the Source Code Browser at compile time You can find a definition by selecting Edit Go to Definition go to the next reference by selecting Edit Go to Next Reference or return to the previous location by selecting Edit Go Back You also can type a substring or the entire name of the file function variable data type or macro in the Identifier Filename box Wildcards are not supported and the search is not case sensitive All search matches appear in the Matches found box Browsing on Files Under the Views column you can choose one of the following items Functions The functions defined in the file The line number where the
33. Kit dialog box also includes the following options e Advanced Opens the Advanced Distribution Kit Options dialog box e Default Resets all options in the Create Distribution Kit dialog box to their default values When you create a new distribution kit you can click Default to undo changes you have made to the options in the dialog box hy Note When you use the Create Distribution Kit dialog box to modify an existing distribution kit Default replaces your existing file groupings and settings with default values If you click Default in error click Cancel in the dialog box that appears to prevent this change to your distribution kit e Build Builds your distribution kit Cancel Cancels the Create Distribution Kit operation Referto the Customizing Create Distribution Kit Installers in LabWindows CVI document for information about how you can customize your distribution kit Creating a Distribution Kit for VXlp ug amp play Instrument Drivers To create a distribution kit that properly installs your VXIplug amp play instrument driver you can use the Options Create DLL Project command in the Function Tree Editor to automatically generate a LabWindows CVI project for your instrument driver DLL If you enable the Options IVI VXI plug amp play Style command in the Function Tree Editor when you create your project the project created will contain all the necessary Distribution Kit settings You must add your Soft Front Panel ex
34. Manual contains detailed descriptions of LabWindows CVI features and functionality To use this manual effectively you should be familiar with the Getting Started with LabWindows CVI manual DOS and Windows fundamentals bold italic monospace monospace bold monospace italic The following conventions appear in this manual Square brackets enclose optional items for example response The symbol leads you through nested menu items and dialog box options to a final action The sequence File Page Setup Options directs you to pull down the File menu select the Page Setup item and select Options from the last dialog box This icon denotes a note which alerts you to important information This icon denotes a caution which advises you of precautions to take to avoid injury data loss or a system crash Bold text denotes items that you must select or click in the software such as menu items and dialog box options Bold text also denotes parameter names Italic text denotes variables emphasis a cross reference or an introduction to a key concept This font also denotes text that is a placeholder for a word or value that you must supply Text in this font denotes text or characters that you should enter from the keyboard sections of code programming examples and syntax examples This font also is used for the proper names of disk drives paths directories programs subprograms subroutines devic
35. Panel grid lines do not appear in operate mode National Instruments Corporation 3 1 LabWindows CVI User Manual Chapter 3 User Interface Editor IS 3 P Using the Co Use the editing tool to select position and size objects Use the labeling tool to modify text associated with objects Use the coloring tool to color objects Right click the panel to view a color palette from which you can choose a color Clicking the panel automatically colors the object with the last color you selected in the color palette Hold down the lt Ctrl gt key on the panel to change the coloring tool to an eyedropper tool When you click an object with the eyedropper tool the current color of the tool becomes the color of that object Then you can apply that object s color to another object ntext Menus of the User Interface Editor To open a context menu right click the User Interface Editor The type of context menu that appears depends on the surface you click The following list describes the areas in the User Interface Editor that open context menus e Ifyou click the User Interface Editor background a context menu appears with options to create a panel or a menu bar e Ifyou click a panel background a context menu appears with options to create each of the control types available in LabWindows CVI e If youclick a control a context menu appears with commands with the following options Generate Control Callback Gene
36. Panel window that precedes the current Function Panel window in the same function free The rotation order for the function tree is circular If the first Function Panel window in the tree is visible on the screen selecting Previous Function Panel Window displays the last Function Panel window in the tree If the last Function Panel window in the tree is visible selecting Next Function Panel Window displays the first Function Panel window in the tree View Next Function Panel Window The Next Function Panel Window command opens the Function Panel window that follows the current Function Panel window in the same function tree View First Function Panel Window The First Function Panel Window command displays the first Function Panel window in the function tree View Last Function Panel Window The Last Function Panel Window command displays the last Function Panel window in the function tree Instrument Menu for Function Panel Windows The Instrument menu for Function Panel windows works in the same way as the Instrument menu for the Workspace window For more information about these commands refer to the Instrument Menu for the Workspace Window section of Chapter 2 Workspace Window Library Menu for Function Panel Windows The Library menu for Function Panel windows works in the same way as the Library menu for the Workspace window For more information about these commands refer to the Library Menu for the Workspace Win
37. Prompt for include file paths 2 66 Require function prototypes 2 67 4 4 Require return values for non void functions 2 67 Show build error window for warnings 68 Stop on first file with errors 2 68 Track include file dependencies 2 66 Uninitialized local variables detection 66 compiler support external See External Compiler Support dialog box compiling files 4 20 conditional breakpoints 4 23 conditional expressions detecting assignments in 2 67 Configuration command submenu Build menu Debug option 2 11 Release option 2 11 configuring LabWindows CVI AppFontBold A 7 AppFontName A 7 AppFontSize A 7 date and time option DSTRules A 4 DialogFontBold A 5 DialogFontName A 5 DialogFontSize A 5 directory options cvidir A 4 EditorFontBold A 6 EditorFontName A 6 EditorFontSize A 6 MenuFontBold A 6 MenuFontName A 6 MenuFontSize A 6 MessageBoxFontBold A 7 MessageBoxFontName A 6 MessageBoxFontSize A 6 National Instruments Corporation l 5 Index setting A 2 startup options table A 1 string value for Registry figure A 2 timer options useDefaultTimer A 5 tmpdir A 4 Confine command 3 23 console application creating 2 16 Console Window using for standard I O when debugging 2 62 Constant Name option Edit Control dialog box 3 9 Edit Menu Bar dialog box 3 7 Edit Panel dialog box 3 8 constants assigning names 3 26 selecting user interface constants 6 7 contacting National Inst
38. Target Settings dialog box contains different controls depending on the item you check in Target Type submenu Target Settings for Executables When you set the Target Type to Executable and select Build Target Settings the Target Settings dialog box has the following options Application File The names of the executable files for the debug and release versions of your program Change the value of Application File to edit the filenames for the debug and release configurations You can use the Browse button to select an existing filename e Application Title A descriptive title for your program This title appears in the Start menu of Windows if you create a distribution kit This title also appears in the Windows Add Remove Programs dialog box e Application Icon File A file that contains a descriptive graphical icon for your program e Icon The graphical representation of the Application Icon File You can double click Icon to browse for an icon file on disk The sample program samples apps iconedit iconedit exe ships with LabWindows CVI so that you can create your own icon files LabWindows CVI User Manual 2 14 ni com Chapter 2 Workspace Window e Run Time Support The run time support for your stand alone executable If you select the Instrument Driver Only item your project does not link to the entire set of LabWindows CVI libraries but instead links to a smaller set of functions Stand alone executables you creat
39. Unload Select the Unload command to the Unload Instrument dialog box which contains a scrollable list of all the loaded instruments From this dialog box you can select one or more instrument drivers to unload Instrument Edit You can use the Edit command to edit an instrument driver program in a Source window or edit an instrument driver function tree in the Function Tree Editor When you select the Edit command the Edit Instrument dialog box appears The dialog box displays instrument drivers you loaded as part of the project or through the Instrument menu The Edit Instrument dialog box contains the following commands Show Info Displays the names of the current function panel file and the attached program file This command also shows whether these files are in the current project and if the program file is compiled The attached program file contains the functions that are called when users operate the function panel Attach and Edit Source lIf a c file with the same base name as the selected fp file exists in the same directory as the fp file LabWindows CVI loads compiles and attaches the c file as the instrument driver program file The c file appears in a new Source window If the file is not found LabWindows CVI prompts you to create a new source file Detach Program LabWindows CVI detaches the instrument driver program file from the fp file Reattach Program LabWindows CVI detaches the current instrument d
40. Up Call Stack command only during a breakpoint state Up Call Stack moves up one level in the function call stack Run Down Call Stack You can use the Down Call Stack command only during a breakpoint state Down Call Stack moves down one level in the function call stack Run Specify External Process This command applies only when you select Build Target Type Dynamic Link Library Use the Specify External Process command to specify a stand alone executable that uses your DLL When you execute the command a dialog box appears in which you enter the pathname and command line arguments to an external program The Run Project item in the Run menu then changes to Debug xxx exe where xxx exe is the filename of the external program When you execute the Debug xxx exe command LabWindows CVI starts the external process and attaches to it for debugging If you have set any breakpoints in the source files for the DLL LabWindows CVI honors them LabWindows CVI stores external program pathname and command line arguments in the workspace Run Execute The Execute command launches the executable for the active configuration without attaching the debugger to the executable You must create the executable using the Build Create menu item before you use this command This command is dimmed if the Target Type for the project is Dynamic Link Library or Static Library Run Command Line Use the Command Line command to enter the command line arg
41. Visual Basic include file from the h file of an instrument driver Use this command if you are porting an instrument driver to a DLL for use in Microsoft Visual Basic LabWindows CVI User Manual 4 30 ni com Chapter 4 Source and Interactive Execution Windows Options Generate Function Tree Use this command to generate a function tree from a header file This command opens a dialog box which contains the following options e Name TThe name of the instrument to generate e Prefix The common prefix for functions in the instrument For example if you have the following functions in the header file int DllExport __CFUNC MyInstrumentInit void int DIlExport _ CFUNC C MyInstrumentFormat char format int DllExport __CFUNC MyInstrumentClose void you should use MyInstrument as the prefix e Default Qualifier The default qualifier for functions in the instrument LabWindows CVI will include in the generated function tree only the functions with the default qualifier you specify or the specified default qualifier appended with c For example for the preceding functions you should use D11Export CFUNC as the default qualifier e FP File The absolute path of the generated function panel file Header File The absolute path of the generated header file This header file is identical to the one used for generating the function tree except that all the special tags are removed This field is optional LabWin
42. When you search in help text you cannot search in any of the other items at the same time LabWindows CVI User Manual 8 4 ni com Chapter 8 Function Panel Editor The search begins at the function tree node for the current Function Panel Editor The Find command always searches all controls on the panel regardless of whether any are currently selected Ifthe Find command opens the Help Editor and you do not use the button bar you must return to the Function Panel Editor or Function Tree Editor to continue searching throughout the function panel file The Find command in the Help Editor window searches only within the window Edit Replace The Replace command works in the same way as the Find command except that you can replace the search string with another string Edit Control Help The Control Help command opens the Help Editor in which you can add or modify context sensitive help for a control Edit Function Help or Window Help This command opens the Help Editor in which you can add or modify context sensitive help for the entire function panel Function Help corresponds to new style help and Window Help corresponds to old style help Create Menu for the Function Panel Editor Use the Create menu to add controls function panels or a common control panel to a Function Panel window You can create the following types of controls from the Create menu input slide binary ring numeric output return value global var
43. Width command 8 13 Load from XML Format command 8 14 National Instruments Corporation 1 21 Index Open Function Panels in New Window command 8 13 Operate Function Panel command 8 13 Panels Movable command 8 13 Revert to Default Panel Size command 8 13 Save in XML Format command 8 14 Toggle Scroll Bars command 8 13 Toolbar command 8 13 Function Panel window Change Format command 6 15 Default All command 6 14 Default Control command 6 14 Edit Function Panel command 6 15 Exclude Function command 6 14 Go to Source After Inserting Code 6 15 Open Function Panels in New Window command 6 15 Toggle Control Style command 6 15 Toolbar command 6 14 Function Tree Editor Create DLL Project command 7 10 FP File Format command 7 9 Generate DEF File command 7 10 Generate Documentation command 7 10 Generate Function Prototypes command 7 10 Generate ODL File command 7 10 Generate Windows Help command 7 10 Help Style command 7 9 IVI VXIplug amp play Style command 7 11 Load from XML Format command 7 12 Save in XML Format command 7 12 Transfer Window Help to Function Help command 7 10 LabWindows CVI User Manual LabWindows CVI User Manual Source and Interactive Execution windows Bracket Styles command 4 28 Colors command 4 28 Create Object File command 4 37 Editor Preferences command 4 27 Font command 4 28 Generate DLL Import Library command 4 30 Generate DLL Import Source command
44. Window Tools Menu for the Function Tree Editor Many of the commands in the Tools menu for the Function Tree Editor work in the same way as the Tools menu for the Workspace window For more information about these commands refer to the Window Menu for the Source and Interactive Execution Windows section of Chapter 4 Source and Interactive Execution Windows Use the commands in the Tools menu to generate function definitions and declarations into your source and include files jump to function definitions and declarations generate hpp files for the function tree and invoke the Create IVI Instrument Driver wizard and attribute editor Tools Generate C Wrapper Generate C Wrapper generates a hpp file for the function tree This file contains the definition of a C class for the instrument driver LabWindows CVI generates a wrapper function for each function in the function tree Required C member functions such as constructors and destructors also are generated The generated class references classes that are defined in ivibase hpp and iviexcpt hpp which are located in the cvi70 include LabWindows CVI User Manual 7 6 ni com Chapter 7 Function Tree Editor directory You can edit these classes to customize the generated wrapper class This command is available only for IVI drivers Tools Enable Auto Replace Enable Auto Replace enables the updating of instrument driver source files to reflect changes to function
45. a dynamic menu This menu contains a list of the loaded instrument drivers and commands to load unload and edit instruments When you load an instrument its name appears in the list When you unload an instrument its name disappears from the list When you select an instrument name in the Instrument menu you can access its function panels Instrument drivers listed in this menu also appear in the Instruments folder under the Library Tree Instrument Load When you select the Load command the Load Instrument dialog box appears In the dialog box the filename p appears in File name Always load instruments through the fp filename You cannot load an instrument driver unless a p file exists for it When you specify a p file to load LabWindows CVI also looks in the same directory for a program file with the same base filename If LabWindows CVI finds a program file it loads the instrument driver program along with the function panels For IVI and VXIplug amp play instrument drivers the program file can be in a different directory File Format Conversion If you load a p created with LabWindows for DOS a message appears indicating that LabWindows CVI is converting the p file to the current format You can use the dialog box that appears after the conversion to save the converted p file to disk National Instruments Corporation 2 43 LabWindows CVI User Manual Chapter 2 Workspace Window Instrument
46. a function panel from a function name or a portion of a function name Multiple Panels for One Function If the selected function appears in more than one Function Panel window LabWindows CVI displays a list of panels Select one by highlighting the panel name and pressing Enter or by double clicking the panel name Multiple Functions in One Function Panel Window If the selected function matches a Function Panel window that contains multiple function panels LabWindows CVI attempts to match the panel to function calls on the lines surrounding the selected call After the panel appears you can check how many lines were LabWindows CVI User Manual 4 18 ni com Chapter 4 Source and Interactive Execution Windows matched to the Function Panel window by looking at the Source window LabWindows CVI highlights the matched lines If you select multiple lines before executing the Recall Function Panel command all function calls in the selected lines must appear in one Function Panel window and the order in which the window generates the calls must be identical to the order in which they appear in the selected lines Otherwise an error message appears Syntax Requirements for the Recall Function Panel Command You do not need to compile the file before you invoke the Recall Function Panel command In fact the function call you select does not need to be syntactically valid The only requirement is that you must spell and capitalize the nam
47. a warning at each line of code that cannot be reached during the execution of your program For example LabWindows CVI reports a warning on the break statement in the following code switch intval case 4 return 0 break j e Detect unreferenced identifiers This option generates compiler warnings for identifiers that are not referenced in your program e Detect assignments in conditional expressions LabWindows CVI checks for possible errors in conditional expressions that can make the conditional expression an assignment e Require function prototypes This option requires you to precede all function references with a full prototype declaration A full prototype includes the function return type and the types of each parameter If a function has no parameters a full prototype must have the void keyword to indicate this case A new style function definition one in which you declare parameters directly in the parameter list can serve as a prototype Missing prototype errors can occur at the following places Q0 Function pointer declarations such as void fp whether used as a global local parameter array element or structure member Typedefs such as typedef void FUNTYPI DL A Old style function definitions in which you declare parameters outside of the parameter list that you do not precede with a full prototype Function call expressions such as p where p does not have a full pr
48. after a function name As you type in parameters the current parameter is highlighted Press Esc to remove the prototype from the screen Prototype information is taken from function panels and from browse info for user defined functions For browse info to be included you must compile the source code first Macros are included only if you have used or referenced the macros previously in the code National Instruments Corporation 4 11 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows Edit Find Use the Find command to locate specified text in your files When you select the Find command the Find dialog box opens Enter the text you want to find in Find What If you select text on a single line before you open the Find dialog box the selected text appears in Find What Otherwise the text you last searched for appears in the box To access a history of selections for Find What click the arrow to the right of Find What or use the up or down arrow keys on your keyboard Case Sensitive Finds only exact matches of the specified text For example if you specify CHR the Case Sensitive option finds CHR but not Chr Whole Word Finds the specified text only when the characters that surround it are spaces punctuation marks or other characters not considered part of a word LabWindows CVI treats the characters A through Z a through z 0 through 9 and underscore _ as part of a word Regular E
49. all Callback Function Name Valid for all except menu bars Label Valid for all except menu bars The search criterion you select determines the name of the second item in the Find UIR Objects dialog box Enter the text you want to search for into this control To view a list of all the strings in the file that match the current Search By criterion click the arrow to the right of the string control or use the up and down arrow keys e Find tem Specifies the types of UIR objects to search for e Wrap Continues the search at the beginning of the file after reaching the end of the file e CaseSensitive Finds only the instances of the specified text that match exactly National Instruments Corporation 3 13 LabWindows CVI User Manual Chapter 3 User Interface Editor e Whole Word Finds the specified text only when it is surrounded by spaces punctuation marks or other characters not part of a word LabWindows CVI treats the characters A through Z 0 through 9 and underscore _ as parts of a word e Regular Expression Causes LabWindows CVI to treat certain characters in the search string control as regular expression characters instead of literal characters Refer to the table in the Regular Expression Characters section of Chapter 4 Source and Interactive Execution Windows for a list Find Performs the search If any user interface objects match a different Find UIR Objects dialog box appears You can
50. and et e teet ei ge tae 5 10 Creating a User Defined Data Type see 5 10 User Defined Array Data Types sese 5 11 MISA Data Types z aceite e E RUE ERE eR 5 11 Input and Output Parameters sese 5 12 Return Values t deieluepReeerped uite n HO 5 13 Required Instrument Driver Functions 5 13 Building tbe Function Tree teen teret etie 5 14 Building the Function Panels eene 5 14 Writing the Function Code essere ener 5 14 Operating the Driver aite ett eng e decere epe 5 15 Testing the Instrument Driver ssessssseseeeeeeeeennee emen 5 15 Documenting the Driver eene 5 15 Chapter 6 Using Function Panels Accessing Function Panels serseri itn ee etre ee eri delere 6 1 Multiple Function Panels in a Window seseeeseseeeee enn 6 3 Generated Code Box eR ERU 6 3 Function Panel Controls e ete rte tt t e e rt e A 6 3 Specifying Return Value Control Parameters sse 6 3 Specifying Input Control Parameters essere 6 4 Specifying Numeric Control Parameters sse 6 4 Specifying Slide Control Parameters 6 4 Specifying Binary Control Parameters sesssssseseseeeeeeeeenee 6 4 Specifying Output Control Parameters esee 6 5 Using a Global Control eere ea eri eee na eh 6 5 Common Control Function Panel eene 6 5 Convenien
51. and use them in function panels You must declare user defined data types in the function panel file of an instrument driver and you must define the data type in the include file for the driver Declare user defined data types with the Data Types option in the Function Panel Editor For example you can define a wave orm var data type for an instrument driver to represent waveform data This waveform var data type could be a structure that contains an array of doubles to represent the individual points in the waveform a float for the time of the first point and a float for the time between points Creating a User Defined Data Type Complete the following steps to create a user defined data type for use in a function panel 1 Define the data type with a typedef statement in the instrument driver header file Using the previous example of the waveform var data type include the following code in the include file for the instrument driver LabWindows CVI User Manual 5 10 ni com Chapter 5 Using Instrument Drivers typedef struct double waveform arr 500 float t zero float t delta waveform var 2 Add the data type to the instrument driver function panel file using the Options Data Types command in the Function Panel Editor Make the waveform var data type available in the function panel file Select Options Data Types in the Function Panel Editor and enter waveform var in Type of the Edit Data Type List dialog box Click Add N
52. any of the other functions in the Traditional NI DAQ Library If you use an external compiler and want to use any of these libraries refer to Chapter 3 Compiler Linker Issues of the LabWindows CVI Programmer Reference Manual If you use the Create Distribution Kit command on a project that you link for instrument driver support only LabWindows CVI automatically selects Instrument Driver Only as the Run Time Engine Support National Instruments Corporation 2 15 LabWindows CVI User Manual Chapter 2 Workspace Window The following Utility Library functions are in instrsup dll Beep DateStr Delay SyncWait Timer TimeStr RoundRealToNearestInteger TruncateRealNumber InStandaloneExecutable CVIRTEHasBeenDetached instrsup d11 does not support the Standard Input Output window Functions such as FmtOut Or ScanIn return errors when you use them with instrsup dll All the functions in instrsup d11 are multithread safe Embed Project UIRs Embeds uir files into the executable Enabling this option allows you to ship only the executable instead of including the uir files also Make sure that you include all uir files loaded through LoadPanel or LoadPanelEx in your project if you want to ship only one executable If you pass an absolute filename to LoadPanel or LoadPane1Ex the function will always look on disk for the uir file If you pass a simple fi
53. bit DLL but not append it to the import library name This is in fact the convention used for VXIplug amp play and IVI instrument driver DLLs If you want to enter a different name for the import library disable the Use Default option Enter a name without any directory names Where to copy DLL This option instructs LabWindows CVI to copy the DLL to a different directory after creating it Choose from the following items Do not copy Windows System directory IVI Standard Root directory the bin directory under the IVI framework directory VXIplug amp play directory the bin directory under the VXIplug amp play framework directory e Run Time Support The run time support for your DLL If you select the Instrument Driver Only item or the LabVIEW Real Time Only item your project does not link to the entire set of LabWindows CVI libraries but instead links to a smaller set of functions DLLs you create with the Full Run Time Engine item selected use the LabWindows CVI Run time Engine DLL cvirte d11 DLLs you create with the Instrument Driver Only item selected use instrsup dll instead of cvirte dll The Instrument Driver Only option is particularly useful for creating instrument driver DLLs The option allows other applications to use instrument driver DLLs without having to load the large LabWindows CVI Run time Engine DLL DLLs you create with the LabVIEW Real Time Only item selected use cvi 1vrt d11 instead of cvirte
54. box Adding Help in the Function Panel Editor In this example you will add help to function panels and function panel controls from the Function Panel Editor Double click Function 1 from the previous example Complete the following steps in the Function Panel Editor to modify the help for the function panel 1 Select Edit Function Help from the Edit menu The Help Editor window appears 2 Enter the following text This function is the only function in Class 3 Select File Save FP File then File Close to save the text and remove the Help Editor Help also is associated with each of the controls in a function Complete the following steps to add a control to the current panel 1 Select Create Input 2 Enter Input Control for the Control Label 3 Click OK Complete the following steps to add help to the control 1 Select the control and select Edit Control Help Alternatively right click the control and select Control Help The Help Editor appears 2 Enter the following text in the Help Editor This control is an input control on the Function 1 function panel 3 Select File Save FP File then File Close to save the text and remove the Help Editor You have now added help to all possible locations Select Options Operate Function Panel and then view the help for the function panel National Instruments Corporation 9 7 LabWindows CVI User Manual Chapter 9 Adding Help to Instrument Drivers Copying a
55. box 2 8 opening with Open command 2 6 Workspace command 2 57 Edit menu 2 8 National Instruments Corporation Index Workspace View Selection command 2 73 Workspace window Build menu 2 10 Edit menu 2 8 File menu 2 5 Help menu 2 72 icons Status column 2 10 Instrument menu 2 43 Library menu 2 46 opening with New command 2 6 with Open command 2 6 optional files 2 5 Options menu 2 61 overview 2 1 purpose and use 1 3 required files 2 4 Run menu 2 40 Tools menu 2 48 View menu 2 9 Window menu 2 56 worldwide technical support B 1 Wrap option Find command Source and Interactive Execution windows 4 12 Variables window 10 4 Find UIR Objects dialog box 3 13 1 33 LabWindows CVI User Manual
56. code control actions Use default comment Enable this option if you do not want to be prompted for a comment when you check in or add files to a source code control project Enter the comment that you want LabWindows CVI to pass to the source code control system Use default username You can change your username by enabling this option and entering a new name Advanced Access advanced options provided by your source code control system If your source code control system does not provide advanced options this control is dimmed Options Build Options You can set the LabWindows CVI compiler options by selecting Options Build Options in the Workspace window This command opens a dialog box in which you can set the following LabWindows CVI compiler options Ej Compatibility with This option displays the current compiler compatibility mode You can change the current compatible compiler by selecting Visual C C or Borland C C You must restart LabWindows CVI after changing the compiler compatibility Default calling convention This option sets the compiler s default calling convention For both compilers the default calling convention is normally __cdec1 but can be changed to stdcall Do not change the default calling convention to stdcal1 if you plan to generate static library or object files for both compatible external compilers Note If you want to create an object file static library file or DLL that expor
57. command for a callback function LabWindows CVI searches for that function in all open files and in all files in the project The View command is useful because the callback functions for one user interface can be in several different files and scrolling the source code is not efficient With the View command National Instruments Corporation 3 21 LabWindows CVI User Manual Chapter 3 5 User Interface Editor you can move instantly from the user interface file to an object callback function whether the source file is open or closed When you finish reviewing the code you can return instantly to the uir file from the source file To return to the uir file place the cursor on the callback function name or constant name of the user interface object you want to go to and select View Find UI Object in the Source window Note You cannot use the View command for menu callback functions Code Preferences Use the Preferences command to change the default settings of case statements generated for control callback functions and panel callback functions or to specify the target file location for generated code Use the Default Panel Events or Default Control Events commands to select which events LabWindows CVI places into the switch construct of the code for panel or control callback functions respectively You can choose from several events and you can choose to add a default switch case Selecting Code Preferences Default Pane
58. control e Add Places the name in the Type control in the data type list e Move Up Moves the selected entry up one line in the data type list e Move Down Moves the selected entry down one line in the data type list e Change Displays a dialog box that prompts you to change the selected entry in the data type list e Delete Removes an entry in the data type list e Add VISA Types Adds the special set of data types defined by the NI VISA Library e Done Accepts edits to the data type list and returns to the Function Panel Editor LabWindows CVI User Manual 8 12 ni com Chapter 8 Function Panel Editor Options Toolbar Use this command to open the Customize Toolbars dialog box For more information about customizing the toolbar refer to the Toolbars in LabWindows CVI section of Chapter 2 Workspace Window Options Initial Control Width With the Initial Control Width command you can set the initial width for all input output ring return value and global variable controls that you create in the Function Panel window The default initial control width is 145 pixels LabWindows CVI saves your settings between sessions Options Grid Line Options Use this command to specify whether grid lines appear in the Function Panel Editor and whether you want the controls to snap to the grid lines To customize the appearance and spacing of the grid lines select Options Preferences in the User Interface Editor Options
59. cycles through the matches if you have default shortcut keys enabled LabWindows CVI User Manual 2 56 ni com Chapter 2 Workspace Window The context menu in the Find Results window contains the following items e Clear Window Removes all items from the Find Results window e Copy Item Copies a single highlighted item to the clipboard e Copy All Items Copies all items in the Find Results window to the clipboard e Save to File Saves the contents of the Find Results window to a text file Goto Item Highlights the selected line of code e Release Confine Window Releases the window from the Output Window Region if confined Confines the window into the Output Window Region if released Hide Confined Error Windows Removes all windows from the Output Window Region To access the context menu right click an empty area of the Find Results window Window Source Code Control Errors The Source Code Control Errors window displays warnings and errors that source code control systems return when you execute commands from the Tools Source Code Control submenu The context menu in the Source Code Control Errors window contains the following items e Clear Window Removes all items from the Source Code Control Errors window e Copy Item Copies a single highlighted item to the clipboard Copy All Items Copies all items in the Source Code Control Errors window to the clipboard e Save to File Saves the con
60. defined References The files and line numbers where you can find references to the variable data type or macro Tools UI to Code Converter Use this utility to generate code that programmatically creates the panels and menu bars in the user interface resource uir files you select The UI to Code Converter is a LabWindows CVI application that reads the contents of tui files alternate format uir files and generates code to build a user interface UI programmatically eliminating the need to distribute a separate file with your LabWindows CVI application The UI to Code Converter works best on tui files created with LabWindows CVI 5 5 or later For more information about using the converter refer to the help in the utility LabWindows CVI User Manual 2 54 ni com Chapter 2 Workspace Window Tools User Interface Localizer The CVI GUI Localization Utility translates user interface resource uir files into other languages Use this utility to create a language resource 1w1 file that you can use with LoadLocalizedPanel to translate a uir file For more information about translating files refer to the help in the localization utility Tools Convert UI to Lab Style Use the Convert UI to Lab Style command to convert Classic Style controls to Lab Style controls Converting to Lab Style controls does not change control settings you have specified When you select this command the UIR Conversion dialog box app
61. dllorinstrsup d11 The LabVIEW Real Time Only option is useful for creating DLLs that will be downloaded and run on the LabVIEW Real Time hardware If you use a stand alone compiler and want to use instrsup d11 include cvi70 extlib instrsup 1ib in your external compiler project instead of LabWindows CVI User Manual 2 18 ni com Chapter 2 Workspace Window cvirt liband cvisupp lib Remember that when you use an external compiler you link to that compiler s ANSI C library instrsup d11 contains functions from the following libraries Formatting and I O Library except ArrayToFile and FileToArray RS 222 Library except InstallComCallback Utility Library selected functions only ANSIC Library Your project also can link to the following libraries Analysis or Advanced Analysis Library GPIB GPIB 488 2 Library VXI Library VISA Library IVI Library NI DAQmx Library Traditional NI DAQ Library TIf your project files call the Config Alarm Deadband Config ATrig Event Message Config DAQ Event Message DIG Change Message Config Get DAQ Event or Peek DAQ Event functions in the Traditional NI DAQ Library you will get link errors when you build your program in LabWindows CVI The link errors occur because the preceding functions use the LabWindows CVI User Interface Library internally which is not available in the instrsup and cvi lvrt Run time Engine DLLs Your project files can call any o
62. down one line OK Accepts the modifications you made in the Edit Custom Controls dialog box and closes the dialog box Cancel Closes the dialog box without accepting any changes LabWindows CVI provides the following custom controls Ok Button Quit Button Toolslib Controls LabWindows CVI controls configured to provide additional functionality Radio Group Animation Control Combo Box LabWindows CVI User Manual 3 12 ni com Chapter 3 User Interface Editor Tab Control File Browser Hot Ring Path Control Password Control 3D Graph Graph Cursors Horizontal Scroll Bar Vertical Scroll NI DAQmx IO Controls If you have NI DAQmx installed you can select from a list of commonly used NI DAQmx controls including a task control a relay control and a switch control View Menu for the User Interface Editor This section explains how to use the commands in the User Interface Editor View menu View Find UIR Objects Use the Find UIR Objects command to locate objects in user interface resource uir files When you select this command the Find UIR Objects dialog box opens Select the type or types of objects you want to search for in the left column of the dialog box e Search By Specifies the search criterion The following choices are available Constant Prefix Valid for panels and menu bars Constant Name Valid for controls menus and menu items Prefix Constant Name Valid for
63. equal horizontal spacing between the right edges of the controls The left most and right most controls serve as anchor points Horizontal Gap sets equal horizontal gap spacing between the controls The left most and right most controls serve as anchor points 3 16 ni com Chapter 3 User Interface Editor horizontal gap between the controls AsO Horizontal Compress compresses spacing of the controls to remove any Arrange Distribute The Distribute command performs the same action as the Distribution command using the option you last selected in the Distribution command submenu Arrange Control ZPlane Order The Control ZPlane Order option lets you set the sequence in which overlapped controls are drawn Controls are always drawn in order from the back to the front of the z plane order The Control ZPlane Order submenu contains four commands Move to Front moves the control to the front of the z plane order so it is drawn last Move to Back moves the control to the back of the z plane order so it is drawn first e Move Forward moves the control one place forward in the z plane order e Move Backward moves the control one place backward in the z plane order Arrange Center Label The Center Label command centers the label of the selected control Arrange Control Coordinates The Control Coordinates command opens the Control Coordinates and Dimensions dialog box in which you can interactively set the width height t
64. for the Workspace Window section of Chapter 2 Workspace Window Tools Menu for the User Interface Editor The Tools menu for the User Interface Editor works in the same way as the Tools menu for the Workspace window For more information about these commands refer to the Tools Menu for the Workspace Window section of Chapter 2 Workspace Window Window Menu for the User Interface Editor The Window menu for the User Interface Editor works in the same way as the Window menu for the Workspace window For more information about these commands refer to the Window Menu for the Workspace Window section of Chapter 2 Workspace Window Release Confine Window Use the Release Window command to remove the window from the Window Confinement Region The Confine Window command appears when the window is released from the workspace area Use this command to confine the window Options Menu for the User Interface Editor This section explains how to use the commands in the User Interface Editor Options menu Options Operate Visible Panels Use the Operate Visible Panels command to operate the visible panels as you would in an application program This command has the same effect as clicking the operating tool shown at left When you finish operating the panel select Operate Visible Panels again to return to edit mode National Instruments Corporation 3 28 LabWindows CVI User Manual Chapter 3 User Interface Editor Opti
65. function qualifier For example if you specified CVIFUNC as function qualifier every function must start with CVIFUNC Or CVIFUNC C e Avoid nested comments or combination of comment styles or e Do not use nested structure definitions Multiple bracket levels are not recognized Do not use comments inside function declarations Tags in Header Files Use the following tags in the header file Tag Description Comment here Ignores the whole line as a comment Class Name Creates a new class node of the specified name Class Name Goes one level up back in the function tree The class name is optional and is used for better orientation in the header file Lf OUT pl Specifies which parameter of a function is output This tag applies only to the function immediately following the tag Example use OUT 2 3 4 void SplitPath char Pathname char Drive_Name char Directory_Name char File_Name E Note If you do not use an OUT tag any parameter with a or type for functions starting with Get is considered an output parameter If you use an OUT tag only those parameters you specify in the OUT tag are output parameters LabWindows CVI User Manual 4 32 ni com Chapter 4 Source and Interactive Execution Windows Tag Description EL PTYP p1 type Changes the parameter type for the specified parameters This tag applies only
66. i e eto E E RE ERES ARMIS ERE 2 44 Instrument Search Directories essere eene 2 44 Accessing Function Panels from the Instrument Menu s 2 45 Library Menu for the Workspace Window sese 2 46 User Libraries teet ee tee e tries 2 46 System Labraties dotate oeir anaoa nene eU RR 2 47 Labrary Customlze i eere a I e tas Hate IE Re ER USER REVUE 2 47 National Instruments Libraries seen 2 47 LabWindows CVI User Manual vi ni com Contents Tools Menu for the Workspace Window esee 2 48 Tools Create ActiveX Controller sess eene 2 48 Tools Create ActiveX Server nennen nennen nee 2 48 Tools Edit ActiveX Server cccccccssccccccsssscccceesssseeeccessssseccccesssseeceeeessseeeeeeees 2 48 Tools Create IVI Instrument Driver eese 2 49 Tools Create Instrument I O Task essere 2 49 Tools Create Edit DAQmx Tasks eeesssseeeeeeeneenneee nnne 2 50 Tools Source Code Controles aa T E E S 2 52 Tools Source Code Browser sse eene enne 2 53 Tools UI to Code Converter cccccccccsssseccccesssscceccessssceecceeessseeeecesssseeeeeeeees 2 54 Tools User Interface Localizer n nren e aeetas aE EEE E A 2 55 Tools Convert UI to Lab Style eene 2 55 User Defined Entries in the Tools Menu ccscccccsessscccccesssseeeec
67. identifier and select Go to Next Reference LabWindows CVI highlights the next reference of the identifier Edit Go Back Returns to the previous identifier Edit Show Completions Use the Show Completions option to view a list of potential matches for the function or variable you are typing LabWindows CVI opens a drop down list of symbol names beginning with the letters you typed Use the arrow keys to navigate through the list and press Enter to insert a symbol in your code If only one item appears in the list LabWindows CVI inserts that item in your code immediately Show Completions also lists variables structure members enum members and macros after you compile the source code If you enable Show function prototypes and struct union fields while typing in the Editor Preferences dialog box LabWindows CVI shows structure members when you type or gt after a variable name Function names are taken from function panels and browse info for user defined functions For browse info to be included you must compile the source code first Macros are included only if you have used or referenced the macro previously in the code Edit Show Prototype Use the Show Prototype option to view the function prototype of the current function If you enable Show function prototypes and struct union fields while typing in the Editor Preferences dialog box LabWindows CVI shows the prototype of the function when you type the open parenthesis
68. in the title bar of the Function Panel window The Function Panel Editor menu bar appears at the top of the screen above the function panel If you have enabled the toolbar the toolbar appears under the menu bar The Function Name appears in the title bar of the function panel The Function Name appears with an empty argument list in the Generated Code window below the Function Panel Editor window By default grid lines are enabled for the Function Panel Editor Use grid lines to align controls If you want to disable grid lines select Options Grid Line Options Invoking the Function Panel Editor You can invoke the Function Panel Editor from the Function Tree Editor or from a function panel Invoking from the Function Tree Editor To invoke the Function Panel Editor from the Function Tree Editor complete the following steps 1 Highlight the function that corresponds to the function panel you want to edit 2 Select Edit Edit Function Panel Window in the Function Tree Editor You also can invoke the Function Panel Editor by double clicking the function name National Instruments Corporation 8 1 LabWindows CVI User Manual Chapter 8 Function Panel Editor Invoking from a Function Panel To edit a function panel that you are currently operating select Options Edit Function Panel in the Function Panel window If the current function panel is for a library that is in the Library Tree you cannot use the Edit Fun
69. it is executed A window for viewing and editing string variables and arrays A dialog box item in which text is entered from the keyboard A user interface control that schedules the periodic execution of a callback function A typical use of this control might be to update a graph every second A small yellow box that displays the value of variables and expressions in a Source window G 6 ni com U User Interface Editor V Variables window W Watch window window Window Confinement Region Work area workspace Workspace window National Instruments Corporation G 7 Glossary The window in which you build pull down menus dialog boxes panels and controls and save them to a user interface resource uir file A window that shows the values of all the currently active variables A window that shows the values of user selectable variables and expressions that are currently active A working area that supports specific tasks related to developing and executing programs An area of the Workspace window that contains open Source User Interface Editor and Function Tree Editor windows The area of the LabWindows CVI screen that contains the text displayed in a window A file that contains settings that do not affect the way a project builds such as breakpoints window position tag information and debugging levels A workspace can contain more than one project The main work area in LabWind
70. line triple click the line If you make a mistake while selecting text click the mouse or press Esc to cancel the selection LabWindows CVI provides three modes for selecting text depending on the state of the graphical icon at the bottom of the window as illustrated in the following figures EE Character Select Mode highlights all characters from where you begin m selecting text to where you end the selection ational Instruments CY I70 samples userintevents c File Edit view Build Run Instrument Library Tools Window Options Help void callbackData int eventDat a DisplayEvent pa Quit Button Got Focus break Lr case EVENT LOST FOCUS DisplayEvent panel Quit Button Lost Focus break a 2167280 13 InsB 210 216 d National Instruments Corporation 4 5 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows Line Select Mode highlights full lines of text Options Help File Edit view Build Run Instrument Library Tools Window int CVICALLBACK Shutdownl int panel int control int evenia void callbackData int eventDat switch 211 212 EVENT COMMIT 213 QuitUserInterfac 214 215 case EVENT GOT FOCUS 216 DisplayEvent panel Quit Button Got Focus Wy 217 break 218 case EVENT LOST FOCUS 219 DisplayEvent panel Quit Button Lost Focus 220 break M 2147280 6 InsBS 21
71. locale is recognized and all case sensitive functions such as stricmp and tolower perform conversions only from characters a z to characters A Z and vice versa and perform comparisons only using this set of characters Locale specific case sensitivity is not honored The multibyte to wide character conversion functions mbtowc and mbstowcs are not available The wide character to multibyte conversion functions wctomb and wcstombs are not available The ANSI C environment functions getenv _putenv and system are not supported and return run time errors DLLs that link to cvi 1vrt dllcanbe built only in the Release configuration and you cannot debug them You can link your LabVIEW Real Time Only project to the VISA Library the Traditional NI DAQ Library or the NI CAN Library If you do so however you must not combine calls to these LabWindows CVI libraries with calls to the corresponding libraries provided by the LabVIEW Real Time development environment If you use a stand alone compiler and want to use cvi 1vrt d11 include cvi70 extlib cvi_lvrt 1ib in your external compiler project instead of cvirt liband cvisupp 1ib Remember that when you use an external compiler you link to that compiler s ANSI C library If you use the Create Distribution Kit command on a project that you link for LabVIEW Real Time Only Support only LabWindows CVI automatically selects LabVIEW Real Time Only as the Run Time Engine Support All
72. more files to add to the project Replace Opens the Replace File in Project dialog box where you can enter or browse to a new file to use in place of the original file Remove Deletes the file from the project list Include Paths Opens the Include Paths dialog box where you can specify the paths that LabWindows CVI should use when searching for header files LabWindows CVI User Manual 2 8 ni com Chapter 2 Workspace Window e Source Code Control Opens the Source Code Control Options dialog box where you can specify source code control settings e OK Accepts changes made to the project and closes the dialog box Cancel Closes the dialog box without making any changes to the project Edit Add Files to Project Use the Add Files to Project command to add any type of file to the active project list Choose any one of the file types listed in the menu to open the Add Files to Project dialog box and then select a file from the dialog box Use the Source Object and Library commands to add code modules to your project An import library 1ib file must accompany each DLL If you want to use a DLL in your project you must include the import library rather than the DLL For more information about using DLLs in LabWindows CVI refer to Chapter 3 Compiler Linker Issues of the LabWindows CVI Programmer Reference Manual Use the Include command to add header files to your project Including header files in your project
73. of a program A dialog box item that executes a command associated with the dialog box A dialog box item that allows you to toggle between two possible options A mouse specific term to quickly press and release the mouse button A temporary storage area LabWindows CVI uses to hold text that is cut or copied from a work area The LabWindows CVI feature that creates code based on a uir file to connect your GUI to the rest of your program This code can be compiled and run as soon as it is created A control on a common control function panel that specifies a parameter in all functions associated with a Function Panel window A command line argument passed to the compiler that defines an identifier as a macro to the preprocessor LabWindows CVI User Manual Glossary control cursor cursor location indicator D default command dialog box double click drag E entry mode indicator excluded code F p file function panel LabWindows CVI User Manual An input and output device that appears on a function panel for specifying function parameters and displaying function results The flashing rectangle that shows where you can enter text on the screen If you have a mouse installed there is also a mouse cursor An element of the LabWindows CVI screen that specifies the row and column position of the cursor in the window The action that takes place when lt Enter gt is pressed and no command is
74. on your own The three implementations of a single instrument driver hierarchy in this section illustrate options for structuring functions In this example the driver includes seven functions with which to program the instrument The first implementation gives the user a simple linear list of all available functions instrumentA functionl function2 function3 function4 function5 function6 function7 The second implementation breaks the functions into two function classes instrumentA function class1 function1 1 function1 2 function1 3 function1 4 function class2 function2 5 function2 6 function2 7 The third implementation treats the two function classes as two distinct instruments instrumentA functionl function2 LabWindows CVI User Manual 5 6 ni com Chapter 5 Using Instrument Drivers function3 function4 instrumentB function5 function6 function7 To successfully structure the functions for your instrument you must determine who will use the instrument driver and how they will use the instrument Define functions that stand alone to perform a useful action For example it might at first seem logical to use the functions SetDMMRange and SetDMMFunction for setting the range and function of a multimeter However a more useful function might be Con igureMeasurement for setting up multiple parameters Defining the Hierarchy of Functions It is important to design the function hierarchy for the instrumen
75. options Detect uninitialized local variables at run time option 2 65 Uninitialized local variables detection Aggressive mode 2 66 Conservative mode 2 66 Disabled mode 2 66 Unload command 2 44 unloading instrument drivers See loading unloading instrument drivers unreachable code detecting 2 67 unreferenced identifiers detecting 2 67 Up Call Stack command 2 42 Use Console Window for Standard I O when Debugging option Environment command 2 62 Use Only One Browse Info Window option Environment command 2 61 useDefaultTimer configuration option A 5 User Defined Tokens for Coloring command 4 29 user interface constants selecting attribute constants 6 8 attribute values 6 8 from uir files 6 7 LabWindows CVI User Manual Index User Interface Editor Arrange menu 3 15 Code menu 3 17 CodeBuilder overview 3 3 coloring tool 3 2 context menus 3 2 Create menu 3 15 Edit menu 3 5 editing tool 3 2 eyedropper tool 3 2 File menu 3 4 Help menu 3 27 labeling tool 3 2 Library menu 3 23 moving to using Find UI Object command 4 19 opening 2 5 2 6 operating tool 3 1 Options menu 3 23 overview 3 1 preferences 3 24 purpose and use 1 3 Run menu 3 22 tool icons 3 1 View menu 3 13 Window menu 3 23 User Interface Editor Preferences dialog box More button 3 25 Preferences for New Controls section 3 25 Preferences for New Panels section 3 24 User Interface Preferences section 3 24 User Int
76. project that you create using the Options Create DLL Project command If you enable the IVI VXIplug amp play Style command Create DLL Project adds project settings that allow the DLL import libraries and distribution kit you create to conform to various aspects of the IVI or VXIplug amp play specification You can modify all of these settings using commands in the Build menu of the Workspace window The following list describes the default settings In the Target Settings dialog box for DLLs the following options apply e The run time support is set to Instrument Driver Only e _32 is appended to the base filename of the DLL but not to the base filename of the import libraries e Inthe DLL Import Library Choices dialog box the Generate import library for both compilers option is enabled e Inthe Type Library dialog box the following options apply The Add type library resource to DLL option is enabled The Include links to help file option is enabled Function panel file is set to the full pathname of the p file of the current Function Tree Editor window e In the Change option in the Exports section the following options apply The Export What option is set to Include File Symbols The Which Project Include Files list contains the name of the include file associated with the fp file of the current Function Tree Editor window In the Create Distribution Kit dialog box the following options apply e Th
77. specifically selected Default command buttons are indicated in dialog boxes with an outline A prompt mechanism in which you specify additional information needed to complete a command A mouse specific term to click the mouse button twice in rapid succession A mouse specific term to hold down the mouse button while moving the mouse across a flat surface such as a mouse pad An element of the LabWindows CVI screen that indicates the current text mode as either insert or overwrite Code that is ignored during compilation and execution Excluded lines of code are displayed in a different color than included lines of code A file containing information about the function tree and function panels of an instrument module A screen oriented user interface to the LabWindows CVI libraries in which you can interactively execute library functions and generate code for inclusion in a program G 2 ni com Function Panel Editor Function Panel window function tree Function Tree Editor G generated code box global control Graphical Array Display H hex highlight immediate action menu Glossary The window in which you build a function panel The window that contains function panels The hierarchical structure in which the functions in a library or an instrument driver are grouped The function tree simplifies access to a library or instrument driver by presenting functions organized according to the opera
78. task by selecting New Task from the Task Name control in the DAQmx Load Task function panel Sy Note You must use MAX to create global channels Once you create a MAX based task you can use it in your program Editing a Task To edit an existing task enable the Edit Existing Task option and choose a MAX based task or project based task from the list in this dialog box Selecting this option opens the DAQ Assistant to edit the task You also can edit existing tasks through the Edit DAQ Task context menu item in a source window You can edit project based tasks by right clicking the binary mxb file in the Project Tree and selecting Open or Edit National Instruments Corporation 2 51 LabWindows CVI User Manual Chapter 2 Workspace Window Using Project Based Tasks To use your newly created task in a program call the task creation function declared in the generated header file as shown in the following code include MyProjectBasedTask h TaskHandle myTask 0 CreateMyProjectBasedTask amp myTask Use your DAQmx task DAQmxClearTask myTask The Source window provides context menu items for working with project based DAQmx tasks You can access these context menu items by right clicking a call to a task creation function in a Source window For more information refer to the Context Menus in Source Windows section of Chapter 4 Source and Interactive Execution Windows Tools Source Code Control The Source Code
79. task in the DAQ Assistant You might want to copy a MAX based task to a project based task to facilitate sharing the task definition among multiple developers or storing the task definition in a source code control system LabWindows CVI User Manual 4 2 ni com Chapter 4 Source and Interactive Execution Windows The generated files have no link to the original MAX based task Any modifications you make to the original MAX based task will not be reflected in the binary mxb file or the generated code This menu item is enabled only when you place the cursor on a call to DAQmxLoadTask Show DAQ Configuration Code This option opens an untitled Source window containing the source code required to create a task that is equivalent to the selected MAX based task The source code that appears is the same source code that would be generated by the Copy DAQ Task to Project menu item This menu item is enabled only when you place the cursor on a call to DAQmxLoadTask Interactive Execution Window You can execute selected portions of code in the Interactive Execution window Unlike the Source window you do not need a complete program in the Interactive Execution window For instance you can execute C variable declarations and assignment statements without declaring a main function Use the Interactive Execution window to test portions of code before you include them in your main program Also you can use the Interactive Execution window
80. text 4 5 subwindows 4 4 Tools menu 4 26 View menu 4 16 Window menu 4 27 Interactive Window Memory Size option Environment command 2 62 Interchangeable Virtual Instrument drivers See IVI instrument drivers Interpret As command 10 13 intrinsic C data types 5 8 Item Name option Edit Menu Bar dialog box 3 7 IVI instrument drivers creating 2 49 editing attributes 4 26 IVI VXIplug amp play Style command 7 11 K KnowledgeBase B 1 L Label Appearance section Edit Control dialog box 3 10 Label Value Pairs button 3 9 ni com labeling tool 3 2 LabVIEW Real Time Only option Create Distribution Kit dialog box 2 29 LabWindows CVI components LabWindows CVI environment 1 2 list of components 1 1 standard libraries 1 2 configuration options A 2 creating applications 1 3 environment 1 2 startup options table A 1 LabWindows CVI Bookshelf command 2 73 Last Function Panel Window command 6 13 Left Edges option Alignment command 3 15 Distribution command 3 16 libraries files required in project file list 2 4 standard libraries 1 2 static libraries creating 2 13 target settings 2 23 user libraries 2 46 libraries dummy fp files for support libraries 2 46 Library File option Target Settings dialog box 2 23 Library Generation Choices option Target Settings dialog box 2 23 Library menu Function Panel window 6 13 Source and Interactive Execution windows 4 26 User Interface Editor 3 23 Wo
81. that is in the project Force Loaded Instrument Drivers into Interactive Window Enable this option if you run function panel or Interactive Execution window code that uses ijoadExternalModule or LoadExternalModuleEx to load the source file for an instrument driver that is already loaded in the Instrument menu CVI Environment Sleep Policy Each time LabWindows CVI checks an event from the operating system it can put itself in the background in sleep mode for a specified period of time While LabWindows CVI is in sleep mode other applications have more LabWindows CVI User Manual 2 62 ni com Chapter 2 Workspace Window processor time However LabWindows CVI might run slower You can specify how much LabWindows CVI sleeps You have the following sleep policy choices Do Not Sleep Sleep Some sleep a short period of time Sleep More sleep a longer period of time the default setting The setting that is optimal for you depends on the operating system you are using and the other applications you are running Generally for Windows National Instruments recommends the Sleep More mode If you think you might need to make an adjustment try the different settings and observe the resulting behavior e Include Paths Opens the Include Paths dialog box in which you can specify the directory search path for include files e Source Code Control Opens the Source Code Control Options dialog box in wh
82. the Function Tree Editor Use the commands in the Edit menu to edit the entries in the function tree iyi Note When you cut copy or paste a class all of its subclasses and functions are cut copied or pasted as well Similarly when you delete a class all of its subclasses and functions are deleted National Instruments Corporation 7 1 LabWindows CVI User Manual Chapter 7 Function Tree Editor Edit Cut Cut deletes the selected function or class from the tree and copies it to the clipboard Edit Copy Copy copies the selected function or class from the tree to the clipboard Edit Paste Above Paste Above inserts the contents of the clipboard into the tree above the selected node Edit Paste Below Paste Below inserts the contents of the clipboard into the tree below the selected node Edit Delete Use the Delete command to remove the selected node from the function tree Edit Edit Node Edit Node lets you edit the instrument function or class name on the highlighted line Edit Edit Help Edit Help lets you add context sensitive help information to the function tree Edit Edit Function Panel Window Edit Edit Function Panel Window lets you edit the selected Function Panel window in the Function Panel Editor The Function Panel window is a collection of panels that represent all functions that users can interactively call from that window Edit FP Auto Load List Use the FP Auto Load List comm
83. the Help Editor essere eene 9 6 National Instruments Corporation xvii LabWindows CVI User Manual Contents Help Menu for the Help Editor eese enn nen 9 6 Adding Help in the Function Tree Editor sss 9 6 Adding Help in the Function Panel Editor see 9 7 Copying and Pasting Help Text ee ette eA n rodea ee eerie tes 9 8 Chapter 10 Variables and Watch Windows Variables Wind OWS unn tortas ten sarliuedve Ua EU advert 10 1 Watch Window vie ueste peteret iter en Des te ter Ee e iae tuevelaedeesesdecs 10 2 File Menu for Variables and Watch Windows cccccccsssccccesssssecccceessssseeceesssnseeeeeess 10 3 File Qutp t 2 aterert e eaten latent e MEVS TEENS 10 3 Filey Hiden ice eret eM I vi ee Wis 10 3 Edit Menu for Variables and Watch Window cccccssscccecssssseecccessssseececesssseeeeeeeees 10 3 Edit Edit Valte eo ere eerte tede er bees tette 10 3 Edit BEihd 53 5 etra UD ned pO S 10 4 Edit Next SCOPE 5i tene et osten tees eel 10 4 Edit Previous Scope i iu eee e Ree Re ree E REIR 10 5 Edit Add Edit Watch Expression eese 10 5 Edit Delete Watch Expression scerisrcenenecneniei iiei E 10 6 View Menu for the Variables and Watch Windows essen 10 6 View Expand Variable esses nente enne nnne 10 6 View Close Vartable 4 ltrices interd vestes reet eee edes 10 6 View F
84. the Library Tree or the Function Panel Selection dialog box 2 In Function Name enter the actual code name used in the instrument driver for the function being added This function name must be valid for the current language The name of every function in an instrument driver begins with a common prefix taken from the name of the instrument driver Do not enter the prefix of the function name in the Create Function Panel Window Node dialog box LabWindows CVI automatically adds the prefix to each function name To change the prefix select Edit Node when you select the instrument node 3 In Qualifier enter the default qualifier that provides information to LabWindows CVI about access options and conventions This qualifier overrides the default qualifier specified for the instrument This option is available only if you select CVI 5 5 and later as the Default Format for New Files in the FP File Format dialog box Example Many instrument drivers use the vr FUNC macro as the function qualifier The vr FUNC macro is defined in the visatype h include file The definition of the _VI_FUNC macro varies based on the target operating system and application development environment Adding a Function to an Empty Tree or Class Complete the following steps to add a function to an empty tree or class 1 Select the line that contains Create Class or Function Panel Window 2 Select Create Function Panel Window The Create Function Panel Window Nod
85. the Windows SDK GetFileVersionInfo and GetFileVersionInfoSize functions In the Version Info dialog box the entries for File Version and Product Version must be in the following form n n n n where n is a number from 0 to 255 LoadExternalModule Options The following options assist you in loading external modules Enable LoadExternalModule Select this option if your project uses LoadExternalModule This option is enabled by default If your project does not use LoadExternalModule disable this option to reduce the size of your executable If you disable the option but still use LoadExternalModule LabWindows CVI prompts you to enable full support You must rebuild your project before the changes take effect Add Files to Executable Select additional module files you want to link into the Application File These are modules that your project files do not directly reference but that are referenced by modules you load at run time by calling LoadExternalModule If you force a Windows SDK import library into your project your executable might not start up successfully The Windows SDK import libraries contain functions that are not present on all versions of Windows If the DLL on your system does not export all the functions in the import library your executable will fail at startup Instead of forcing an import library into your executable you can force only the functions you need into the executable To force spec
86. the entire contents of the Interactive Execution window by selecting Edit Clear Window LabWindows CVI removes the variables If you want to remove the variables without deleting the contents of the Interactive Execution window use the Clear Interactive Declarations command Build Insert Include Statements The Insert Include Statements command opens a dialog box you can use to select one or more header files to include at the top of the Source window Build Add Missing Includes If when you last attempted to compile the source file the compiler reported that function prototypes were missing Add Missing Includes can find include h files that contain some or all of the missing prototypes This command inserts include statements for these files into your source file at the current cursor position LabWindows CVI adds include statements only for libraries or instrument drivers that appear in the Instrument or Library Tree or Library menu Build Generate Prototypes After you compile a source file you can use the Generate Prototypes command to generate a file that contains declarations for global and static functions and external declarations for global variables The command generates the file into a new Source window You can copy these declarations into your source and header files Build Next Previous Error Item If when you compile a file or build your project LabWindows CVI displays multiple errors you can use the Next
87. the following commands e All Code Generates code to accompany the uir file Main Function Generates code for the main function e All Callbacks Generates code for all the callback functions Panel Callbacks Generates code for the callback function associated with a panel e Control Callbacks Generates code for the callback functions associated with one or more controls e Menu Callbacks Generates code for menus and menu items connected to callback functions The All Callbacks command is available when any of the Panel Callback Control Callbacks or Menu Callbacks commands are available The Panel Callback command is available if you specified a callback function for the currently active panel The Control Callbacks command is available if you specified callback functions for any of the currently selected controls The Menu Callbacks command is available if you have a menu bar that contains items for which you specified a callback When you generate code to accompany a uir file LabWindows CVI places the skeleton code in the target file You must save the uir file before you can generate any code based on that file When you save a uir file LabWindows CVI generates a header file with the same name This h file and userint h are included in the source file If you try to generate the same function more than once the Generate Code dialog box appears Each previously generated code fragment appears highlighted
88. the functions in cvi 1vrt d11 are multithread safe LabWindows CVI User Manual 2 20 ni com Chapter 2 Workspace Window e Embed Project UIRs Embeds uir files into the DLL Enabling this option allows you to ship only the DLL instead of including the uir files also Make sure that you include all uir files loaded through LoadPanel or LoadPanelEx in your project if you want to ship only one DLL If you pass an absolute filename to LoadPanel or LoadPanelEx the function will always look on disk for the uir file If you pass a simple filename LoadPanel or LoadPane1Ex will look first for an embedded uir e Generate Map File Creates a memory map for the executable This map lists the address of every function and variable and the name of the function or variable This option is useful if your program crashes and provides an address where the failure occurred You can view the map file to check which function or variable caused the crash e Register ActiveX Server After Build LabWindows CVI registers the target each time that it builds the target By default this option is enabled for a new ActiveX server project This option appears only for ActiveX server projects Version Info Opens the Version Info dialog box You can enter version information for the DLL in this dialog box LabWindows CVI saves the version information in the DLL as a standard Windows version resource You can obtain the information from the DLL by us
89. the same action as the Alignment command using the option you last selected in the Alignment command submenu Arrange Distribution Use the Distribution command to distribute controls on a panel Select a group of controls by dragging the mouse over them or pressing Shift Click on each item you want to include in the group Then you can select a distribution method from the submenu The options on the Distribution command submenu are as follows LabWindows CVI User Manual Top Edges sets equal vertical spacing between the top edges of the controls The upper most and lower most controls serve as anchor points Vertical Centers sets equal vertical spacing between the centers of the controls The upper most and lower most controls serve as anchor points Bottom Edges sets equal vertical spacing between the bottom edges of the controls The upper most and lower most controls serve as anchor points Vertical Gap sets equal vertical gap spacing between the controls The upper most and lower most controls serve as anchor points Vertical Compress compresses the spacing of controls to remove any vertical gap between the controls Left Edges sets equal horizontal spacing between the left edges of the controls The left most and right most controls serve as anchor points Horizontal Centers sets equal horizontal spacing between the centers of the controls The left most and right most controls serve as anchor points Right Edges sets
90. the string from the keyboard This mode is valid only when you select the ASCII display format from the Format menu Also you can edit one character at a time using the Options Edit Character command LabWindows CVI User Manual 11 4 ni com Chapter 11 Array and String Display Windows Edit Overwrite Use the Overwrite command in the String Display window to toggle between the overwrite and insert modes of editing The Overwrite command has no effect unless you activate the Edit Mode command View Menu for Array and String Display Windows The commands in the View menu work in the same way as the commands for the View menu for Variables and Watch windows Refer to the View Menu for the Variables and Watch Windows section of Chapter 10 Variables and Watch Windows for more information Format Menu for Array and String Display Windows The following figure shows the Format menu File Edit View Format Run Window Options Help Decimal Hexadecimal Octal Binary V ASCII However if a real array appears in the Array Display window the Format menu appears as shown in the following figure File Edit View Format Run Window Options Help Floating Point Scientific Fix Precision Use the commands in the Format menu to choose the format the Array or String Display window uses to display numbers You can display integers in decimal hexadecimal octal binary or ASCII format You can displa
91. the value of Debugging level in the Build Options dialog box You can specify the filename of the static library as well as other static library settings by selecting the Target Settings menu item You can set other creation and build options in the Build Options dialog box If you include a 11b file in a static library project LabWindows CVI includes all object modules from the 1ib in the static library This process differs from creating an executable or DLL in which LabWindows CVI includes only the 1ib modules that other modules in the project reference In addition LabWindows CVI reports an error if you attempt to build a static library when you have a DLL import library in your project Build Mark Project for Compilation You can force LabWindows CVI to compile the source files in a project during the next build with the Mark Project for Compilation command When LabWindows CVI marks source files for compilation a C appears next to the filename in the Project Tree if you have View Columns Status enabled When you modify source files LabWindows CVI automatically marks the files for compilation Build Batch Build Use the Batch Build dialog box to build multiple projects e Configurations Displays all the valid configurations for the projects in your workspace e Check All Debug Selects all the debug configuration items in the list e Check All Release Selects all the release configuration items in the list e Ch
92. to execute functions exported by a loaded instrument or by a file in the project if the project has been linked The Interactive Execution window can access functions and data declared as global in a Source window but a Source window has no access to the functions and data declared in the Interactive Execution window When you execute a function from a function panel LabWindows CVI inserts the function call into the Interactive Execution window for execution In this way the Interactive Execution window keeps a record of the functions you execute from function panels When LabWindows CVI copies a function call from a function panel to the Interactive Execution window for execution it inserts the code after all the existing lines LabWindows CVI also inserts an include statement for the header file associated with the function in the Interactive Execution window if you have not already included it When you execute a function call from a function panel LabWindows CVI automatically excludes all previous lines in the Interactive Execution window An excluded line is dimmed and the LabWindows CVI compiler ignores it Because LabWindows CVI automatically excludes all declarations when you execute code in the Interactive Execution window you must avoid placing executable statements on the same line as declarations in the Interactive Execution window Auto exclusion also occurs when you type a line of code beneath a line that has just been executed Yo
93. to the function immediately following the tag Example use PTYP 2 Any Type 4 Any Array 5 Numeric Array DFLT pl val Specifies the default value for a parameter This tag applies only to the function immediately following the tag CUST p1 dll fn Specifies the customization DLL and handler for a parameter This tag applies only to the function immediately following the tag EHDV pl value Specifies which enum has an additional default value This tag applies only to the function immediately following the tag A default value is added to the beginning of the enum You can use this tag with RNG and SLD tags ENUM name Starts a list of define values that represents an enum of the specified name You can use this tag with RNG BIN and SLD tags The list of values must end with an empty line BIN pl enum Specifies which parameter of a function is a binary control This tag applies only to the function immediately following the tag enum is optional it specifies the enum name enum is the name of a regular enum or an enum created using the ENUM tag The parameter must be of an enum type if you omit the slash The enum must contain exactly two values Example use BIN 2 void OpenFile char Pathname enumTxtBin mode Example use BIN 2 enumTxtBin void OpenFile char Pathname unsigned mode National Instruments Corpo
94. under Tools Source Code Browser Compiler Defines Use this option to set compiler defines e Predefined Macros This option lists the predefined macros Compiler Defines The LabWindows CVI compiler accepts compiler defines in the Build Options dialog box accessible through Options Build Options Compiler defines have the following syntax Dx or Dx y The variable x is a valid C identifier You can use x in source code as a predefined macro For example you can use x as the argument to the if or ifdef preprocessor directive for conditional compilation If y contains embedded blanks you must surround it with double quotation marks The Predefined Macros dialog box contains a list of the macros that LabWindows CVI predefines This list includes the name and value of each predefined macro hy Note The default compiler defines string contains the following definition DWIN32 LEAN AND MEAN This definition reduces the time and memory taken to compile Windows SDK include files LabWindows CVI User Manual 2 68 ni com Chapter 2 Workspace Window Predefined Macros e CVI is defined to 1 in LabWindows CVI version 3 0 301 in version 3 0 1 310 in version 3 1 and so on NI mswin NI mswin32 e NI i386 e J CVI DEBUG is defined if you enable Build Configuration Debug in the Workspace window The value of the macro is 1 e CVI EXE is defined if the project target type is Executable e
95. useDefaultTimer to False under Windows 2000 NT XP Me LabWindows CVI attempts to use the performance counter timer The performance counter timer provides a resolution of 1 ms If the performance counter timer is not available LabWindows CVI uses the multimedia library timer which provides a resolution of 1 ms The default value for useDefaultTimer is False LabWindows CVI provides configuration options to set the fonts used throughout the environment DialogFontName DialogFontName specifies the font that LabWindows CVI uses in dialog boxes and the built in pop up panels as shown in the following example DialogFontName Courier DialogFontSize DialogFontSize specifies the font size that LabWindows CVI uses in dialog boxes and the built in pop up panels as shown in the following example DialogFontSize 30 DialogFontBold DialogFontBold specifies whether the font that LabWindows CVI uses in dialog boxes and the built in pop up panels is bold as shown in the following example DialogFontBold Yes National Instruments Corporation A 5 LabWindows CVI User Manual Appendix A Configuring LabWindows CVI LabWindows CVI User Manual MenuFontName MenuFontName specifies the font that LabWindows CVI uses in menus as shown in the following example MenuFontName Courier MenuFontSize MenuFontSize specifies the font size that LabWindows CVI uses in menus as shown in the following example MenuFontSize 30 MenuFontBold M
96. using a name you specify without changing the name of the active window File Close The Close command closes the active window If you modified the contents of the window since the last save LabWindows CVI prompts you to save the file to disk File Add File to Project The Add File to Project command adds the file in the current window to the project list of the active project File Read Only The Read Only command suppresses the editing capabilities in the current window When you initially open a file the Read Only command is disabled unless the file is read only on disk File Print The Print command opens the Print dialog box in which you can send the entire uir file or the visible screen area to a printer or a file You also can set print preferences in the Print dialog box The print preferences correspond to the print attributes described in the User Interface Library section of the LabWindows CVI Help LabWindows CVI User Manual 3 4 ni com Chapter 3 User Interface Editor Edit Menu for the User Interface Editor This section explains how to use the commands in the User Interface Editor Edit menu Use the Edit menu to edit panels controls and menu bars Edit Undo and Redo Sy Note Undo and Redo are enabled when you perform an edit action Cut and Copy are enabled when you select a control Paste is enabled when you place an object on the clipboard using the Cut or Copy command If you select an edit command
97. value of the environment variable TMP If the value of TMP is not defined or is invalid LabWindows CVI uses the value of the environment variable TEMP If the value of TEMP is not defined or is invalid LabWindows CVI uses the directory that contains cvi exe If you run LabWindows CVI across a network you must set tmpdir to one of your local directories Date and Time Option DSTRules LabWindows CVI User Manual Use the DSTRules option to specify the portions of the year in which daylight savings time is in effect in your area This option affects ANSI C Library functions such as mkt ime and localtime For more information about DSTRules refer to the Library Reference section of the LabWindows CVI Help A 4 ni com Appendix A Configuring LabWindows CVI Timer Options useDefaultTimer Font Options You can configure LabWindows CVI timer options in the Registry The timer option useDefaultTimer is a DWORD value 0 indicates False and 1 indicates True If you set the useDefaultTimer option to True LabWindows CVI uses the default Windows timer to implement the LabWindows CVI timing related functions such as Timer and Delay The default Windows timer provides a resolution of 55 ms under Windows 98 and 10 ms under Windows 2000 NT XP Me If you set useDefaultTimer to False under Windows 98 LabWindows CVI uses the Windows multimedia library timer The multimedia library timer provides a resolution of 1 ms If you set
98. window For more information about these commands refer to the Library Menu for the Workspace Window section of Chapter 2 Workspace Window Tools Menu for the Source and Interactive Execution Windows This section explains how to use the commands in a Source and Interactive Execution window Tools menu The Create ActiveX Controller Create ActiveX Server Edit ActiveX Server Create IVI Instrument Driver Create Instrument I O Task Create Edit DAQmx Tasks Source Code Control Source Code Browser User Defined Entries and Customize commands work in the same way as they do in the Workspace window Refer to the Tools Menu for the Workspace Window section of Chapter 2 Workspace Window for more information Tools Edit Instrument Attributes Use the Edit Instrument Attributes command to add delete or edit attributes for an IVI instrument driver You can select this command only if the file in the Source window has the same path and base filename as an instrument driver function panel p file and its associated sub file The command is useful only if you used the Create IVI Instrument Driver command to generate the instrument driver files The Edit Instrument Attributes command analyzes the instrument driver files to find all the attributes the driver uses The command then opens a dialog box that displays the attributes and various information about them In the dialog box you can add or delete attributes modify their propertie
99. you can leave the control blank LabWindows CVI generates a temporary variable when you run the function panel If you type a variable name into a return control you must define the variable statically in the Interactive Execution window or define it elsewhere and declare it as extern in the Interactive Execution window before you execute the function To define a variable select Code Declare Variable in the Function Panel window You can select Code Select Variable to choose a variable or expression that you have used before The type of value you National Instruments Corporation 6 3 LabWindows CVI User Manual Chapter 6 Using Function Panels enter must agree with the data type of the control To determine the data type of the control press F1 or right click the control to view the help After executing the function the return value control displays the value for the variable beneath the variable name Specifying Input Control Parameters An input control accepts a value you type in from the keyboard An input control can have a default value associated with it This value appears in the control when the panel first appears To specify a parameter for an input control select the control and type a variable name numeric value or valid expression Before you execute a Function Panel window any names you type into input controls must be defined statically in the Interactive Execution window or defined elsewhere and declared as ex
100. your uir file s set UIR Callbacks to Source File enter the name of the source file to create and click Create In the future whenever you save modifications to any of the uir files in the project LabWindows CVI automatically updates the source file You must call the InitCVIRTE function at the beginning of your main WinMain or DLLMain function so that LabWindows CVI run time libraries can initialize the list of names from the source file If you create a DLL and any of your callback functions are defined in but not exported by the DLL you must call LoadPanelEx or LoadMenuBarEx rather than LoadPanel or LoadMenuBar from the DLL Using LoadExternalModule to Load Object and Static Library Files Enables the section of the dialog box that you use when creating an executable or DLL that calls the Utility Library LoadExternalModule function to load object or static library files 3 Note This option is not necessary if you use LoadExternalModule to load only DLLs that you load through DLL import libraries Unlike DLLs object and static libraries can contain unresolved external references When you use LoadExternalModule to load an object or static library file LabWindows CVI resolves these references using symbols in your executable or DLL or in previously loaded external modules Consequently the names of the symbols in your executable or DLL that are necessary to resolve these references must be available to the LoadExter
101. 0 Threads command 2 43 Up Call Stack command 2 42 run startup option table A 1 run_then_exit startup option table A 1 ni com Run Time Engine Support Create Distribution Kit dialog box All Engines option 2 29 Full Run Time Engine option 2 29 Instrument Driver Only option 2 29 LabVIEW Real Time Only option 2 29 None option 2 29 Run Time Errors command 2 57 Run Time Support option Target Settings dialog box Target Type Dynamic Link Library Full Run Time Engine option 2 18 instrsup dll 2 18 Instrument Driver Only option 2 18 LabVIEW Real Time Only option 2 18 Target Type Executable Full Run Time Engine option 2 15 instrsup dll 2 15 Instrument Driver Only option 2 15 S Save All command 2 6 Save As command 3 4 Save Changes before Debugging option Environment command 2 62 Save command 2 7 Save Copy As command 3 4 Save in Text Format command 3 26 Save in XML Format command 7 12 8 14 Save Project As command 2 7 Save Workspace command 2 7 sdk directory table A 4 Search By option Find UIR Objects dialog box 3 13 Search Directories command 2 44 searching in Function Panel Editor 8 4 searching in Function Tree Editor 7 3 searching in Help Editor 9 5 National Instruments Corporation 1 25 Index searching in source files 4 12 searching in Variables window 10 4 Select All command 4 9 Select Attribute Constant command 6 8 Select Function Panel dialog box Alphabeti
102. 001 more occurrences asterisk occurrences of and so on preceding a matches act apt and character or abort expression Match 1 or more 0 1 matches 01 001 plus sign occurrences of 0001 preceding character or expression National Instruments Corporation 4 13 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows Purpose Character Description Example Matching either or 2 Match 0 or 1 0 1 matches 1 and 01 but question occurrences of not 001 mark preceding character or expression l Match either the a b matches every pipe preceding or occurrence of a or b following abor ut matches every character or occurrence of abort or expression about if else matches every occurrence of if or else Matching the Match the int matches any line that beginning or ending caret beginning of aline begins with int of a line Match the end ofa ends matches any line that dollarsign line ends with end Grouping 0 Group characters if telse matches expressions curly or expressions for every occurrence of i or braces searches else Matching a set 1 Match any one a z matches every brackets character or range occurrence of lowercase listed within the letters brackets abc matches every occurrence of a b or c If appears a z matches tilde immediately after everything except lowercase the left bracket negate the
103. 1 214 dz File Edit View Build Run Instrument Library Tools Window Options Help int eventDatza Quit Button Got Focus EVENT_L Dis y p me Quit Button Lost Focus a AZ You can cycle through these three modes by pressing lt Ctrl Insert gt or by clicking the graphical icon at the bottom of the window 2217280 209 221 E LabWindows CVI User Manual 4 6 ni com Chapter 4 Source and Interactive Execution Windows File Menu for the Source and Interactive Execution Windows This section explains how to use the commands in a Source and Interactive Execution window File menu File New Open Save Save All Most Recently Closed Files and Exit LabWindows CVI The New Open Save Save All Most Recently Closed Files and Exit LabWindows CVI commands in the File menu of the Source window work like the commands in the File menu of the Workspace window For more information about these commands refer to the File Menu for the Workspace Window section of Chapter 2 Workspace Window File Open Quoted Text The Open Quoted Text command opens c h fp and uir files that appear by name in the active window If you select Open Quoted Text when the text cursor in the active window is on a line that contains a filename in quotation marks or angle brackets that file opens in the corresponding window type File Save As Save Copy As Add File to P
104. 2 Workspace Window Adding and Positioning Buttons Use the Add Button controls to add and position new buttons on the toolbar First select the button you want to add to the toolbar from the Available Buttons list In the Buttons on Toolbar list select the button you want to place the new button next to The Above button positions the item you are adding above the button that you selected in the Buttons on Toolbar list After you click OK the new item appears to the left of the other button in the toolbar The Below button positions the item you are adding below the button that you selected in the Buttons on Toolbar list After you click OK the new item appears to the right of the other button in the toolbar Adding and Positioning Separators Use the Add Separator controls to add and position separators on the toolbar Select a button in the Buttons on Toolbar list The Above button adds a separator above the button that you selected in the Buttons on Toolbar list After you click OK a small gap the separator appears in the toolbar to the left of the selected button The Below button adds a separator below the button that you selected in the Buttons on Toolbar list After you click OK a small gap the separator appears in the toolbar to the right of the selected button Other Positioning Controls You can select any item in the Buttons on Toolbar list and use the Remove button to remove it from the toolbar If you remove a button LabW
105. 2 22 ni com Chapter 2 Workspace Window e Include File and Marked Symbols The DLL exports all symbols you define in the DLL with the __ declspec dllexport or export qualifier and the symbols you declare in the include files e Symbols Marked for Export The DLL exports all symbols you define in the DLL with the __declspec dllexport or export qualifier ays Note When you use the Symbols Marked for Export option or the Include File and Marked Symbols option and include in your project an object or library file that defines exported symbols LabWindows CVI cannot correctly create the import libraries for both of the compatible external compilers This problem does not arise if you use only source code files in your DLL project e OK Accepts the current inputs and closes the dialog box Cancel Cancels the operation and removes the dialog box For more information about creating DLLs refer to Chapter 3 Compiler Linker Issues of the LabWindows CVI Programmer Reference Manual Target Settings for Static Libraries When you set the Target Type to Static Library and select Build Target Settings the Target Settings dialog box has the following options e Library File The name of the static library file for the release version of your program Changing the value of Library File allows you to edit the filename for the release configuration You can use the Browse button to select an existing filename Library Generation Choice
106. 3 14 Whole Word option 3 14 Wrap option 3 13 Find What text box option Find command 4 12 Finish Function command 2 40 First Function Panel Window command 6 13 FLAT macro 2 69 Flatten Libraries option 6 1 Flatten option Select Function Panel dialog box 2 45 Follow Pointer Chain command 10 2 10 7 Font command 4 28 font options AppFontBold A 7 AppFontName A 7 AppFontSize A 7 DialogFontBold A 5 DialogFontName A 5 DialogFontSize A 5 EditorFontBold A 6 EditorFontName A 6 EditorFontSize A 6 MenuFontBold A 6 MenuFontName A 6 MenuFontSize A 6 MessageBoxFontBold A 7 MessageBoxFontName A 6 MessageBoxFontSize A 6 fonts directory table A 4 fonts setting and applying defaults 3 11 Force Loaded Instrument Drivers into Interactive Window option Environment command 2 62 National Instruments Corporation Index Force Project Files into Interactive Window option Environment command 2 62 format conversion of files during loading 2 43 Format menu Array and String Display windows 11 5 Variables and Watch windows 10 12 FP Auto Load List command 7 2 FP File Format command 7 9 fp files See instrument driver function panel fp files Full Run Time Engine option Run Time Engine Support Create Distribution Kit dialog box 2 28 Run Time Support option Target Settings dialog box Target Type Dynamic Link Library 2 18 Target Type Executable 2 15 function classes See function trees Function comma
107. 3 4 Reattach Program command Edit Instrument dialog box 2 44 Recall Function Panel command 4 18 invoking 4 18 multiple panels for one function 4 18 recalling from function name only 4 18 syntax requirements 4 19 Redo command Function Panel Editor 8 2 Source and Interactive Execution windows 4 8 User Interface Editor 3 5 Refresh Status command Source Code Control submenu 2 53 Register ActiveX Server After Build option Target Settings dialog box 2 21 regular expression characters table 4 13 Regular Expression option Find command Source and Interactive Execution windows 4 12 Variables window 10 4 Regular Expression option Find UIR Objects dialog box 3 14 related documentation xxii Release command 3 23 release executables See also Create Distribution Kit dialog box Create Release Executable command 2 12 LabWindows CVI User Manual Index Run Time Support option Target Settings dialog box Target Type Dynamic Link Library 2 18 Target Type Executable 2 15 Release option Configuration command 2 11 Remove From Source Control command Source Code Control submenu 2 53 Replace command Function Panel Editor 8 5 Function Tree Editor 7 4 Help Editor 9 5 Source and Interactive Execution windows 4 15 Replace dialog box Find Next button 4 15 Next File button 4 15 Replace All button 4 15 Return button 4 15 Stop button 4 15 Require function prototypes option 2 67 4 4 Require return values for no
108. 4 29 Generate Function Tree command 4 31 Generate Visual Basic Include command 4 30 Preprocess Source File command 37 Syntax Coloring option 4 29 Toolbar command 4 28 Translate LW DOS Program 4 29 User Defined Tokens for Coloring command 4 29 User Interface Editor Assign Missing Constants command 3 26 Next Tool command 3 24 Operate Visible Panels command 23 Preferences command 3 24 Save in Text Format command 3 26 Variables and Watch windows Add Watch Expression command 10 13 Estimate Number of Elements command 10 13 Interpret As command 10 13 Variable Size command 10 13 Workspace window Build Options command 2 64 Change Shortcut Keys command 2 70 Colors command 2 70 Environment command 2 61 Other Symbols option External Compiler Support dialog box 2 25 Other User Interface Editor Preferences dialog box 3 25 Output command 8 9 10 3 11 4 output control parameters specifying 6 5 Output Window Region 2 4 Overwrite command 11 5 P Panel Callbacks command 3 21 Panel command 3 8 Panel Settings section Edit Panel dialog box 3 8 panels preferences for new panels 3 24 showing hiding 3 14 Panels Movable command 8 13 parent pointer 10 2 parentheses finding pairs of 4 10 Paste Above command 7 2 Paste Below command 7 2 Paste command Function Panel Editor 8 3 Help Editor 9 5 Source and Interactive Execution windows 4 8 User Interface Editor 3 6 Patents command 2 73 path option
109. 61 Wi ndow Punction Tree de ate ete eo D I SURG dean 2 61 Mandow Help Bditor 4iiin e eee rete tenera 2 61 Window Interactive Execution ccccccssccccceesssseccecssssececceeessseeeeceseseeeeeeenses 2 61 Window Open Source Files rennen 2 61 Options Menu for the Workspace Window sese 2 61 Options Environment essere enne 2 61 Options Build Options eese neret nennen eren 2 64 Options Change Shortcut Keys ssesesseeeeeeeeeeen eee 2 70 Options Colors oe o Rn Ha a Re 2 70 Toolbars in LabWindows CVI sse 2 71 National Instruments Corporation Vii LabWindows CVI User Manual Contents Help Menu for the Workspace Window esee nre 2 72 Help Cont nts 3 rece esee en Rer tee aha dhe elias 2 72 Help WandoWs S DK iet rmt deret wick nese ette 2 72 Help LabWindows CVI Bookshelf eee 2 73 Help Workspace View Selection esee 2 73 Help Tip of the Day eerte ren retener eer eR 2 73 Help NI Example Finder 4 eerie eee eene nenne nent 2 73 Help Web Einks 3 ta err et ere ent abate ceat rnv en 2 73 Help Patents ode cet tae oeste eive de 2 73 Help About LabWindows CVI sseeseeeeeeeeeenee nene 2 73 Chapter 3 User Interface Editor User Interface Editor OVerview ccccccccccsssscceessssseeccecsesseeecccesssseececcsssse
110. 7 13 Help Editor 9 6 Source and Interactive Execution windows 4 37 User Interface Editor 3 27 Variables and Watch windows 10 14 Workspace window About LabWindows CVI 2 73 Contents command 2 72 LabWindows CVI Bookshelf 2 73 NI Example Finder 2 73 Patents 2 73 Tip of the Day 2 73 Web Links 2 73 Windows SDK 2 72 Workspace View Selection 2 73 Help Style command 7 9 Hide command 4 7 10 3 Hide command note 4 7 Hide Panels command 3 14 Hide Windows option Environment command 2 61 Horizontal Centers option Alignment command 3 15 Distribution command 3 16 Horizontal Compress option Distribution command 3 17 Horizontal Gap option Distribution command 3 16 Icon control Target Settings dialog box 2 14 icons associated with variables 10 2 Status column Workspace window 2 10 Image base address option 2 65 ni com Import Library Base Name option Target Settings dialog box 2 18 include directory table A 4 Include File command 6 12 include files add missing files 4 21 generating for Visual Basic 4 30 prompting for path 2 66 tracking dependencies 2 66 Include Hardware Configuration option Create Distribution Kit dialog box 2 31 Include option Add Files to Project command 2 9 Include Paths button Environment dialog box 2 63 Initial Control Width command 8 13 Input command 8 5 11 4 input control parameters specifying 6 4 Insert Child Item option Edit Menu Bar dialog box 3 7 Inse
111. CVI library function panel double click the function name in the Library Tree The Library Tree context menu contains the following options View library functions in alphabetical order by function name or function panel title or in a flat list instead of a hierarchical class organization Customize the Library Tree Open the function panel This option applies only to functions Access help for libraries classes and functions Browse the function in the Source Code Browser This option applies only to functions Finda library class or function within the Library Tree Expand all items within the Library Tree A Collapse all items within the Library Tree Window Confinement Region Contains open Source windows User Interface Editor windows and Function Tree Editor windows When you open any of these windows the menu and toolbar change to reflect new options in those windows You can release windows from the Window Confinement Region by selecting Window Release Window Output Window Region Contains the Build Errors Run Time Errors Source Code Control Errors Debug Output and Find Results windows These windows contain lists of errors output and search matches You can double click items in the list to highlight that line in a file you cannot double click items for source code control errors To release these windows from the Output Window Region right click in a window and select
112. Chapter 2 Workspace Window Windows System 16 bit Directory The full path of the folder for 16 bit system DLLs Common values for this directory are C Winnt System for Windows 2000 and C Windows System for Windows 98 Windows System Directory The full path of the System folder Common values for this directory are C Winnt System32 for Windows 2000 and C Windows System for Windows 98 Windows Volume Root Directory The root directory of the partition containing the currently running Microsoft Windows A common value for this directory is C V Notice that this value can be different than the Root Directory option because Windows may not always be installed on C or because the Root Directory may not always resolve to C V Sub Folder The subfolder that appears in the user installation You can specify V to denote the same level as the Parent Folder The Build Information section of the Create Distribution Kit dialog box contains the following options Build Location The path into which you want to build your distribution kit At a minimum you must have at least 3 5 MB of space in the build location to successfully create a basic distribution kit Creating a distribution kit directly to a 1 44 MB floppy disk is not supported To install your application on another machine you must include all of the files from this directory and then launch setup exe Browse Browses for a build location In
113. Click the appropriate button in the Generate Code dialog box to replace the existing function insert a new function or skip to the next generated function LabWindows CVI User Manual 3 18 ni com Chapter 3 User Interface Editor Generating All Code Selecting Code Generate All Code opens the Generate All Code dialog box Use the Generate All Code dialog box to specify the following options for the generated code e Choose to create a new project for the generated source file or add the generated file to the currently loaded project e Select the panel or panels that the main function loads and displays at run time LabWindows CVI automatically assigns a default panel variable name for each panel in the uir file You can modify the panel variable name e Select the callback function or functions that terminate the program For a CodeBuilder program to terminate successfully you must include a call to Qui tUserInterface iyi Note Callback functions associated with close controls are automatically checked in the Program Termination section of the Generate All Code dialog box You can define a control as a close control in the Edit Panel dialog box by selecting Edit Panel e Ifyou have ActiveX servers in your panel the Generate All Code dialog box lists the ActiveX servers corresponding to all the controls that you created in the User Interface Editor window For each server that you select LabWindows CVI runs the ActiveX Controller Wi
114. Control submenu contains menu items that you can use to perform operations with your source code control system LabWindows CVI does not provide a source code control system If you have a source code control system that implements the Microsoft standard Source Code Control Interface you can attach a LabWindows CVI project to your source code system using the Source Code Control Options dialog box accessible through Options Environment or Edit Project for project specific source code control options The exact behavior of the commands in the Source Code Control submenu depends on the implementation of the Source Code Control Interface that your source code control system provides and on the settings in the Source Code Control Options dialog box Some of the source code control commands open a Select Files dialog box when you select the commands from the Workspace window Use the Select Files dialog box to select the files you want to include in the operation and set any available options for the operation Click the Advanced button to set any options that your Source Code Control Interface provides for the operation Source Code Control commands and options are dimmed if the Source Code Control Interface that the source code control system provides does not support the command or option Many of the commands transfer files between your hard disk and the Source Code Control program attached to the current LabWindows CVI program Depending on the com
115. Controls To cut or copy controls to the clipboard select the control you want to place on the clipboard and then select Edit Cut Controls or Copy Controls LabWindows CVI places the selected control and its associated help on the clipboard If you used the Copy Controls command the control remains in the window Use the Cut Controls command to delete controls from the window Controls you cut or copy do not accumulate on the clipboard LabWindows CVI replaces a control every time you cut or copy a control to the clipboard To use the Cut Controls or Copy Controls commands follow these steps 1 Select the control you want to place on the clipboard by clicking the control or pressing Tab until the control is highlighted Select multiple controls by dragging the mouse over the controls You also can press lt Shift Click gt to select multiple controls 2 Select Edit Cut Controls or Copy Controls Edit Paste The Paste command copies objects from the clipboard and places them on a Function Panel window You can paste the same object as many times as you need to Controls or panels remain on the clipboard until you use Cut Controls Cut Panel Copy Controls or Copy Panel again The New and Open commands do not erase the clipboard You cannot paste a return value control on a function panel that already contains a return value control A function panel can contain only one return value control Edit Edit Control You can modify a
116. DLLs 2 22 specifying in External Compiler Support dialog box 2 25 Syntax Coloring option 4 29 system colors selecting for panels 3 24 3 25 system integration services B 1 T Tab length option Editor Preferences command 4 27 Tab Order command 3 11 Tag Scope command 4 17 tagged lines Clear Tags command 4 17 Next Tag command 4 17 Previous Tag command 4 17 Tag Scope command 4 17 Toggle Tag command 4 17 Target Settings command 2 14 Target Settings dialog box Target Type Dynamic Link Library DLL File 2 18 Exports 2 22 Generate Map File 2 21 Import Library Base Name 2 18 Import Library Choices button 2 21 LoadExternalModule Options 2 22 Register ActiveX Server After Build 2 21 Run Time Support 2 18 Type Library 2 22 LabWindows CVI User Manual Index Version Info 2 21 Where to copy DLL 2 18 Target Type Executable Application File 2 14 Application Icon File 2 14 Application Title 2 14 Create Console Application 2 16 Embed Project UIRs 2 16 Generate Map File 2 16 Icon 2 14 LoadExternalModule Options 2 17 Register ActiveX Server After Build 2 16 Run Time Support 2 15 Version Info 2 16 Target Type Static Library Library File 2 23 Library Generation Choices 2 23 Target Settings for DLLs 2 18 Target Settings for Executables dialog box 2 14 Target Type command 2 14 technical support B 1 telephone technical support B 1 Terminate Execution command 2 40 text format Load from Text F
117. Editor sese 8 2 File Add Program File to Project eeesseseeeeeeeeree eren 8 2 Edit Menu for the Function Panel Editor essen 8 2 Edit Undo and Redo 40s a serene ei epe hri ee Des 8 2 Edit Cut Controls and Copy Controls ee 8 3 Edit Paste ce e tem EU Den WOO ea P ds 8 3 Edit Edit Control 1 5 ee RII rettet tee i rea erret ae tents 8 3 Edit Change Control Type a n nennen nennen 8 3 Edit Customize Controls esssssisseeseseeeeeeeee eene 8 4 Edit Edit Hun Ctr OM xs uit rre ertet evene oerte ted 8 4 Edit Control Coordinates ccccccsscccccessscccccesssceeeceecsseeececessseeseeeessseeeeeees 8 4 Edit Emd u eic ente etit ec eere rre tod 8 4 Edit Replace een a etr ERR E IR EO pee TS 8 5 Edit Control Help 5er teret eie eei 8 5 Edit Function Help or Window Help eene 8 5 Create Menu for the Function Panel Editor eeessseeeeeeeeeeeennee 8 5 Creates Input snai i dene ee eR eta dee etae PV e ees os een 8 5 Create Slides ssi ette ttt eres reb b o a He tee le eet 8 6 Create Binary inier non heiir ire nier e e eee ede ren deese aen 8 6 Create Rillg eee tte de iter em n edet bees 8 7 CreatesNumerie dvor ERR RR RED PUE IUE 8 8 Create OUtput descente e tte qe eei eon 8 0 Creates Ret rn Value 2 ihe ck ise nep t bai Doe te deiteireta 8 9 Cr
118. Error Item command to step to the next build error LabWindows CVI highlights source code as you step through the errors You can use the Previous Error Item command to step to the previous build error Build Build Errors in Next File If when you build your project LabWindows CVI displays errors for multiple files you can use the Build Errors in Next File command to step to your next file with build errors LabWindows CVI highlights source code as you step through the errors National Instruments Corporation 4 21 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows Run Menu for the Source and Interactive Execution Windows This section explains how to use the commands in a Source or Interactive Execution window Run menu Use the commands in the Run menu to run and debug programs You can set breakpoints and watch expressions step through code view variable values and more The Debug Continue Step Over Step Into Finish Function Terminate Execution Break On Breakpoints Stack Trace Up Call Stack Down Call Stack Execute Command Line Threads and Loaded Modules commands work in the same way as they do in the Workspace window Refer to the Run Menu for the Workspace Window section of Chapter 2 Workspace Window for more information Introduction to Breakpoints and Watch Expressions You can pause the execution of a program without aborting it altogether by marking breakpoints in code You can
119. LabWindows CVI User Manual Wy NATIONAL July 2003 Edition gt INSTRUMENTS Part Number 323661A 01 Worldwide Technical Support and Product Information ni com National Instruments Corporate Headquarters 11500 North Mopac Expressway Austin Texas 78759 3504 USA Tel 512 683 0100 Worldwide Offices Australia 1800 300 800 Austria 43 0 662 45 79 90 0 Belgium 32 0 2 757 00 20 Brazil 55 11 3262 3599 Canada Calgary 403 274 9391 Canada Montreal 514 288 5722 Canada Ottawa 613 233 5949 Canada Qu bec 514 694 8521 Canada Toronto 905 785 0085 Canada Vancouver 514 685 7530 China 86 21 6555 7838 Czech Republic 420 2 2423 5774 Denmark 45 45 76 26 00 Finland 385 0 9 725 725 11 France 33 0 1 48 14 24 24 Germany 49 0 89 741 31 30 Greece 30 2 10 42 96 427 India 91 80 51190000 Israel 972 0 3 6393737 Italy 39 02 413091 Japan 81 3 5472 2970 Korea 82 02 3451 3400 Malaysia 603 9131 0918 Mexico 001 800 010 0793 Netherlands 31 0 348 433 466 New Zealand 1800 300 800 Norway 47 0 66 90 76 60 Poland 48 0 22 3390 150 Portugal 351 210 311 210 Russia 7 095 238 7139 Singapore 65 6226 5886 Slovenia 386 3 425 4200 South Africa 27 0 11 805 8197 Spain 34 91 640 0085 Sweden 46 0 8 587 895 00 Switzerland 41 56 200 51 51 Taiwan 886 2 2528 7227 Thailand 662 992 7519 United Kingdom 44 0 1635 523545 For further support information refer to the Technical Support and Professional Services appendix To comment on the documentation
120. PMENT SOFTWARE USED TO DEVELOP AN APPLICATION INSTALLATION ERRORS SOFTWARE AND HARDWARE COMPATIBILITY PROBLEMS MALFUNCTIONS OR FAILURES OF ELECTRONIC MONITORING OR CONTROL DEVICES TRANSIENT FAILURES OF ELECTRONIC SYSTEMS HARDWARE AND OR SOFTWARE UNANTICIPATED USES OR MISUSES OR ERRORS ON THE PART OF THE USER OR APPLICATIONS DESIGNER ADVERSE FACTORS SUCH AS THESE ARE HEREAFTER COLLECTIVELY TERMED SYSTEM FAILURES ANY APPLICATION WHERE A SYSTEM FAILURE WOULD CREATE A RISK OF HARM TO PROPERTY OR PERSONS INCLUDING THE RISK OF BODILY INJURY AND DEATH SHOULD NOT BE RELIANT SOLELY UPON ONE FORM OF ELECTRONIC SYSTEM DUE TO THE RISK OF SYSTEM FAILURE TO AVOID DAMAGE INJURY OR DEATH THE USER OR APPLICATION DESIGNER MUST TAKE REASONABLY PRUDENT STEPS TO PROTECT AGAINST SYSTEM FAILURES INCLUDING BUT NOT LIMITED TO BACK UP OR SHUT DOWN MECHANISMS BECAUSE EACH END USER SYSTEM IS CUSTOMIZED AND DIFFERS FROM NATIONAL INSTRUMENTS TESTING PLATFORMS AND BECAUSE A USER OR APPLICATION DESIGNER MAY USE NATIONAL INSTRUMENTS PRODUCTS IN COMBINATION WITH OTHER PRODUCTS IN A MANNER NOT EVALUATED OR CONTEMPLATED BY NATIONAL INSTRUMENTS THE USER OR APPLICATION DESIGNER IS ULTIMATELY RESPONSIBLE FOR VERIFYING AND VALIDATING THE SUITABILITY OF NATIONAL INSTRUMENTS PRODUCTS WHENEVER NATIONAL INSTRUMENTS PRODUCTS ARE INCORPORATED IN A SYSTEM OR APPLICATION INCLUDING WITHOUT LIMITATION THE APPROPRIATE DESIGN PROCESS AND SAFETY LEVEL OF SUCH SYSTEM OR APPLICATION
121. Panel window can contain a special function panel called a common control function panel The first n controls on a common control function panel specify the first n parameters of all functions in the Function Panel window For more information about creating a common control function panel refer to the Create Menu for the Function Panel Editor section of Chapter 9 Function Panel Editor Convenient Viewing of Function Panel Variables Select Code View Variable Value or Add Watch Expression to view the contents of arrays structures and global variables that exist in function panel controls Depending on the type of the variable or expression the Variables Array Display String Display or Watch window appears with the variable or expression highlighted File Menu for Function Panel Windows The commands in the File menu for Function Panel windows work in the same way as the commands in the File menu for the Workspace window Refer to the File Menu for the User Interface Editor section of Chapter 3 User Interface Editor for more information National Instruments Corporation 6 5 LabWindows CVI User Manual Chapter 6 Using Function Panels File Add Program File to Project The Add Program File to Project command adds the instrument driver program file associated with the p file of the current Function Panel window to the project list Code Menu for Function Panel Windows This section contains detailed descriptions of th
122. Project in New Workspace LabWindows CVI stores in the workspace the settings that do not affect the way your project builds If you do not add the new project to the existing workspace LabWindows CVI creates a new workspace for the new project You also are prompted to transfer project options Build Options Include Paths Command Line Source Code Control Options from the old project to the new project If you choose Workspace a dialog box appears with a message that asks if you want to unload the current workspace and its associated project s Select Yes to unload the current workspace LabWindows CVI also prompts you to save any changes to the currently loaded files If you choose Function Tree a new Function Tree Editor window appears in which you can create a new p file File Open Use the Open command to open various types of files When you select Open a dialog box appears prompting you for a filename to load The Directory History ring displays a list of directories from which you have opened files previously If you choose Source or Include a Source window appears with your specified c or h file If you choose User Interface the User Interface Editor appears with your specified uir file If you choose Project LabWindows CVI prompts you to save any modified files in the old project and then loads the specified project in the Project Tree If you open a project that does not have a workspace of the same name in the s
123. Release Window Except for the Debug Output window all of these windows automatically open in the Output Window Region when they are modified unless you have released the windows To view these windows select the window you want to view from the Window menu Use the titled tabs to move among various windows Your project must contain one or more of the following files unless you use the files as instrument driver program files or load them dynamically using LoadExternalModule e Source files c e Object files obj e Library files 1ib DLL import libraries are in this category LabWindows CVI User Manual 2 4 ni com Chapter 2 Workspace Window The following files are optional in your project file list Header h files Listing h files makes it easy to open them for viewing or editing and ensures that the compiler can find them e User interface resource uir files Listing uir files makes it easy to open them for viewing or editing and ensures that LabWindows CVI can find them when you debug your application e Instrument driver function panel p files Listing p files lets LabWindows CVI automatically load instruments when you open the project e Instrument driver program files Listing these files overrides the loading precedence for instrument driver program files Opening and Loading Files Projects and Workspaces You can open c h and uir files in a workspace by double clicking the filen
124. S scroll bars Glossary A function definition in which parameters are declared outside of the parameter list A function panel control that displays a value that the function you execute generates An output control parameter must be a string an array or a reference parameter of type integer long single precision or double precision An area of the Workspace window in which errors output and search match windows appear A list of files usually including a source file user interface resource file and header file that your application uses An area of the Workspace window that contains the lists of projects and files in the current workspace A command that requires additional information before it can be executed a prompt command appears on a pull down menu suffixed with three ellipses A function panel control that displays a value returned from a function as a return value rather than as a formal parameter A function panel control that represents a range of values much like the slide control but displays only a single item in a list rather than displaying the whole list at once as the slide control does Each item has a different value associated with it This value is placed in the function call Areas along the bottom and right sides of a window that show your relative position in the file Scroll bars can be used with a mouse to move about in the window National Instruments Corporation G 5 LabWindow
125. Target Type Dynamic Link Library 2 21 Target Type Executable 2 16 Vertical Centers option Alignment command 3 15 Distribution command 3 16 Vertical Compress option Distribution command 3 16 Vertical Gap option Distribution command 3 16 View command 3 21 View menu Array and String Display windows 11 5 Function Panel Editor 8 11 Panels command 8 11 Function Panel window Current Tree command 6 12 Error command 6 12 Find Function Panel command 6 12 First Function Panel Window command 6 13 Function Panel History command 6 12 Include File command 6 12 Last Function Panel Window command 6 13 Next Function Panel command 6 13 Next Function Panel Window command 6 13 Previous Function Panel command 6 12 Previous Function Panel Window command 6 13 Toolbar command 6 11 National Instruments Corporation 1 31 Index Source and Interactive Execution windows Beginning End of Selection command 4 17 Clear Tags command 4 17 Find Function Panel command 4 19 Find UI Object command 4 19 Function Panel History command 4 17 Function Panel Tree command 4 18 Line command 4 17 Line Icons command 4 16 Line Numbers command 4 16 Next Tag command 4 17 Previous Tag command 4 17 Recall Function Panel command 4 18 Tag Scope command 4 17 Toggle Tag command 4 17 Toolbar command 4 16 User Interface Editor Find UIR Objects command 3 13 Preview User Interface Header File command 3 15 Show Hide Panels command
126. The VISA Library defines a special set of data types The IVI Library also uses some of these data types The data types strictly define the type and size of the parameters and therefore promote the portability of the functions to new operating systems and programming languages A subset of the VISA data types has been defined for use in the development of LabWindows CVI instrument drivers and are accessible as user defined data types The following table shows these special data types for instrument drivers National Instruments Corporation 5 11 LabWindows CVI User Manual Chapter 5 Using Instrument Drivers VISA Type Name Definition Vilnti16 Signed 16 bit integer Vilnt32 Signed 32 bit integer ViUInt16 Unsigned 16 bit integer ViUInt32 Unsigned 32 bit integer ViReal64 64 bit floating point number Vilnti16 An array of ViInt16 values Vilnt32 An array of ViInt32 values ViReal64 An array of ViReal64 values Vichar A string buffer ViConstString A read only string ViRsrc An instrument driver resource descriptor string ViSession An instrument driver session handle ViStatus An instrument driver return status type ViBoolean Boolean value ViBoolean An array of ViBoolean values To use these special user defined data types in an instrument driver complete the following steps 1 Addthe VISA data types to the function panel file by using the Options Data Type command in th
127. UNEX tags support nesting Stops excluding code from function panel generation This tag supports nesting HFP helpfile Copies the contents of helpfile into the instrument help of the function tree HCL helpfile Sets the class help for the class node following this tag to the contents of helpfile This tag is overwritten by the first class node following this tag HFUN helpfile Sets the function help for the function following this tag to the contents of helpfile This tag applies only to the function immediately following the tag HPAR p1 Sets the help for parameter p1 for the function following this tag helpfilel to the contents of helpfile This tag applies only to the function immediately following the tag HRET helpfile Sets the help for the return value for the function following this tag to the contents of helpfile This tag applies only to the function immediately following the tag LabWindows CVI User Manual 4 36 ni com Chapter 4 Source and Interactive Execution Windows Options Create Object File You can use the Create Object File command to compile the contents of a Source window into an object file Compiled files consume less memory and run faster than source files Object files are especially useful for instrument driver programs because they load faster Compiled files cannot be debugged however and they do not have run time error checki
128. Windows 2000 NT XP ReadFromPhysicalMemory All ReadFromPhysicalMemoryEx All WriteToPhysicalMemory All WriteToPhysicalMemoryEx All MapPhysicalMemory All UnMapPhysicalMemory All DisableInterrupts Windows 98 EnableInterrupts Windows 98 DisableTaskSwitching Windows 98 LabWindows CVI User Manual 2 30 ni com Chapter 2 Workspace Window The LabWindows CVI Run Time Engine loads the low level support driver automatically at startup if the support driver is present on the machine e Install ActiveX Container Support Installs ActiveX container support on the user s computer If your project includes any ActiveX controls you must enable this option You also must enable Register Files As ActiveX Servers if you distribute ActiveX controls in your project Include Hardware Configuration Includes an NI Measurement amp Automation Explorer MAX hardware configuration export file Selecting this option enables the Export button which you can use to generate a hardware configuration file using MAX Additionally this option includes the specified export file in the distribution kit for installation on the target machine The export file is installed in the directory you specified in the options of the Install Location section After you create the configuration file the first time you do not need to run the MAX export again unless you need to include any hardware or task changes that you have made At installation time on the target machin
129. about these commands refer to the Help Menu for the Workspace Window section of Chapter 2 Workspace Window Help Keyboard Help This command shows a list of default shortcut keys you can use in the Source window National Instruments Corporation 4 37 LabWindows CVI User Manual Using Instrument Drivers This chapter presents a general overview of instrument drivers Refer to the LabWindows CVI Instrument Driver Developers Guide for more information about creating instrument drivers An instrument driver is a set of high level functions with graphical function panels that make programming easier The driver encapsulates many low level operations such as data formatting and communication with GPIB RS 232 and VXI instruments into intuitive high level functions An instrument driver usually controls a physical instrument but also can serve as a software utility Instrument driver programs have an associated include file that declares the high level functions you can call the global variables you can access and the defined constants you can use Instrument Driver Files A LabWindows CVI instrument driver typically consists of the following three or four files Each file has the same base filename which is typically an abbreviation of the actual instrument name The instrument driver files must reside in the same directory on your disk or they must be in the appropriate V XIplug amp play directories or in the appropriate IVI dir
130. ace Window sees eene 2 8 Edit Workspace c pn SN ev e Oe ee ene IS 2 8 Edit Project terres oed ebes ie ni ere vues ere ET CS 2 8 Edit Add Files to Project esses eene nnne 2 9 View Menu for the Workspace Window eese 2 0 View Project Tree erii eere rt rere p Ie aree e Ede Ee FER eR aE iaro ekin 2 9 Naew Library Tree ater eats e eet et e EGRE eer necs 2 9 View Fool bates si eRERH e em eee 2 10 View Window Confinement Region eese eee 2 10 View Columns 42e Ie eda eee eter ee NE 2 10 National Instruments Corporation V LabWindows CVI User Manual Contents Build Menu for the Workspace Window sese een 2 10 Build Configuration sees eene nete a s 2 11 Build Create Debuggable Executable esee 2 11 Build Create Debuggable Dynamic Link Library esses 2 11 Build Create Release Executable eeeeeeeeee 2 12 Build Create Release Dynamic Link Library eese 2 12 Build Createsstatic PAbraty a euet e eee 2 13 Build Mark Project for Compilation esee 2 13 Build Batch Build 5 nere ege 2 13 Build Target Type 3 eon ere teo eite bed UH 2 14 Build Target Settings 5 ectetet tet eet See re eia 2 14 Build External Compiler Support eee 2 23 Build Create Distribution Kit
131. ace window Refer to the Window Menu for the Workspace Window section of Chapter 2 Workspace Window for more information about these commands LabWindows CVI User Manual 10 12 ni com Chapter 10 Variables and Watch Windows Options Menu for Variables and Watch Windows To use the Options menu commands select a variable and then access the command from the Options menu Options Variable Size The Variable Size command displays the number of bytes the variable consumes If you declare the variable as a buffer the variable size is the total size of the buffer If you declare the variable as a pointer the Variable Size command displays the number of bytes the pointer itself consumes and the number of bytes in the object that the pointer references For example if your code contains the following declaration static double y array 4 Variable Size displays a variable size of 32 bytes for y array Assume your code defines db1Ptr as follows static double dblPtr dblPtr malloc 2 sizeof double Variable Size displays a variable size of 4 bytes for db1Ptr pointing to 16 bytes 2 elements Options Interpret As The Interpret As command displays a variable as if it were another type Selecting a type from the Available Types dialog box displays the variable as the new type If Interpret As does not offer the exact type you want you can use a watch expression Options Estimate Number of Elements The Variables wind
132. ad the customization DLLs e The DLL path specified in the Customize Controls dialog box e The folder where the function panel is located e The default system search path Tools Generate New Source For Function Panel Generate New Source For Function Panel generates function definitions and declarations in your driver source and header files If a function definition already exists LabWindows CVI prompts you for permission to update it You can replace insert above or below or skip without updating Your choice also applies to the declaration Tools Go to Definition Go to Definition opens the driver source file and jumps to the definition of the function that is currently selected in the function tree Tools Go to Declaration Go to Declaration opens the driver include file and jumps to the declaration of the function that is currently selected in the function tree Window Menu for the Function Tree Editor The Window menu for the Function Tree Editor works in the same way as the Window menu for the User Interface Editor For more information about these commands refer to the Window Menu for the User Interface Editor section of Chapter 3 User Interface Editor Options Menu for the Function Tree Editor Use the commands in the Options menu to select the help style generate function prototypes generate a doc file create a DLL project select whether to enable IVI or VXIplug amp play style and save the function panel a
133. ag command toggles the tag associated with the active line Use tags to mark lines of code that you want to revisit quickly View Next Tag Use the Next Tag command to go to the next tagged line Selecting Next Tag repeatedly takes you to all tagged lines in the windows you specify using the Tag Scope command View Previous Tag Use the Previous Tag command to go to the previous tagged line Selecting Previous Tag repeatedly takes you to all tagged lines in the windows you specify using the Tag Scope command View Tag Scope Use the Tag Scope command to set which files you want to search with Next Tag and Previous Tag You can set the scope to the current window all open windows or all files View Clear Tags The Clear Tags command opens a dialog box in which you can remove existing Source window tags View Function Panel History The Function Panel History command displays a scrollable list of the function panels you have used during the current LabWindows CVI session You can display function panels from the list as new windows or you can overwrite the current Function Panel window National Instruments Corporation 4 17 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows View Function Panel Tree The Function Panel Tree command displays the Select Function Panel dialog box for the most recently used function panel View Recall Function Panel Use the Recall Function Panel command to di
134. allation requirements defined by the IVI Foundation To create a compliant IVI Driver installer contact National Instruments directly or send an email to instrument driver ni com To create a distribution kit that installs your IVI instrument driver you can use the Options Create DLL Project command for p files in the IVI framework directory to automatically generate a LabWindows CVI project for your instrument driver DLL If you enable the Options IVI VXIplug amp play Style command when you create your project the project created will contain all the necessary Distribution Kit settings You must add your Soft Front Panel executable and any associated files to the file group called Soft Front Panel Files and specify the executable to run after setup in the Distribution Kit Advanced Options dialog box Default Installation Location Set the Parent Folder to IVI Standard Root Directory and specify the instrument name such as tktds3xx as the Sub Folder in your distribution kit LabWindows CVI User Manual 2 36 ni com Chapter 2 Workspace Window Soft Front Panel You always must specify the Soft Front Panel as the first group in your distribution kit In addition always specify your Soft Front Panel as the Executable to Run After Setup in the Advanced Distribution Kit Options dialog box Install the Soft Front Panel file group to the application directory and place any extra files needed by the Soft Front Panel uir files help fil
135. alog box 3 13 Center Label command 3 17 Change Control Type command 8 3 Change Format command 6 15 Character Select Mode 4 5 Check In command Source Code Control submenu 2 52 Check Out command Source Code Control submenu 2 52 Checked option Edit Menu Bar dialog box 3 7 Child Panels Attributes section in Edit Panel dialog box 3 9 child structure 10 2 Class command 7 4 Clear Interactive Declarations command 4 4 4 21 6 7 Clear Source Code Control Error Window command Source Code Control submenu 2 53 Clear Tags command 4 17 Clear Window command 4 9 Close All command 2 57 Close command 3 4 4 7 Close Variable command 10 2 10 6 Code menu Function Panel window Add Watch Expression command 6 11 LabWindows CVI User Manual Index Clear Interactive Declarations command 6 7 Declare Variable command 6 3 6 4 6 6 Insert Function Call command 6 11 Run Function Panel command 6 6 Select Attribute Constant command 6 8 Select UIR Constant command 6 7 Select Value command 6 7 Select Variable or Expression command 6 8 Set Target File command 6 11 View Variable Value command 6 5 6 11 Function Panel windows View Variable Value command 11 1 11 3 User Interface Editor Generate submenu All Callbacks command 3 20 All Code command 3 19 Control Callbacks command 3 21 Generate All Code dialog box 3 19 Main Function command 3 20 Menu Callbacks command 3 21 Panel Callbacks command 3 21 Preferences
136. alysis or Advanced Analysis analysis lib Traditional NI DAQ dataacq lib NI DAQmx nidaqmx lib National Instruments Corporation 2 47 LabWindows CVI User Manual Chapter 2 Workspace Window Library File VXI nivxi lib GPIB GPIB 488 2 gpib lib You also must install the proper hardware drivers from the National Instruments Driver CD to use the optional libraries Tools Menu for the Workspace Window This section describes how to use the commands in the Workspace window Tools menu Tools Create ActiveX Controller Use the Create ActiveX Controller command to generate a new instrument driver for an ActiveX server When you select the Create ActiveX Controller command LabWindows CVI displays the ActiveX Controller Wizard The ActiveX Controller Wizard contains help that describes each step of building an ActiveX controller Tools Create ActiveX Server You can use the LabWindows CVI Create ActiveX Server Wizard to provide settings for your ActiveX Server project The Create ActiveX Server Wizard contains help that describes each step of building an ActiveX Server Tools Edit ActiveX Server Use the Edit ActiveX Server dialog box to create and modify objects and interfaces in your ActiveX server You also can modify the server settings The Edit ActiveX Server Wizard contains help that describes each step of editing an ActiveX Server For more information refer to the Building A
137. am You can access the Array Display and String Display windows from the Variables window The Variables window is useful for debugging programs LabWindows CVI updates the Variables window at each breakpoint and you can modify the variables while in a breakpoint state Window Watch The Watch command brings the Watch window to the front The Watch window shows a set of variables and expressions that you specify You can access the Array Display and String Display windows from the Watch window The Watch window is useful for debugging programs Watch variables and expressions update at each breakpoint unless you set them to update continuously Window Array Display If an Array Display window is active it appears in the Window menu Selecting an Array Display window from the Window menu brings it to the front for viewing and editing Window String Display If a String Display window is active it appears in the Window menu Selecting a String Display window from the Window menu brings it to the front for viewing and editing Window User Interface All open user interface resource uir files dynamically appear in the Window menu If the file is in the Window Confinement Region only the filename appears If the file is not in the Window Confinement Region the full pathname appears Select a uir file from the User Interface submenu to bring the corresponding User Interface Editor window to the front LabWindows CVI User Manual
138. ame directly Double clicking a p file opens the Select Function Panel dialog box for the instrument driver You also can open files by dropping them onto the Window Confinement Region Dropping a p file onto the Window Confinement Region opens the Function Tree Editor and loads the fp file To add a file to the active project drop the file onto the Project Tree When you drop a project file onto the Window Confinement Region LabWindows CVI loads the project in a new workspace When you drop a project onto the Project Tree LabWindows CVI adds the project to the currently loaded workspace When you drop a workspace file onto the Window Confinement Region or Project Tree LabWindows CVI loads the workspace File Menu for the Workspace Window This section explains how to use the commands in the File menu for the Workspace window File New Use the New command to open new empty windows If you choose Source or Include a new Source window appears in which you can create a new c or h file If you choose User Interface a new User Interface Editor window appears in which you can create a new uir file National Instruments Corporation 2 5 LabWindows CVI User Manual Chapter 2 Workspace Window If you choose Project the New Project Options dialog box appears To include the new project in the existing workspace select Create Project in Current Workspace To add the project to a new workspace select Create
139. ame folder LabWindows CVI creates a new workspace for the project with default options NI recommends that you open workspaces instead of projects Choose the Workspace command to open an existing workspace from the list in the dialog box LabWindows CVI prompts you to save any changes to the currently loaded files If you choose Function Tree the Function Tree Editor appears with the specified p file File Save All The Save All command saves all open files to disk File Set Active Project Use the Set Active Project command to switch to a different project in the current workspace The active project determines which project you build debug and so on LabWindows CVI User Manual 2 6 ni com Chapter 2 Workspace Window File Save Project Use the Save command to write the project prj file to disk File Save Project As Use the Save As command to write the project file to disk using a new name you specify File Save Workspace Use the Save Workspace command to write the currently loaded workspace file to disk Saving the workspace does not save changes you made to projects within the workspace File Auto Save Workspace If you enable the Auto Save Workspace command LabWindows CVI automatically saves workspace files and projects in the workspace When you load a workspace the Auto Save Workspace command is initially enabled unless the file is read only If you enable the command LabWindows CVI automatically sa
140. and Libraries For All Compilers option The compiler will be borland or msvc Use this variable when you need to place a single in your command line At installation time these variables will be replaced with the proper values before the arguments are passed to the executable Note Put quotes around items that might contain spaces to ensure that your program receives the arguments correctly The variables that can contain spaces are group name src and dest For example assume the following command line arguments I Sdest myapp txt from src group name The actual command line passed to the executable to run after setup is structured as follows values vary based on user choices and installation title options I c myapp myapp txt from c Ntemp My App My App Setup LabWindows CVI User Manual 2 38 ni com Chapter 2 Workspace Window e Start Programs Sub Folder The name of the shortcut subfolder created in Start Programs during the installation This option is available only if you select Start Programs Sub Folder from the Create Shortcut option in the Create Distribution Kit dialog box If you select the Use Default option LabWindows CVI uses the following priority to determine the program group name If the project target is an executable and you entered an application title in the Target Settings dialog box LabWindows CVI uses the application title Otherwise if you created the target exec
141. and String Display Windows Many of the commands in the File menu work in the same way as the commands in the File menu for the Workspace window Refer to the File Menu for the Workspace Window section of Chapter 2 Workspace Window for more information File Output The Output command writes the contents of the window to an ASCII or binary data file on disk When you select Output a dialog box appears prompting you to specify the name of the file File Input This command is valid only in the Array Display window Use the Input command to select an ASCII or binary data file on disk to replace the currently viewed array in memory Edit Menu for the Array and String Display Windows The Edit Value and Find commands work in the same way as the commands in the Edit menu for the Variables and Watch windows Refer to the Edit Menu for Variables and Watch Windows section of Chapter 10 Variables and Watch Windows for more information Edit Goto The Goto command moves the highlight to a particular location in the current string or array plane When you execute the Goto command a dialog box appears where you can enter the row and column number of the location For a single string specify only the column Edit Edit Character Use the Edit Character command in the String Display window to change one character at a time Edit Edit Mode The Edit Mode command places the String Display window in edit mode so you can directly edit
142. and to specify other instrument drivers that the current instrument driver depends on LabWindows CVI loads these instrument drivers automatically when you load the current instrument driver The FP Auto Load List command opens a dialog box in which you can list simple p filenames Do not include drive or directory names When you load the current instrument driver LabWindows CVI also tries to load the instrument drivers identified by these p filenames LabWindows CVI User Manual 7 2 ni com Chapter 7 Function Tree Editor LabWindows CVI looks for these p files in the following sequence 1 Ifthe p file is under the IVI framework directory LabWindows CVI looks for the p file using the following pathname where IVI frmwk is the IVI framework directory and prefix is the instrument prefix IVIfrmwkNdriversNprefixNprefix fp 2 Ifthe fp file is under the VXIplug amp play framework directory LabWindows CVI looks for the p file using the following pathnames where vppfrmwk is the VXIplug amp play framework directory and prefix is the instrument prefix vppfrmwk support prefix prefix fp vppfrmwk prefix prefix fp LabWindows CVI looks in the directory of the referencing fp file 4 LabWindows CVI looks for the fp files in the instrument directories list Edit the instrument directories list by selecting Instrument Search Directories 5 LabWindows CVI looks for the files in the instr directory under the direct
143. anel controls LabWindows CVI User Manual accessing 6 1 building for instrument drivers 5 14 creating example 8 14 definition 1 3 6 1 finding functions 4 19 generated code box 6 3 invoking Function Panel Editor 8 1 moving and copying example 7 14 multiple function panels per window 6 3 purpose and use 6 1 recalling See Recall Function Panel command function prototypes requiring 2 67 function subwindow Variables window 10 1 Function Tree Editor adding help example 9 6 Create menu 7 4 Edit menu 7 1 examples creating function tree with multiple classes 7 13 moving and copying function panels 7 14 using existing function panels in new driver 7 14 File menu 7 1 Help menu 7 13 Instrument menu 7 6 invoking 7 1 invoking Function Panel Editor 8 1 Library menu 7 6 opening 2 6 Options menu 7 8 purpose and use 1 3 Tools menu 7 6 Window menu 7 8 Function Tree Help Editor window 1 3 function trees adding functions building for instrument drivers 5 14 ni com classes adding to empty tree or class 7 6 adding to function tree 7 4 help 9 3 overview 6 1 creating with multiple classes example 7 13 definition 6 1 7 1 editing items example 7 15 inserting functions 7 6 functions adding to empty tree or class browsing 2 54 inserting into existing tree 7 6 requiring return values for non void functions 2 67 functions for instrument drivers building function panels 5 14 buildin
144. anel dialog box You also can right click the instrument driver in the Library Tree and select Instrument Help from the context menu e To view class help select the class in the Select Function Panel dialog box and click the Help button You also can right click the class in the Library Tree and select Class Help from the context menu e To view new style function help select Help Function in the function panel or right click the function panel background You also can right click the function panel or right click the function in the Library Tree and select Function Help from the context menu Viewing old style help differs e Toview control help select Help Control in the function panel You also can right click the control Function Class Help To display help about a class of function panels right click the class in the function tree and select Class Help or select the class in the Select Function Panel dialog box and click the Help button Enter function class help from the Function Tree Editor Complete the following steps to add help information 1 Select the class node in the function tree 2 Select Edit Edit Help in the Function Tree Editor The Help Editor appears Alternatively you can right click the class node and select Edit Help to display the Help Editor 3 Enter the help text into the Help Editor National Instruments Corporation 9 3 LabWindows CVI User Manual Chapter 9 Adding Help to Instrument Dr
145. anels are in the ANSI C Library You can call Windows SDK functions If you have installed the LabWindows CVI Full Development System from CD ROM you have access to the full set of Windows SDK functions Otherwise you have access only to a subset Library Customize Use the Customize command to specify optional National Instruments libraries to load automatically when you start LabWindows CVI You also can specify which of the optional NI user libraries to load on startup The Customize command opens the Customize Library Menu dialog box which contains National Instruments Libraries and user libraries National Instruments Libraries There are five optional National Instruments libraries e Advanced Analysis or Analysiss Traditional NI DAQ NI DAQmx e VXI e GPIB GPIB 488 2 In the National Instruments Libraries section of the Customize Library Menu dialog box select the library name s that you want LabWindows CVI to load into memory at startup Changes do not take effect until the next time you launch LabWindows CVI If you do not load a library you cannot call any of the functions in that library and you cannot access any of its function panels If LabWindows CVI fails to load a requested library it is probably because LabWindows CVI cannot find the appropriate files Make sure that the files shown in the following table appear in the bin directory of the LabWindows CVI installation directory Library File An
146. ant prefix is defined in the h file that LabWindows CVI generates when you save the uir file If you do not assign a menu bar constant prefix the User Interface Editor assigns one for you when you save the uir file e Constant Name Sets the constant name of the item which LabWindows CVI appends to the menu bar constant prefix to form the ID for the current item Pass the ID to functions such as GetMenuBarAttribute and SetMenuBarAttribute GetUserEvent returns the ID when the current menu item generates a commit event e Item Name Sets the name of the current menu submenu or menu command If you type a double underscore before any letter in Item Name the letter appears underlined in the label The user can select the menu item by pressing Alt and that letter e Callback Function This field is optional Type the name of the function to call when the current menu item generates an event e Modifier Key Identifies the keys that users can press to execute the current menu item Shortcut Key Identifies the keys that users can press to execute the current menu item e Dimmed Specifies whether the menu item is initially dimmed e Checked Specifies whether the menu item initially has a checkmark e Bold Specifies whether the menu item is initially bold Insert Item Inserts a new item below the currently selected menu item e Insert Child Item Inserts a new sub item below the currently selected menu item Inse
147. arameter is of type Any Type and is defined as void in the following function prototype int GetCtrlAttribute int panel int control int attribute void value The Value parameter of the SetCtrlAttribute function also applies to attributes of different data types but it is an input rather than an output parameter Users pass this parameter by value rather than by reference and thus it can have different sizes For example it might be an int or a double Consequently the attribute value parameter is of type Any Type and is defined as in the following function prototype int SetCtrlAttribute int panel int control int attribute Var Args Var Args specifies a variable number of parameters that can be any of the intrinsic C or user defined data types You must define the parameters as in the function prototype The printf and scanf functions in the ANSI C Library have examples of the var Args data type Following the format string parameter in each function you can specify one or more parameters of different data types to match the type specifiers in the format string In printf the parameters are passed by value In scanf they are passed by reference and thus are really pointers For both functions one Var Arg function panel control is used and appears in the following function prototypes int printf const char int scanf const char User Defined Data Types You also can define data types
148. ariable command 10 2 10 6 Exports options Target Settings dialog box 2 22 expressions See also watch variables expressions Detect assignments in conditional expressions option 2 67 regular expressions table 4 13 External Compiler Support command 2 23 External Compiler Support dialog box ANSI C Library display 2 25 CVI Libraries display 2 24 Other Symbols option Header File field 2 25 Object File field 2 25 UIR Callbacks option 2 24 Using LoadExternalModule to Load Object and Static Library Files option 2 24 external process selecting 2 42 eyedropper tool 3 2 LabWindows CVI User Manual Index F File Groups section Create Distribution Kit dialog box 2 31 File menu Array and String Display windows Input command 11 4 Output command 11 4 Function Panel Editor Add Program File to Project command 8 2 Function Panel window Add Program File to Project command 6 6 Function Tree Editor Add Program File to Project command 7 1 Help Editor 9 4 Source and Interactive Execution windows 4 7 Close command 4 7 Hide command note 4 7 Open Quoted Text command 4 7 Print command 4 7 User Interface Editor Add File to Project command 3 4 Close command 3 4 Print command 3 4 Read Only command 3 4 Save As command 3 4 Save Copy As command 3 4 Variables and Watch windows Hide command 10 3 Output command 10 3 Workspace window Auto Save Workspace command 2 7 Exit LabWindows CVI command 2 7 most recen
149. ary e TCP Support Library e DataSocket Library e DDE Support Library e ActiveX Library e Formatting and I O Library e Utility Library e ANSIC Library LabWindows CVI Environment LabWindows CVI provides an environment to create and test applications that use the LabWindows CVI libraries The environment is a combination editor compiler and debugger with extensive run time checking LabWindows CVI also includes function panels which make the task of developing programs much easier Using a function panel you can execute a LabWindows CVI library function interactively and generate code that calls the function Function panels also contain help for the functions and function parameters You can build execute test and debug the source code for your application in the LabWindows CVI environment The LabWindows CVI environment also has a User Interface Editor for creating a graphical user interface for your application programs You can control the user interface using functions in the User Interface Library Also you can use the LabWindows CVI environment to create instrument drivers LabWindows CVI User Manual 1 2 ni com Chapter 1 Components of LabWindows CVI The LabWindows CVI environment has the following windows each with its own menu bar Workspace window This window appears when you start LabWindows CVI Use the Workspace window to open edit build run and save application project prj files and to open edit
150. aster than source files However you cannot debug them and they do not have run time error checking You can mark a source file in the Project Tree to be compiled without debugging to use less memory You can strike a balance between initial project start up time execution speed memory consumption and the ability to debug code modules by varying the types of code modules you include in your project Creating a User Interface You can create user interface objects panels controls menus using the User Interface Editor and save them in a uir file You can load display and modify these objects in your program using the functions in the User Interface Library Also you can specify callback functions that LabWindows CVI calls when events occur on these objects LabWindows CVI CodeBuilder automatically generates complete C code that compiles and runs based on a uir file you create or edit By choosing certain options presented to you in the Code menu you can produce skeleton code Skeleton code is syntactically and programmatically correct code that can compile and run before you type a single line of code With the CodeBuilder feature you save the time of typing standard code you must include in every program eliminate syntax and typing errors and maintain an organized source code file with a consistent programming style Creating Programs and DLLs With the LabWindows CVI Run Time Engine you can create executables dynamic link
151. ata type LabWindows CVI sorts the entries alphabetically by the variable expression text Included Variables and Expressions The following items are included in the Select Variable or Expression dialog box e Variables you declare in the Interactive Execution window Variables you declare using the Declare Variable command in a function panel e Variables or expressions used in function panels you execute National Instruments Corporation 6 9 LabWindows CVI User Manual Chapter 6 Using Function Panels e Variables or expressions used in function panels from which you insert code into a Source window e User Interface panel handle variables that CodeBuilder adds to a Source window e Variables declared as global or static global in a project file that has been successfully compiled if you enable Show Project Variables in the dialog box LabWindows CVI removes some or all these items from memory when you unload or deactivate the current project or when you select Build Clear Interactive Declarations Data Type Compatibility Compatibility between data types is a more complex issue than you might expect LabWindows CVI uses a number of heuristics The heuristics differ based on whether the variable is known to the compiler Variables known to the compiler include variables you declare in the Interactive Execution window and variables you declare in project files that you have successfully compiled For such variables LabWindows CVI
152. ating the main Function esee 3 20 Generating All Callbacks eeeeeeeneneenenene 3 20 Generating Panel Callbacks eee 3 21 Generating Control Callbacks eee 3 21 Generating Menu Callbacks seen 3 21 Code VIeWss tA cet Gein m oiaie tiae B p ORO 3 21 Code Preterences i teet EORR ERES US e ERA UO HE 3 22 Run Menu for the User Interface Editor eese 3 22 Library Menu for the User Interface Editor sse 3 23 Tools Menu for the User Interface Editor ce eeeceesceescecseeceeceeeeeeeeeseecsaeeeeeeeeaeeenees 3 23 Window Menu for the User Interface Editor eese 3 23 Release Confine WIndows anans no ete teet eei E erp ai 3 23 Options Menu for the User Interface Editor sese 3 23 Options Operate Visible Panels esee 3 23 Options Next Tool xia oA eee e b ERR AER QR Ch 3 24 Options Preferences cccecceeseesceeeceseeeeeseeeeeseeceeseeseeeaeeaeeeaeeaeeeeeeeeeeseeeeeenees 3 24 Other User Interface Editor Preferences sees 3 25 Options Assign Missing Constants cessere nennen 3 26 Options Save in Text Format essent enne nnne enne nnne 3 26 Options Load from Text Format eese nennen enne 3 26 Help Menu for the User Interface Editor
153. ation about these commands refer to the Help Menu for the Workspace Window section of Chapter 2 Workspace Window Help Control Help When you select a control the Control Help command displays online help for the selected control National Instruments Corporation 3 27 LabWindows CVI User Manual Source and Interactive Execution Windows Source Windows Source windows display source code for the programs you develop These windows behave like standard text editors You can insert text into Source windows in the following ways e Type text directly into a Source window e Load text from an ASCII file e Insert code from function panels directly into Source windows e Drag and drop text into the Source window from the current Source window another Source window or other applications You also can drag text from the Source window into different LabWindows CVI environment windows e Drag code into a Watch window to add a watch expression e Drag variables into the Graphical Array View Array Display Memory Display and String Display windows e Drag code into the Interactive Execution window You can save a program from a Source window as an ASCII file Source windows can contain up to one million lines with up to 1 020 characters on each line A tab is one character for the purpose of line length limitation When you run or build a program in a Source window the program must be complete and obey the syntax
154. ational Instruments Corporation 7 3 LabWindows CVI User Manual Chapter 7 Function Tree Editor Edit Replace The Replace command works in the same way as the Find command except that you can replace the search string with another search string Create Menu for the Function Tree Editor Use the commands in the Create menu to create a new function tree or add new functions and classes to an existing function tree Create Instrument Use the Create Instrument command to create a new function tree When you select Instrument the Create Instrument Node dialog box appears Enter the following information The name of the instrument up to 40 characters The prefix that you want LabWindows CVI to add to the beginning of each function name The prefix cannot exceed eight characters if you are using 5 0 1 or earlier as the default format the prefix can use up to 31 characters for instrument drivers using a 5 5 and later as the default format Do not include the underscore _ separator in your prefix LabWindows CVI adds an underscore _ separator to the prefix before appending the function name to it The default qualifier that provides information to LabWindows CVI about access options and conventions LabWindows CVI uses this qualifier for all functions in the instrument driver unless a function specifies a different qualifier This option appears only if you select CVI 5 5 and later as the Default Format for New Files in the FP F
155. available this option also adds to the list local variables that are in scope at the location of Code Insert Function Call Build The Project Builds the project Show Project Variables does not know about all of the variables in your project if you have added or removed variables from your project built your project without source code browse information or have never built your project before You can select this option to build the project and update the list of variables and expressions e OK Closes the dialog box and copies the variable or expression into the function panel control LabWindows CVI adds a leading ampersand amp when the function panel control is an output control LabWindows CVI also adds one or more leading asterisks or a trailing array indexation 0 when necessary to correctly match the data type of the control Cancel Cancels the operation and closes the Select Variable or Expression dialog box You can sort the entries in the Select Variable and Expression dialog box Sorted List Box Entries LabWindows CVI first sorts the entries in the list box by data type The most compatible data types appear first The exception is that some function panel controls use meta data types such as Numeric Array Any Array or Any Type Such controls are equally compatible with a wide range of data types In this case the order of data types does not indicate differing degrees of compatibility Within each d
156. b order you enter Edit Set Default Font Select Edit Set Default Font to make the font of the currently selected control the default control font If you also select the label or select only the label the font of the label becomes the default label font Newly created controls inherit the default fonts Edit Apply Default Font Select Edit Apply Default Font to set the font of the currently selected control and or label to the default control font and or default label font Edit Control Style Use the Control Style command to change the style of the selected control For example you can change a ring slide control to a ring knob control and the label value pairs remain intact Edit Edit Create Custom Controls You can create custom controls to save control configurations LabWindows CVI saves your list of custom controls between sessions To use a custom control select Create Custom Controls and select the control you want to use You can edit the saved configurations of the custom controls by double clicking the control name and opening the Edit Control dialog box National Instruments Corporation 3 11 LabWindows CVI User Manual Chapter 3 User Interface Editor To create a custom control create a control as you normally would Select Create Custom Controls Edit to display the Edit Custom Controls dialog box which contains the following options Add Opens a dialog box that contains a list of all the controls o
157. bject comes to the foreground If the matching object is a panel the panel title bar briefly flashes and the panel becomes active If the object is a control Find UI Object selects the control If Find UI Object finds a menu object or more than one matching object a dialog box that contains the list of matches National Instruments Corporation 4 19 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows appears In this dialog box you can view information about each of the objects or select one to edit Build Menu for the Source and Interactive Execution Windows This section explains how to use the commands in a Source or Interactive Execution window Build menu Use the commands in the Build menu to compile files and to build and link projects Build Configuration This command works in the same way as the command in the Build menu in the Workspace window Refer to the section Build Menu for the Workspace Window of Chapter 2 Workspace Window for more information Build Compile File You must compile your source code before executing it in a Source window or the Interactive Execution window The Compile File command adds the file to the project if necessary checks it for syntax errors and compiles it If the file has any build errors after LabWindows CVI completes compilation the Build Errors window appears When you want to call a function that you define in a Source window from another Source w
158. box e Control Width The width of the control in pixels The minimum allowed is 24 The maximum allowed is 2 048 The default control width is 145 pixels e When you click the Edit Label Value Pairs button the Edit Label Value Pairs dialog box appears Use dialog box to specify the label and value associated with each entry in the ring control A ring control can have up to 32 000 labels and associated values Create Numeric A numeric control is an input control that lets you increment or decrement a numeric value using the up and down arrows When you select Create Numeric the Create Numeric Control dialog box appears The following items appear in the Create Numeric Control dialog box e Control Label The label that appears above the control on the function panel e Parameter Position The location of the control value in the function parameter list For a control in a common control function panel Parameter Position specifies the control value in the parameter lists of all function panels in a Function Panel window The first position is 1 For a control on a function panel Parameter Position specifies the control value in the parameter list after the controls in the common control function panel The first position after the controls in the common control function panel is 1 If there is no common function control panel the first position is 1 e Data Type The data type of the values in the numeric control You can choo
159. boxes In the Customize Function Panels dialog box Parameters lists input numeric and ring controls from function panels in the current instrument The Functions column lists the function panels that contain the selected control To open the Customize Controls dialog box select one or more functions to customize and click the Customize button In the Customize Controls dialog box you can select a DLL and callback function to attach to the parameter LabWindows CVI populates Callback with callback functions that the DLL exports To remove a DLL and callback associated with a parameter click Clear Entry Clicking OK in the Customize Controls dialog box populates the Callback DLL and DLL path columns in the Customize Function Panels dialog box with the callback function DLL and DLL path that you selected National Instruments Corporation 7 7 LabWindows CVI User Manual Chapter 7 Function Tree Editor You also can access the Customize Controls dialog box by right clicking a control when you edit a Function Panel window When you customize a function panel LabWindows CVI creates a function panel customization fpc file The fpc file must be located in the same folder as the fp file After you customize a function panel LabWindows CVI calls the callback you assigned when you press Enter in the customized control or when you click the button next to the control LabWindows CVI searches in the following locations to lo
160. browse through the list of matches in the new Find UIR Objects dialog box As you come to each object its callback function name and constant name appear and LabWindows CVI highlights the object in the uir file The Find UIR Objects dialog box contains the following buttons Find Prev Searches backward for the previous matching object Find Next Searches forward for the next matching object Edit Terminates the search and opens the Edit dialog box for the user interface object currently highlighted Stop Terminates the search View Show Hide Panels The Show Hide Panels command has a submenu Use this submenu to show all panels hide all panels or select individual panels you want to view in the User Interface Editor View Bring Panel to Front The Bring Panel to Front command has a submenu that lists all panels Select a panel to bring to the front for editing View Next Panel The Next Panel command brings the next panel in the current uir file to the front for viewing and editing View Previous Panel The Previous Panel command brings the previous panel in the current uir file to the front for viewing and editing LabWindows CVI User Manual 3 14 ni com Chapter 3 User Interface Editor View Preview User Interface Header File The Preview User Interface Header File command opens a new Source window with a preview of the header file that LabWindows CVI generates when you save the uir f
161. callback function it cannot find If your project target is a DLL neither WinMain nor main are generated Instead CodeBuilder generates a DLLMain function and places the bulk of the User Interface function calls in a function called InitUIForDLL Call InitUIForDLL in your DLL at the point you want to load and display panels When you link your executable or DLL in an external compiler you must include a call to InitCVIRTE in WinMain main or DLLMain or DLLEntryPoint for Borland C C In a DLL you also must include a call to CloseCVIRTE CodeBuilder automatically generates the necessary calls to InitCVIRTE and CloseCVIRTE in your WinMain main or DLLMain function and also automatically generates a include statement for the cvirte h file Generating All Callbacks When you select Code Generate All Callbacks LabWindows CVI produces the include statements and the callback function skeletons and places them in the target file LabWindows CVI User Manual 3 20 ni com Chapter 3 User Interface Editor Generating Panel Callbacks Before you can choose Code Generate Panel Callback you must select a panel in the uir file When you select Code Generate Panel Callback LabWindows CVI produces the include statements and the function skeleton for the active panel and places them in the target file Generating Control Callbacks Before you can choose Generate Control Callbacks you must select at least one control
162. ce files rtf and whh that you can use with Microsoft Windows Help Compiler to create a Windows help file You can choose the output language as either C or Visual Basic Options Generate ODL File Generate ODL File creates an Object Description Language od1 file for the instrument driver The od1 file can be input to the MIDL program that comes with the Platform SDK This is useful when you create a DLL version of the instrument driver The MIDL program creates a type library that describes the function entry points in the DLL Refer to MSDN for information about using this program Options Generate DEF File Generate DEF File generates a de file for the instrument driver External compilers use the def file to compile instrument drivers into a DLL The file contains entries to export each function in the function tree Options Create DLL Project The Create DLL Project command creates a LabWindows CVI project prj file from the program file associated with the function panel file that you can use to create a DLL When you execute this command LabWindows CVI prompts you to enter a pathname for the project file After the file is written LabWindows CVI prompts you about loading the project immediately If you choose to load the file your current project is unloaded LabWindows CVI User Manual 7 10 ni com Chapter 7 Function Tree Editor Options IVI VXIplug amp play Style This option affects the contents of the DLL
163. claration in Interactive Window Executes the variable declaration immediately in the Interactive Execution window e Add declaration to top of target file filename Inserts a copy of the declaration at the top of the file you select using Set Target File Add declaration to current block in target file filename Inserts a copy of the declaration at the beginning of the code block that contains your current position LabWindows CVI User Manual 6 6 ni com Chapter 6 Using Function Panels Set Target File Sets the destination file for the Insert Function Call command Set Target File opens a dialog box from which you can select any open Source window or the Interactive Execution window as the destination file e OK Declares the variable according to the options you selected e Cancel Cancels the operation and closes the Declare Variable dialog box When you use the Declare Variable command LabWindows CVI always declares the variable using the static storage class unless you enable the Add declaration to current block in target file option In addition to generating the variable declaration Declare Variable also places the variable name in the currently active control overwriting the previous contents of the control If the currently active control already contains a syntactically correct variable name it appears in the Variable Name text box when the Declare Variable dialog box first appears Code Clear Interactiv
164. com Edit Instrument Attributes command 4 26 User Interface Editor 3 23 Workspace window Convert UI to Lab Style command 2 55 Create ActiveX Controller command 2 48 Create ActiveX Server command 2 48 Create Instrument I O Task command 2 49 Create IVI Instrument Driver command 2 49 Create Edit DAQmx Tasks command 2 50 Customize command 2 55 Edit ActiveX Server command 2 48 Source Code Control 2 52 UI to Code Converter utility 2 54 User Interface Localizer utility 2 55 user defined entries 2 55 Top Edges option Alignment command 3 15 Distribution command 3 16 Track include file dependencies option 2 66 training customer B 1 Transfer Window Help to Function Help command 7 10 Translate LW DOS Program command Options menu 4 29 troubleshooting resources B 1 two dimensional array Graphical Array View figure 10 11 Type Library button Target Settings dialog box 2 22 Type option Find command 10 4 types of help table 9 2 National Instruments Corporation 1 29 Index U UI to Code Converter utility 2 54 UIR Callbacks option External Compiler Support dialog box 2 24 uir files See user interface resource uir files Undo Check Out command Source Code Control submenu 2 53 Undo command Function Panel Editor 8 2 Source and Interactive Execution windows 4 8 User Interface Editor 3 5 Undoable actions per file next session option Editor Preferences command 4 27 uninitialized variable
165. control gives a parameter value one of two predefined values depending on whether the control is in the on or off position When you select Create Binary the Create Binary Control dialog box appears LabWindows CVI User Manual 8 6 ni com Chapter 8 Function Panel Editor The following items appear in the Create Binary Control dialog box e Control Label The label that appears above the control on the function panel e Parameter Position The location of the control value in the function parameter list For a control in a common control function panel Parameter Position specifies the control value in the parameter lists of all function panels in a Function Panel window The first position is 1 For a control on a function panel Parameter Position specifies the control value in the parameter list after the controls in the common control function panel The first position after the controls in the common control function panel is 1 If there is no common control function panel the first position is one 1 e Data Type The data type of the values in the binary control e Default Value The default for the binary control The default can be On or Off e When you select the On Off Settings button the Edit On Off Settings dialog box appears ON Text The label that appears next to the upper on position of the binary control OFF Text The label that appears next to the lower off position of the binary control ON Va
166. ct and the project has run time errors such as over indexing an array the Run Time Errors window contains a list of the errors The Run Time Errors window also displays the output of the Utility Library ErrorPrintf function To bring the Run Time Errors window to the front for viewing select Window Run Time Errors The context menu in the Run Time Errors window contains the following items Clear Window Removes all items from the Run Time Errors window Copy Item Copies a single highlighted item to the clipboard Copy AII Items Copies all items in the Run Time Errors window to the clipboard National Instruments Corporation 2 57 LabWindows CVI User Manual Chapter 2 Workspace Window e Save to File Saves the contents of the Run Time Errors window to a text file e Goto Item Highlights the selected line of code e Release Confine Window Releases the window from the Output Window Region if confined Confines the window into the Output Window Region if released Hide Confined Error Windows Removes all windows from the Output Window Region To access the context menu right click an empty area of the Run Time Errors window Window Debug Output LabWindows CVI displays the output of the Utility Library DebugPrintf function and the Windows SDK OutputDebugString function in the Debug Output window If you double click the output of DebugPrintf and OutputDebugString in the Debug Output window LabWindows CVI high
167. ct startup option table A 1 Next File command 4 16 Next Function Panel command 6 13 Next Function Panel Window command 6 13 Next Panel command 3 14 Next Scope command 10 4 Next Tag command 4 17 Next Tool command 3 24 NI Example Finder command 2 73 NI BC macro 2 69 NI 1386 macro 2 69 NI mswin macro 2 69 NI mswin32 macro 2 69 NI VC macro 2 69 NI Report support option Create Distribution Kit dialog box 2 30 non void functions requiring return values for 2 67 ni com NT macro 2 69 NUL byte difference from space character 10 1 11 3 Numeric Array data type 5 9 Numeric command 8 8 numeric control parameters specifying 6 4 0 O option making compatible with CVI 5 0 1 2 66 object files creating 4 37 required in project file list 2 4 Object option Add Files to Project command 2 9 ODL file generating 7 10 one dimensional array displaying in Array Display window figure 11 1 Graphical Array View figures 10 9 online technical support B 1 Open command 2 6 Open Function Panels in New Window command 8 13 Open Quoted Text command 4 7 Operate Function Panel command 8 13 Operate Visible Panels command 3 23 operating tool 3 1 Options menu Array and String Display windows Display Entire Buffer command 11 6 Reset Indices command 11 2 11 6 Function Panel Editor Data Types command 8 12 Edit Function Tree command 8 13 Grid Line Options command 8 13 Initial Control
168. ction Panel command File Menu for the Function Panel Editor The commands in the File menu for Function Panel Editor work in the same way as the commands in the File menu for the Workspace window Refer to the File Menu for the User Interface Editor section of Chapter 3 User Interface Editor for more information File Add Program File to Project The Add Program File to Project command adds the instrument driver program file associated with the p file of the current Function Panel window to the project list Edit Menu for the Function Panel Editor Many of the commands in the Edit menu for the Function Panel Editor work in the same way as the commands in the Edit menu for the User Interface Editor For more information refer to the Edit Menu for the User Interface Editor section of Chapter 3 User Interface Editor Edit Undo and Redo The Undo command reverses your last action Use Undo to reverse the following actions e Move a control e Cut copy or paste a control Make changes using the Control Coordinates command You lose undo information when you perform any of the following actions e Create a control e Edita control make a change and click the OK button e Cut the panel e Close the window e Advance to another function panel in the same window The Redo command reverses the last Undo command LabWindows CVI User Manual 8 2 ni com Chapter 8 Function Panel Editor Edit Cut Controls and Copy
169. ction Tree Help Editor and Function Panel Help Editor windows Use the Help Editor windows to add help to function panels instruments and classes You develop applications in the LabWindows CVI environment using the ANSI C programming language LabWindows CVI complies with the ANSI X3 159 1989 and the ISO IEC 9899 1990 standards for the C programming language You also can use LabWindows CVI libraries with other compilers and linkers How to Create Applications with LabWindows CVI Use LabWindows CVI as a text editor in which to enter your entire program You can simplify application development by using function panels to execute LabWindows CVI functions and to automatically insert the code into your program Function panels contain complete online help National Instruments Corporation 1 3 LabWindows CVI User Manual Chapter 1 Components of LabWindows CVI A project contains all the component files of your application The simplest case is one source file A typical project however contains multiple code modules and a user interface resource uir file You can include code modules as source files or compiled files You can debug source files and LabWindows CVI performs run time error checking when you execute code in source files To include compiled files such as library or object files in your project you must compile them with LabWindows CVI or a compatible external compiler Compiled files consume less memory and run f
170. ctiveX Servers in LabWindows CVI document which describes the LabWindows CVI ActiveX server tools and functions in more detail and contains sample code fragments and hints for server development LabWindows CVI User Manual 2 46 ni com Chapter 2 Workspace Window Tools Create IVI Instrument Driver Select Tools Create IVI Instrument Driver to open the Instrument Driver Development Wizard which you can use to create the source file include file and function panel file for controlling an instrument You can base the new instrument driver on one of the following items e Anexisting driver for a similar instrument e The core IVI driver template e An IVI instrument class template The Instrument Driver Development Wizard copies the template or existing driver files and replaces all instances of the original instrument prefix with the prefix you select for your new driver Refer to the LabWindows CVI Instrument Driver Developers Guide for more information about the Instrument Driver Development Wizard The steps you take to create a driver depend on the I O interface you select The Instrument Driver Development Wizard contains help that describes each step for creating an IVI instrument driver Tools Create Instrument 1 0 Task Use this command to launch the NI Instrument I O Assistant You can use the Instrument I O Assistant to generate code to communicate with devices such as serial Ethernet and GPIB instruments without usin
171. cution windows 4 9 User Interface Editor 3 6 Delete Watch Expression command 10 6 Detach Program command Edit Instrument dialog box 2 44 Detect assignments in conditional expressions option 2 67 LabWindows CVI User Manual l 8 Detect signed unsigned pointer mismatches option 2 66 Detect unreachable code option 2 67 Detect unreferenced identifiers option 2 67 diagnostic resources B 1 DialogFontBold configuration option A 5 DialogFontName configuration option A 5 DialogFontSize configuration option A 5 Diff command Diff With 4 10 Find Next Difference 4 10 Ignore White Space 4 10 Match Criteria 4 10 Recompare Ignoring White Space 4 10 Synchronize at Top 4 10 Synchronize Selections 4 10 Dimmed option Edit Menu Bar dialog box 3 7 directory configuration options A 3 Display Entire Buffer command 11 6 Display status dialog during build option 2 66 Distribute command 3 17 distributing release executables See release executables creating and distributing Distribution command 3 16 DLL File option Target Settings dialog box 2 18 DLLMain function generating 3 20 DLLs adding to project 2 9 Create Debuggable Dynamic Link Library command 2 11 Create DLL Project command 7 10 Create Release Dynamic Link Library command 2 12 effects of IVI VXIplug amp play Style command 7 11 generating DLL import library 4 30 generating source code for DLL import library 4 29 Target Settings dialog box 2 18 ni com
172. cuts option 2 31 Delete Group option 2 31 Distribute Objects Libraries for Both Compilers option 2 33 Edit Group option 2 31 Export button 2 31 Group Destination option 2 32 Include Hardware Configuration option 2 31 Install ActiveX Container Support option 2 31 Install DataSocket Support option 30 LabWindows CVI User Manual l 6 Install Low Level Support Driver option 2 30 Install NI Report Support option 2 30 Installation Language option 2 28 Register Files As ActiveX Servers option 2 34 Relative Path option 2 32 Run Time Engine Install Location option 2 29 Run Time Engine Support 2 28 Default button 2 34 File Groups section File Groups option 2 31 Install Location section 2 26 Create DLL Project command 7 10 Create Global Variable Control dialog box 8 10 Create Input Control dialog box 8 5 Create Instrument I O Task command 2 49 Create IVI Instrument Driver command 2 49 Create menu Function Panel Editor Binary command 8 6 Common Control Function Panel command 8 11 Function Panel command 8 10 Global Variable command 8 10 Input command 8 5 Message command 8 10 Numeric command 8 8 Output command 8 9 Return Value command 8 9 Ring command 8 7 Slide command 8 6 Function Tree Editor Class command 7 4 Function Panel Window command 7 5 Instrument command 7 4 User Interface Editor 3 15 ni com Create Numeric Control dialog box 8 8 Create Object File command 4 37 Create Output Co
173. cuts that appear directly under the Windows Start button Startup Directory The full path of the All Users Startup folder Common values for this directory are C Documents and Settings All Users Start Menu Programs Startup for Windows 2000 and C Windows NStart Menu Programs Startup for Windows 98 Temp Directory The full path of the Temp folder Common values for this directory are C Documents and Settings V LogonUser NLocal Settings Temp for Windows 2000 and C Temp for Windows 98 Template Directory The full path of the All Users Template folder Common values for this directory are C Documents and Settings All Users Templates for Windows 2000 and C Windows Shel1New for Windows 98 VXI PnP Directory The value of the VXIplug amp play directory If VXI is already installed on the system the installer will use that directory otherwise the installer will use its default directory A common value is C VXIpnp VXI PnP OS Directory The value of the VXIplug amp play operating system directory If VXI is already installed on the system the installer will use that directory otherwise the installer will use its default directory A common value is C VXIpnp OS type Windows Directory The full path of the Windows folder Common values for this directory are C Winnt for Windows 2000 and C Windows for Windows 98 National Instruments Corporation 2 27 LabWindows CVI User Manual
174. d drop it into a new position You also can cut a function and paste it into a new position Complete the following steps to cut and paste a function within a function tree 1 2 3 4 5 Open multclass fp Select Function 1 Select Edit Cut The function disappears from the tree and is stored on the clipboard Select Function 2 Select Edit Paste Above The function now appears under Class 1 Instead of moving a function you can replicate it Complete the following steps to copy a function within a tree 1 2 3 4 Ej Select Function 1 Select Edit Copy Select Class 1 Select Edit Paste Below The name Function 1 now appears at the top of the tree and under Class 1 Note Pasting functions and classes within the Function Tree Editor copies all items associated with the function or class including controls and function panel help Using Existing Function Panels in a New Instrument Driver Complete the following steps to copy function panels from an existing instrument driver to a new instrument driver 1 Code eS Select File New Function Tree fp A new blank Function Tree Editor appears on the screen Select Create Instrument Name the instrument New Instrument and type new in Prefix Click OK Select Window Function Tree and select the file called multclass Select Class 1 LabWindows CVI User Manual 7 14 ni com Chapter 7 Function Tree Editor 6 Select Edit Copy 7 Return t
175. d longs in the format in which they appear e Edit real numbers in either scientific or floating point format regardless of the display format Editindividual array elements by expanding the array using the View Expand Variable command Edit individual bytes of a string by expanding the string using the View Expand Variable command The bytes appear in the integer format you specify in the Format menu National Instruments Corporation 10 3 LabWindows CVI User Manual Chapter 10 Variables and Watch Windows Edit Find The Find command invokes the Find dialog box Enter the text you want to find in Find What If you select text on a single line before you execute the Find command the selected text appears in Find What Otherwise the text you last searched for appears in the box You can access a history of selections for Find What by clicking the arrow to the right of Find What or by using the up or down arrow keys on your keyboard The Find dialog box contains the following options The Case Sensitive Finds only the instances of the specified text that match exactly For example if CHR is the specified text the Case Sensitive option finds CHR but not Chr Whole Word Finds the specified text only when the characters that surround it are spaces punctuation marks or other characters not considered parts of a word LabWindows CVI treats the characters A through Z a through z 0 through 9 and underscore _ as pa
176. dd a watch expression e Drag variables into the Graphical Array View Array Display Memory Display and String Display windows Using Subwindows The Source and Interactive Execution windows support subwindows so that you can have two scrollable editing areas for the same file To create a subwindow from any of these windows use the mouse to drag the thin line beneath the menu bar or toolbar if you selected View Toolbar to a lower position in the window You then can switch between the subwindows by pressing F6 if you have default shortcut keys enabled or by clicking in a subwindow LabWindows CVI User Manual 4 4 ni com Chapter 4 Source and Interactive Execution Windows Selecting Text in the Source and Interactive Execution Windows Certain LabWindows CVI commands require that you select the block of text to which the next command applies In LabWindows CVI you can select a range of characters a range of lines or a range of columns When you select a block of text it is highlighted on the screen To select text with the keyboard press Shift as you move the keyboard cursor over the text you want to select You can use the Shift key in combination with any of the keyboard commands for moving the keyboard cursor or scrolling the window To select text with the mouse click the first character you want to select and drag the mouse over the remaining characters To select a word double click the word To select a
177. de 5 14 help 9 1 input and output parameters 5 12 IVI instrument drivers files 5 2 loading unloading instruments without instrument program 5 4 Load command 2 43 LabWindows CVI User Manual LabWindows CVI User Manual Index precedence rules 5 3 Unload command 2 44 modifying 5 5 modules containing non instrument functions 5 4 operating 5 15 return values 5 13 testing 5 15 VXIplug amp play instrument driver files 5 2 Instrument I O Assistant generated files 2 49 Run button 2 50 Run this step button 2 50 steps Query and Parse 2 49 Read and Parse 2 50 Select Instrument 2 49 Write 2 50 tasks editing 2 50 using 2 50 using 2 49 Instrument menu accessing function panels 6 1 Function Panel Editor 8 11 Function Panel window 6 13 Function Tree Editor 7 6 Source and Interactive Execution windows 4 25 Workspace window accessing function panels 2 45 Edit command 2 44 Load command 2 43 Search Directories command 2 44 Unload command 2 44 Interactive Execution command 2 61 Interactive Execution window Build menu 4 20 Edit menu 4 8 excluding lines 4 9 executing code 4 3 rules for 4 4 File menu 4 7 forcing loaded instrument drivers source into 2 62 forcing project files into 2 62 Instrument menu 4 25 Interactive Window Memory Size control 2 62 Library menu 4 26 Options menu 4 27 purpose and use 1 3 4 3 rules for executing code 4 4 Run menu 4 22 selecting
178. de box and is not in effect when you select Code Run Function Panel or Insert Function Call This option is available only for multiple function panels in a window LabWindows CVI User Manual 6 14 ni com Chapter 6 Using Function Panels Options Toggle Control Style Slide binary and ring controls insert a number into a function call in the generated code box The value of this number depends on the item you select in the control You can override the configured values of these controls by using the Toggle Control Style command Toggle Control Style replaces a slide binary or ring control with an input control You can use this input control to enter a variable name constant or expression This entry appears in the generated code box in the same position as the parameter that the original control produced The variable name or constant that you enter must match the type specified for the control such as short long single precision double precision string and so on Otherwise a syntax error occurs when you execute the function Options Change Format Use Change Format to change the numeric format for scalar controls The list of formats depends on the data type associated with the control You can display short and long data types in decimal hexadecimal octal or ASCII form You can display real numbers in floating point or scientific format Options Open Function Panels in New Window Enable this command to open all fu
179. de that you can use to create a DLL import library In general it is not necessary to use this command For most cases you can generate a DLL import library directly using the Generate DLL Import Library command Use this command only when you must perform special processing in the DLL import library LabWindows CVI never requires such special processing LabWindows CVI enables the Generate DLL Import Source command only when you have an include file in the Source window The include file must contain declarations of all the DLL functions you want to access When you execute the command a dialog box appears in which you enter the pathname of the DLL National Instruments Corporation 4 29 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows The Generate DLL Import Source command generates the import library source into a new Source window You can modify the code including making calls to functions in other source files Create a new project that contains the source file and any other files it references Select Build Target Type Static Library in the Workspace window Execute the Create Static Library command hy Note You cannot export variables from a DLL using the import library source code this command generates When you want to export a variable create functions to get and set its value or create a function to return a pointer to the variable e Note When you edit the source code this command generat
180. dow section of Chapter 2 Workspace Window National Instruments Corporation 6 13 LabWindows CVI User Manual Chapter 6 Using Function Panels Tools Menu for Function Panel Windows The Tools menu for Function Panel windows works in the same way as the Tools menu for the Workspace window For more information about these commands refer to the Tools Menu for the Workspace Window section of Chapter 2 Workspace Window Window Menu for Function Panel Windows The Window menu for Function Panel windows works in the same way as the Window menu for the Workspace window For more information about these commands refer to the Window Menu for the Workspace Window section of Chapter 2 Workspace Window Options Menu for Function Panel Windows This section contains detailed descriptions of the Options menu items for Function Panel windows Options Default Control Default Control resets a control to its default value and configuration Options Default All Default All resets all the controls on the current Function Panel window to their default values and configurations Options Toolbar This option opens the Customize Toolbars dialog box For more information about customizing the toolbar refer to the Toolbars in LabWindows CVI section of Chapter 2 Workspace Window Options Exclude Function The Exclude Function command disables the current function panel so that the function call does not appear in the generated co
181. dows CVI creates a function panel for each function You must follow specific rules and use special tags in the header file When you select this option LabWindows CVI performs the following actions for each function panel it creates e Removes the function prefix e Capitalizes the first letter e Inserts a space before each first capital letter or digit in a group of capitals or digits For example Set6100SensorRpms becomes Set 6100 Sensor Rpms e Replaces substrings specified with xcHG and PXCH in function names and parameter names e Places the function in the function tree under the current class and with the current parameters Rules for Header Files Your header files must conform to the following rules e Declare all non LabWindows CVI types in the header file with typedef define for a type does not work National Instruments Corporation 4 31 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows e Forenums keep the following rules in mind Declare one enum per line Use a comment after the enum to be used as a value label in the function panel Do not assign values LabWindows CVI ignores assigned values Do not use additional comments in enums the comment specifies an optional label for each enum value Avoid semicolons inside enumeration lists including comments e Useconst char string for input strings e Make sure that function declarations contain the specified
182. e Panel Callback Control Callbacks or Menu Callbacks to make corresponding additions to the source file Also with CodeBuilder you can make sure that your automatically generated program terminates properly For a CodeBuilder program to terminate successfully you must include a call to QuitUserInterface When you choose Code Generate All Code the Generate All Code dialog box prompts you to choose which callback functions terminate the program You can select one or more callback functions to ensure proper program termination National Instruments Corporation 3 8 LabWindows CVI User Manual Chapter 3 User Interface Editor File Menu for the User Interface Editor This section describes how to use the commands in the User Interface Editor File menu File New Open Save Save All Most Recently Closed Files and Exit LabWindows CVI The New Open Save Save All Most Recently Closed Files and Exit LabWindows CVI commands in the File menu of the User Interface Editor work like the commands in the File menu of the Workspace window For more information about these commands refer to the File Menu for the Workspace Window section of Chapter 2 Workspace Window File Save As Use the Save As command to write the file to disk using a name you specify The Save As command changes the name on the title bar to the new name you specified File Save Copy As The Save Copy As command writes the contents of the active window to disk
183. e dialog box appears 3 Complete the Create Function Panel Window Node dialog box The new function name appears in place of the Create Class or Function Panel Window message on the selected line National Instruments Corporation 7 5 LabWindows CVI User Manual Chapter 7 Function Tree Editor Inserting a Function into an Existing Tree Complete the following steps to insert a function at any level in an existing function tree 1l Select an existing function or class at the level you want to place the new function 2 Select Create Function Panel Window The Create Function Panel Window Node dialog box appears 3 Complete the Create Function Panel Window Node dialog box The new function is inserted on the line below the existing function or class The function exists at the same level in the tree as the function or class that originally occupied the line Instrument Menu for the Function Tree Editor The Instrument menu for the Function Tree Editor works in the same way as the Instrument menu for the Workspace window For more information about these commands refer to the Instrument Menu for the Workspace Window section of Chapter 2 Workspace Window Library Menu for the Function Tree Editor The Library menu for the Function Tree Editor works in the same way as the Library menu for the Workspace window For more information about these commands refer to the Library Menu for the Workspace Window section of Chapter 2 Workspace
184. e if MAX version 3 0 or later is installed this configuration file causes the MAX Configuration Import Wizard to launch automatically after a reboot If MAX version 3 0 or later is not installed on the target machine then a warning dialog appears and the configuration is not imported but the install continues normally e Export Launches the MAX Configuration Export Wizard You must have MAX version 3 0 or later installed to use this option After you complete the export wizard the name of the export file you generated appears in the indicator to the left of this button If you make any hardware or task changes that you want included in your distribution kit you must run the MAX export wizard again The File Groups section of the Create Distribution Kit dialog box has the following options e File Groups Separates the files in your distribution kit into groups You must assign a destination directory to each group The distribution kit creates the directories on the target machine and places each of the file groups in its assigned directory You can set each of the options to the right of the list box to different values for each file group File groups for the files in your project are automatically created for you If you enable the Embed Project UIRs option in the Target Settings dialog box you do not need to add uir files to the file groups e Add Group Adds a new group to your distribution kit Edit Group Edits the selected g
185. e you must include these files manually using the Add Edit Group options in the Create Distribution Kit dialog box Refer to Chapter 4 Creating and Distributing Release Executables and DLLs of the LabWindows CVI Programmer Reference Manual for more information about application distribution National Instruments Corporation 2 25 LabWindows CVI User Manual Chapter 2 Workspace Window The following options are available in the Create Distribution Kit dialog box The Install Location section of the Create Distribution Kit dialog box contains the following options Parent Folder The default directory on the target machine where your application will install You can select from a list of common Windows and National Instruments locations These locations automatically resolve to the actual directories on the target machine during installation These locations can vary based on operating system version language and configuration Notice that Windows XP locations are similar to Windows 2000 Windows NT typically uses C Winnt V Profiles instead of C Documents and Settings and Windows 98 locations also apply to Windows Me 95 These locations also are valid for the Group Destination option You can install your application in the following locations Common Files Directory The full path of the Common Files folder for the current user A common value for this directory is C Program Files Common Files Desktop Directory
186. e Code menu options for Function Panel windows Code Run Function Panel Use the Run Function Panel command to execute the code in the generated code box When you select Run Function Panel the following actions take place e LabWindows CVI automatically inserts the header file for the library or instrument driver into the Interactive Execution window if it is not already there e LabWindows CVI generates temporary variables for blank scalar output controls e LabWindows CVI copies the generated function s to the Interactive Execution window LabWindows CVI executes the code During execution the lt lt Running gt gt menu appears in the upper left corner of the function panel menu bar e LabWindows CVI displays the new values for output return values and global variable controls Code Declare Variable Use this command to declare a variable to be placed in the currently active control on the function panel e Variable Type lIndicates the data type associated with the currently active control on the panel You can use more than one data type for some controls In such cases a ring control allows you to select the data type e Variable Name Specifies the name of the variable you want to declare LabWindows CVI automatically prefixes scalar output variables with an ampersand amp Number of Elements Appears when the currently active control is for an array or a string Enter the number of elements Execute de
187. e Control Coordinates dialog box to align and move controls Control Name displays a list of the controls in the function panel along with the top and left coordinates and the width of each control Use the commands and ring controls to the right of Control Name to edit the top coordinate left coordinate and width of each control Top Left and Width contain default values until you highlight a specific control name and click Extract When you click Extract LabWindows CVI displays the coordinates for the highlighted control in the ring controls You can change the top and left coordinates and width of a control by highlighting a control name in the list box entering a value in the ring controls and clicking Apply To align or move controls complete the following steps 1 Click the column to the left of a control name and click Extract to copy the existing value of the control to the Top Left or Width ring controls 2 To apply values to other control names place a check next to the control names whose values you want to change Click Apply to copy the values Edit Find Use the Find command to locate a particular text string in the function panel file You can search for text in node names function names control labels control values item labels in ring slide and binary controls message control text and help text You also can specify that the search be case sensitive and whole word use regular expressions and wrap
188. e Declarations Variables you declare in the Interactive Execution window remain in effect until you explicitly remove them This feature lets you use these variables in succeeding executions of the Interactive Execution window and also enables different function panels to access the same variables The Clear Interactive Declarations command removes the variables without deleting the contents of the Interactive Execution window Code Select Value The Select Value command can help you select input for parameters The Select Value command appears when a function panel control provides a dialog box from which you can make a selection For example if a control takes a filename as a value Select Value opens a standard Open File dialog box from which you can browse to a file Controls with a button next to them indicate that LabWindows CVI provides a dialog box for input Code Select UIR Constant The Select UIR Constant command can help you use the function panels for the User Interface Library Use this command to select from the list of constant names associated with the objects in your uir files When you specify a parameter for an input control that can accept a panel resource ID control ID menu bar resource ID menu ID or menu item ID use Select UIR Constant to open the Select UIR Constant dialog box National Instruments Corporation 6 7 LabWindows CVI User Manual Chapter 6 Using Function Panels The list in User I
189. e Dynamic Link Library menu item appears if you select Build Configuration Debug and Build Target Type Dynamic Link Library Use this menu item to compile and build a DLL with debugging information Use Debugging level in the Build Options dialog box to select the degree of debugging information you want LabWindows CVI to generate for the DLL You can specify the filename of the DLL as well as other DLL settings by selecting the Target Settings menu item You can set other creation and build options in the Build Options dialog box The Create Debuggable DLL command also generates a DLL import library for the DLL National Instruments Corporation 2 11 LabWindows CVI User Manual Chapter 2 Workspace Window Debugging DLLs When you select the Build Create Debuggable Dynamic Link Library command LabWindows CVI includes debug code in your DLL and generates a cdb file that contains a symbol table and source position information necessary for debugging The cdb file has the same pathname as the DLL In the LabWindows CVI development environment you can debug only DLLs you create in LabWindows CVI with the Create Debuggable Dynamic Link Library command Other development environments cannot debug DLLs you create in LabWindows CVI The amount of debugging information included in the DLL and debug file depends on the value of the Debugging level option in the Build Options dialog box Build Create Release Executable The Crea
190. e Function Panel Editor Then click the Add VISA Types button in the Edit Data Type List dialog box 2 Include the vpptype h file in the instrument driver header file Input and Output Parameters Because most instrument drivers are designed to control a physical instrument the input and output function parameters often correspond to one or more of the controls on the face of the instrument LabWindows CVI User Manual 5 12 ni com Chapter 5 Using Instrument Drivers Define input and output parameters as follows Review the purpose of the function to determine the inputs and outputs 2 Choose the data type of each parameter The data type should be one that the application program can use easily e Ifa parameter is an array data type select a data type with square brackets at the end of the data type name e For output parameters select the data type of the value that users pass by reference not the pointer to that data type When users operate function panels interactively LabWindows CVI knows to pass a variable by reference because the control is defined as an output For example if a function by the name of examp_func has an examp out integer output parameter prototype the function in the instrument driver include file as examp func int examp out When you create a function panel for this function create an output control for examp out and specify its data type as int notas int When a user declares variable
191. e Run Time Engine Support option is set to Instrument Driver Only If you need the LabWindows CVI Run time Engine for the soft front panel executable you must change this option to Full Run Time Engine manually e LabWindows CVI creates file groups that contain all the files that are required of a VXIplug amp play or IVI instrument driver installation For example the import libraries for Visual C C and Borland C C are included and their directory names are msc and bc for VXIplug amp play and IVI Files that you must create independently also are named in the file groups even if they do not currently exist These include the following files A Visual Basic include file which you can create by selecting Options Generate Visual Basic Include in the Source window this file is not required for IVI drivers A documentation file which you can create by selecting Options Generate Documentation this file is not required for IVI drivers A help file which you can create by selecting Options Generate Windows Help and the Windows Help Compiler this file is not required for IVI drivers National Instruments Corporation 7 11 LabWindows CVI User Manual Chapter 7 Function Tree Editor A knowledge base file as defined in the VXIplug amp play specification this file is not required for IVI drivers Hiles for a soft front panel executable an empty file group is created for this In the Advanced Distribution Kit O
192. e corresponding option in the Target Settings dialog box The installation program prompts the user to choose one of the compatible external compilers The installation program installs only the files for the compiler the user chooses at distribution kit install time You might want to use this feature if you distribute modules for use with the LabWindows CVI development environment or external compilers If you distribute a turnkey application this feature is not necessary 3 Note Do not use this feature for distributing DLL import libraries for VXIplug amp play instrument drivers When installing a VXIplug amp play instrument driver you must install two import libraries one compatible with Visual C C and the other compatible with Borland C C The two import libraries must be installed in the VXIPNP 1ib msc and VXIPNP 1ib bc subdirectories LabWindows CVI sets this up automatically for you if you enable the Options IVI VXIplug amp play Style command and select Options Create DLL Project in the Function Tree Editor For more information about distributing VXIplug amp play instrument drivers refer to the Creating a Distribution Kit for VXIplug amp play Instrument Drivers section 3 Note Ifyou use the Create Distribution Kit command to distribute DLL import libraries for IVI instrument drivers do not use the Distribute Objects Libraries for Both Compilers option To distribute IVI instrument drivers you must install two import libraries
193. e file for compilation This option recompiles the file during the next project build Get the latest version of the file from source control Check out the file from source control Check in the file to source control Browse the file in the Source Code Browser This option applies only to source files Find an item within the Project Tree Expand all items within the Project Tree Collapse all items within the Project Tree Right click a folder to perform the following actions Rename the folder Remove the folder Add a file to the project Create a new file in the project Find an item within the Project Tree Expand all items within the Project Tree Collapse all items within the Project Tree Right click an empty area of the Project Tree to perform the following actions Sort files by name pathname file extension and date View the full pathnames of the files Find an item within the Project Tree National Instruments Corporation 2 3 LabWindows CVI User Manual Chapter 2 Workspace Window Expand all items within the Project Tree A Collapse all items within the Project Tree Library Tree Contains a tree view of the functions in LabWindows CVI libraries and instruments When you load an instrument the Instruments folder contains a tree view of the function panels for the instrument Double click the instrument in the Library Tree to open the Edit Instrument dialog box To open a LabWindows
194. e following steps to copy a control 1 Auk wWN Make sure the function panel from the previous example is active and in edit mode Position the cursor on the Volts Div control and select Edit Control Help Enter the following text in the Help Editor This control specifies the volts per division setting of the oscilloscope Save the p as example fp and select File Close in the Help Editor dialog box With the selection still on the Volts Div control select Edit Copy Controls Select Edit Paste With the selection on the new control select Edit Edit Control Change the ring Control Label to Volts Div 2 and the Parameter Position to 2 Notice in the Generated Code window that the config function now has an additional parameter Volts Div 2 Complete the following steps to create a new function panel and copy a control to the panel 1 2 OO USE CON RIS ope ooa Select Options Edit Function Tree Create a Function Panel window with the following parameters Type New Panel in the Name box and new panel in the Function Name box Highlight the configure node in the Function Tree Editor Select Edit Edit Function Panel Window to return to the Configure panel Position the selection on the control Volts Div 2 Select Edit Cut Controls Press Ctrl Page Down to move to the New Panel function panel Select Edit Paste The control appears on the panel View the help by selecting Edit Control Help Notic
195. e function parameter list For a control in a common control function panel Parameter Position specifies the control value in the parameter lists of all function panels in a Function Panel window The first position is 1 For a control on a function panel Parameter Position specifies the control value in the parameter list after the controls in the common control function panel The first position after the controls in the common control function panel is 1 If there is no common control function panel the first position is 1 e Data Type The data type of the variable or value displayed in the output control e Default Value The default value that the control displays You can leave this item blank e Display Format The format in which the output control displays values You can display integers longs shorts and chars in decimal hexadecimal octal or ASCII format You can display doubles and floats in either scientific or floating point notation If the data type is char void a meta data type or an array the display format control is not valid e Control Width The width of the control in pixels The minimum allowed is 24 The maximum allowed is 2 048 The default control width is 145 pixels Create Return Value A return value control displays a value returned from a function You can use a return value control only if the function has a non void data type When you select Create Return Value the Create Return Value
196. e is under the keyboard cursor e From a Function Panel window select Code View Variable Value to open the String Display window when the name of a string variable is in the active function panel control You also can drop variables onto the String Display window From the Source Variables or Watch window select the variable you want to view and drop it onto the String Display window You can drop only strings and string arrays into the String Display window Multi Dimensional String Arrays Use the Reset Indices command to specify which index of a multi dimensional string array to use as rows in the String Display window LabWindows CVI disables Reset Indices when you view a single string variable or a one dimensional string array For a string array of two or more dimensions you can specify which index to use for the rows of the display The other dimensions remain constant at indices that you specify When you select Reset Indices the Reset Indices dialog box appears The dialog box shows the size and display index for each array dimension The letter R indicates the dimension displayed as rows The indices for the remaining dimensions remain constant at the specified values If you enter an invalid character or any alphabetic character besides R or r or an invalid index an error message appears National Instruments Corporation 11 3 LabWindows CVI User Manual Chapter 11 Array and String Display Windows File Menu for Array
197. e names functions operations variables filenames and extensions and code excerpts Bold text in this font denotes the messages and responses that the computer automatically prints to the screen This font also emphasizes lines of code that are different from the other examples Italic text in this font denotes text that is a placeholder for a word or value that you must supply National Instruments Corporation xxi LabWindows CVI User Manual About This Manual Related Documentation LabWindows CVI User Manual The following documents contain information that you might find helpful as you read this manual LabWindows CVI Help LabWindows CVI Bookshelf LabWindows CVI Quick Reference Getting Started with LabWindows CVI LabWindows CVI Programmer Reference Manual LabWindows CVI Instrument Driver Developers Guide NI 488 2 Help Traditional NI DAQ Function Reference Help Traditional NI DAQ User Manual NI DAQmx Help NI VISA Programmer Reference Help National Instruments Example Finder Help XXii ni com Components of LabWindows CVI LabWindows CVI is a programming environment for developing instrument control automated test and data acquisition applications in ANSI C LabWindows CVI provides the following features e Standard libraries and interactive function panels for the following components GPIB RS232 Virtual Instrument Software Architecture VISA Data acquisition Data analysis
198. e of the function correctly If you do not spell and capitalize the function name correctly LabWindows CVI displays an error message indicating that the panel could not be found View Find Function Panel When you select Find Function Panel a dialog box appears in which you can enter the name of a function You can enter just a substring and Find Function Panel finds all functions that contain that substring anywhere in their names For instance if you enter ctr1 and click OK a dialog box appears with a list of functions including NewCtrl SetCtrlVal GetCtrlVal and so on You can use regular expressions in your search string If a function panel exists for the function LabWindows CVI displays the panel If two or more Function Panel windows exist for the function LabWindows CVI displays a list of the function panels The default shortcut key for Find Function Panel is lt Ctrl Shift P gt View Find UI Object Use the Find UI Object command to move directly from a Source window to the User Interface Editor To use this command place the cursor on the constant name or callback function name of the user interface panel control or menu object you want to view Then select View Find UI Object LabWindows CVI searches each uir file that is currently open or in the project for user interface objects with a matching constant name or callback function name If LabWindows CVI finds an object the User Interface Editor that contains the o
199. e previous example is active and in edit mode Place your cursor on the Volts Div control 2 Select Edit Change Control Type 3 Inthe Change Control Type dialog box select Slide and click OK The Edit Slide Control dialog box appears 4 Click Label Value Pairs The Edit Label Value Pairs dialog box appears LabWindows CVI User Manual 8 18 ni com 3 6 Chapter 8 Function Panel Editor Complete the dialog box as shown in the following figure and click OK Edit Label alue Pairs Click OK in the Edit Slide Control dialog box to replace the Volts Div input control with a slide control Suppose that you meant this control to be a ring control instead of a slide control Complete the following steps 1 2 3 4 5 Place your cursor on the Volts Div control Select Edit Change Control Type Select Ring The Edit Ring Control dialog box appears Click Label Value Pairs leaving all other items unchanged The Edit Label Value Pairs dialog box appears Notice that the slide control label value pairs remain Click OK Click OK again to close the Edit Ring Control dialog box A ring control replaces the Volts Div slide control on the function panel National Instruments Corporation 8 19 LabWindows CVI User Manual Chapter 8 Function Panel Editor Cutting and Pasting Controls You frequently might want to cut and paste controls In this example you copy controls from one panel to another Complete th
200. e that the help is copied with the control LabWindows CVI User Manual 8 20 ni com Adding Help to Instrument Drivers Use the Help Editor to add help to instrument drivers that you create The Help Editor is a text editor in which you can enter help with HTML tags or without The Help Editor also provides menu options to cut and copy text undo the last action search within the text and so on This section describes the types of help available from an instrument driver and how you can create help New Style versus Old Style Help LabWindows CVI has two styles of online help for instrument drivers new recommended and old LabWindows DOS The old help style maintains compatibility with help created in LabWindows version 2 3 or earlier This help style uses the DOS IBM character set so it can display special extended ASCII characters used by older instrument drivers The new help style uses the standard Windows character set and automatically displays the control help with control name and data type information You also can include HTML tags in the help There is also a difference in the type of help that can be displayed In either new or old style help you can view instrument help function class help and control help However the help for functions appears differently between the two styles This difference is noticeable only when you have multiple function panels on a single Function Panel window In the new style you ca
201. e with the Full Run Time Engine item selected use the LabWindows CVI Run time Engine DLL cvirte d11 Stand alone executables you create with the Instrument Driver Only item selected use instrsup d11 instead of cvirte dll If you use a stand alone compiler and want to use instrsup d11 include cvi70 extlib instrsup 1ib in your external compiler project instead of cvirt liband cvisupp 1ib Remember that when you use an external compiler you link to that compiler s ANSI C library instrsup d11 contains functions from the following libraries A Formatting and I O Library except ArrayToFile and FileToArray RS 222 Library except InstallComCallback Utility Library selected functions only ANSIC Library Your project also can link to the following libraries Analysis or Advanced Analysis Library GPIB GPIB 488 2 Library VXI Library VISA Library IVI Library NI DAQmx Library Traditional NI DAQ Library If your project files call the Config Alarm Deadband Config ATrig Event Message Config DAQ Event Message DIG Change Message Config Get DAQ Event or Peek_DAQ Event functions in the Traditional NI DAQ Library you will get link errors when you build your program in LabWindows CVI The link errors occur because the preceding functions use the LabWindows CVI User Interface Library internally which is not available in the instrsup and cvi lvrt run time engine DLLs Your project files can call
202. ears e Original UIR Use the Browse button to browse to the uir you want to convert e New UIR Enter the path and name of the new uir By default LabWindows CVI uses the same path and name of the original uir e Backup Original UIR Enable to create a backup of the original uir LabWindows CVI creates the backup in the original location e Convert UIR Convert the uir Cancel Cancel the operation and close the UIR Conversion dialog box User Defined Entries in the Tools Menu You can install your own entries in the Tools menu Each entry invokes an executable with optional command line arguments Tools Customize Use the Customize command to add your own menu items to the Tools menu Each entry consists of a menu item name and an associated command line to execute Each command line consists of a program name and optional arguments When you execute an item from the Tools menu LabWindows CVI calls a system function to start the program as another process e Menu Item Name Contains your current Tools menu entries e Command Line Shows the command line for the currently selected menu item name e Add Adds a new entry e Edit Edits the selected entry e Cut Removes the selected entry National Instruments Corporation 2 55 LabWindows CVI User Manual Chapter 2 Workspace Window e Copy Copies the selected entry e Paste Adds the cut or copied entry to the Tools menu The Add and Edi
203. eate Global Variable ssessesssseeseeeeeee nennen eene erret 8 10 Create Message oce teda er ee e RE eta eee EV Pe rea ee ea dn 8 10 Create Function Panel etre seb ra re eee pv pue 8 10 Create Common Control Function Panel eeeesseeeee 8 11 View Menu for the Function Panel Editor essen 8 11 View Panel inei tee eU D UU Ee tee ELEME AVETE UR 8 11 LabWindows CVI User Manual xvi ni com Contents Instrument Menu for the Function Panel Editor eene 8 11 Tools Menu for the Function Panel Editor eee 8 11 Tools Generate Source for Function Panel esee 8 11 Window Menu for the Function Panel Editor eee 8 12 Options Menu for the Function Panel Editor eee 8 12 Options Data Types scssi ssiri ioniseren rera iria nes 8 12 Options Pool of T EAEEREN E teen t nit de bee ede 8 13 Options Initial Control Width essere enne 8 13 Options Grid Line Options ssessesseeseeneeneeneenene nenne enne 8 13 Options Revert to Default Panel Size eese 8 13 Options Panels Movable essere 8 13 Options Toggle Scroll Bars essen enne 8 13 Options Open Function Panels in New Window eese 8 13 Options Edit Function Tree eesssssssssesseeeeeneen
204. ece erue e ER RECENTE enne ch svdascuvea ER oe eve ERE e e cts 6 12 Vaew Include File n ace Ret etr S UE Crede 6 12 Views Current T1668 eee Aude DR kt p ETE E RARE eee enata 6 12 View Function Panel History eeeseeseseeeeeeeeeee neret nenne 6 12 View Find Function Panel eese nennen enne enne 6 12 View Previous Function Panel eseeesseeeeeeeeeeenren nnne 6 12 View Next Function Panel eese eene 6 13 View Previous Function Panel Window ccceescccsseceseeeeteceeeeeeeceteeeeneeenaes 6 13 View Next Function Panel Window eese 6 13 View First Function Panel Window eese 6 13 View Last Function Panel Window eese 6 13 Instrument Menu for Function Panel Windows eeeeeeeeeeeeeeeeeeennenees 6 13 Library Menu for Function Panel Windows essere 6 13 Tools Menu for Function Panel Windows eese enne 6 14 Window Menu for Function Panel Windows esee 6 14 Options Menu for Function Panel Windows eese 6 14 Options Default Control essere nnne 6 14 Options Default AIl essere nnne 6 14 Options Tool baT aen o ra 5 E E et dete ee e e ae AINT 6 14 Options Exclude Function essent enne neret enne 6 14 Options Toggle Control Style wo eee ceeceesseceseeeeneeceeeeea
205. ecifying Output Control Parameters The output control displays a value that an executed function determines To specify a parameter for an output control select the control and type the variable name An output control parameter must be an array name or the address of a scalar or structure For non array parameters you can leave an output control blank LabWindows CVI generates a temporary variable when you run the function panel If the output control requires an array or if you type a variable name into the output control the variable must be defined statically in the Interactive Execution window or defined elsewhere and declared as extern in the Interactive Execution window before executing the function To define a variable select Code Declare Variable in the Function Panel window You can use Code Select Variable to select a variable or expression that you have used before To view the value of an output control parameter after LabWindows CVI executes the function double click the lower half of the output control to open the Variables window Using a Global Control A global control displays the contents of global variables in a library function You can use global controls to monitor global variables the function does not specifically return as results Global controls are read only controls You cannot alter the content and the controls do not contribute parameters to the generated code Common Control Function Panel A Function
206. eck None Deselects all the items in the list e Build Activates and builds each selected configuration of each project e Rebuild Forces LabWindows CVI to recompile all source files in each selected configuration of each project Cancel Cancels the operation and removes the Batch Build dialog box National Instruments Corporation 2 13 LabWindows CVI User Manual Chapter 2 Workspace Window Build Target Type The Target Type item opens a submenu in which you select the target type for your project The target type determines what type of file you create when you execute the Build Create command The name of the Create command changes depending on the target type and configuration you select You can select from the following target types e Executable e Dynamic Link Library e Static Library The Executable and Static Library options are dimmed if you select LabVIEW Real Time Only as the Run Time Support in the Target Settings dialog box When you select Static Library the Debug Project command in the Run menu is dimmed The Configuration Debug command also is dimmed If you select Dynamic Link Library youcan use the Run Specify External Process command to specify an external program that uses the DLL When you do this the Debug Project command changes to Debug xxx exe where xxx exe is the name of the program you specify Build Target Settings The Target Settings item opens the Target Settings dialog box The
207. ect file that you have moved since you last saved it Ifa fp file listed in the project cannot be found using either its original pathname in the project or its location relative to the project LabWindows CVI searches the Instrument Directories list for a p file with the same base name Accessing Function Panels from the Instrument Menu When you select an instrument name in the Instrument menu the Select Function Panel dialog box appears The Select Function Panel dialog box shows the function panels available in the driver you selected Class names appear in the dialog box followed by ellipses The ellipses indicate that more functions or classes of functions exist below that class name If you select Flatten the list box shows all function panels in the instrument driver If you select the Function Names option the list box shows the function names associated with each function panel While in this mode the Alphabetize option redisplays the function list in alphabetical order If you select New Window the next selected function panel appears in a new window Otherwise LabWindows CVI overwrites the current Function Panel window If you disable the Options Open Function Panels in New Window command in a Function Panel window LabWindows CVI ignores the New Window option Use Select to select a class name to view the functions within a class A class can contain other classes and functions An instrument driver can contain u
208. ectories e The function panels are ina fp file For instrument drivers that use an attribute model such as IVI drivers there can be an additional sub file that contains attribute information displayed in the function panels e The function variable and defined constant declarations are in a h include file e The instrument driver program can be in one of several different types of files A c source file A obj object file that contains one or more compiled C modules or a 1ib library file You must compile these files in LabWindows CVI or in a compatible external compiler For example the instrument module files for a Fluke 8840A multimeter are 18840a p 18840a c and 18840a h You can load an instrument driver into the LabWindows CVI interactive program whether the instrument program is in the form of a c obj or lib file The presence of the h file is National Instruments Corporation 5 1 LabWindows CVI User Manual Chapter 5 Using Instrument Drivers essential because you must include it in your program to reference functions global variables and constants in the instrument driver VXIplug amp play Instrument Driver Files When you install a VXIplug amp play instrument driver the installation program does not place the h file in the same directory as the p file The installation program places the h file in the VXIPNP include subdirectory LabWindows CVI can then find the include f
209. ecutable and any associated files to the file group called Soft Front Panel Files and specify the executable to run after setup in the Distribution Kit Advanced Options dialog box LabWindows CVI User Manual 2 34 ni com Chapter 2 Workspace Window Default Installation Location Set the Parent Folder to VXI PnP OS Directory and specify the instrument name such as tktds3xx as the Sub Folder in your distribution kit Soft Front Panel You always must specify the Soft Front Panel as the first group in your distribution kit In addition always specify your Soft Front Panel as the Executable to Run After Setup in the Advanced Distribution Kit Options dialog box Install the Soft Front Panel file group to the application directory and place any extra files needed by the Soft Front Panel uir files help files for the Soft Front Panel and so on in the first file group with the Soft Front Panel executable File Groups Verify that the following file groups exist in your distribution kit What you name the groups is not important although the following names are good suggestions For the following examples assume that instr is the name of the instrument e Soft Front Panel Files This group should contain all the files necessary to run your soft front panel executable uir files and so on nstall to application directory no relative path e Instrument Driver Files This group should contain the following files
210. ed on your machine You can specify various options in your search such as supported hardware and example functionality and whether you want to search examples on NI Developer Zone at ni com zone You also can submit your own examples to NI Developer Zone Refer to the National Instruments Example Finder Help for more information Help Web Links The Web Links command has a submenu that contains links to helpful National Instruments Web sites Help Patents This command displays a dialog box in which you can view a list of patents for National Instruments products Help About LabWindows CVI The About LabWindows CVI command displays a read only dialog box with information about LabWindows CVI National Instruments Corporation 2 73 LabWindows CVI User Manual User Interface Editor A LabWindows CVI Graphical User Interface GUI can consist of panels command buttons pull down menus graphs strip charts knobs meters and other controls and indicators You can create a GUI programmatically using function calls or you can build a GUI in LabWindows CVI interactively using the User Interface Editor a drop and drag editor with tools for designing arranging and customizing user interface objects With the interactive User Interface Editor you can build an extensive GUI for your program without writing a single line of code When you finish designing your GUI in the User Interface Editor save the GUI as a user interface res
211. eenennenee enne 8 13 Options Operate Function Panel esee 8 13 Options Save in XML Format essere 8 14 Options Load from XML Format sees 8 14 Help Menu for the Function Panel Editor esee 8 14 Creating a Function Panel Window esee rennen eere 8 14 Changing Control Type iun Pen ep DD de 8 18 Cutting and Pasting Controls sese nen enne n nen ennee 8 20 Chapter 9 Adding Help to Instrument Drivers New Style versus Old Style Help eesseseseeeeeeeeeeeeeeen eene 9 1 Help OptionS sete ere rhe teh ee nbn eit o EEE RS 9 2 Editing Help ERREUR RE Ed rni dS 9 2 Viewing Instrument Driver Help feet ree eere een rrr einn 9 3 Function Class Help oe te aliens heat MA ep amabit 9 3 Control Help eret it etr ete eene tedio mee e ERE 9 4 Function Panel Window Help Old Style Help Only eee 9 4 File Menu for the Help Editor ioter cete e ttes 9 4 File Add Program File to Project 9 4 Edit Menu for the Help Editor y deer e ae Renan a a E E emen 9 5 Edit Pastez uir R 9 5 Edit Delete iet emo eeu ep Ie eb 9 5 EditsEmd oes RE IRR Rae ena Ren 9 5 Edit Repl ce 4a iere ein eR esee 9 5 Edit Revert iae bed uento 9 5 Tools Menu for the Help Editor i rette eoe 9 5 Tools Edit Function Tree ee ce eee eet eter end 9 5 Tools Edit Function Panel eite ete tren 9 5 Window Menu for
212. eessaeceseeeseeceaeeeneeeenees 6 15 Options Change Format sss eene 6 15 Options Open Function Panels in New Window eese 6 15 Options Go to Source After Inserting Code see 6 15 Options Edit Function Panel sese 6 15 Help Menu for Function Panel Windows sees 6 16 Help Controls 4 5 toe et rere E SERERE ERES EAR EES eei 6 16 Help Function iie meer e UE iU D 6 16 Help Online Function Help eeeeeeseeeseeeeeeeee enne 6 16 LabWindows CVI User Manual xiv ni com Contents Chapter 7 Function Tree Editor About the Function Tree and Function Tree Editor esee 7 1 File Menu for the Function Tree Editor essen eene 7 1 File Add Program File to Project enne 7 1 Edit Menu for the Function Tree Editor cccccccccccccesssssecceessssececceeessseeeeeeesseeeeeeees 7 1 Edit Qit asisten duae er E epo 7 2 Edit CODy toto ea redet eres RUE BN To eai ENE 7 2 Edit Paste Above 2 donus te aeree tes intere eie Oe eee e or UY TRAE 7 2 Edits Paste Below side ete ee eed er e re ee 7 2 Edit Delete5 snnt RUD GNE UR NN 7 2 Edit9Edit NOd6 rne e E E ee OR 7 2 Edit Edit Help ee te ferte it eee ehe ee a s 7 2 Edit Edit Function Panel Window essen 7 2 Edit FP Auto Load List nin ee eer ee eee kde Ye ede 7 2 Edit Find oo eee tiae r
213. eessseeeeees 2 55 TOOlS CUStOMIZE ccccccccsssccceessssscceccessessceccceeessseeecceessseeceeesssseececesstsaeeeeees 2 55 Window Menu for the Workspace Window seseesseseeeeeerenen reete 2 56 Window Cascade WindOws cccssccccessssscecccesessseeecceessnseeccecesssseeceeessssaeeceees 2 56 Window Tile WindOwWS cccccccsssccccessssceecceessseeeccessssseccceesssseeceeessseeeeeeees 2 56 Window Minimize Allow cccccsssccccessssscceeeeesssseeecesssssecceeesssseeeceeessseeeeeeees 2 56 Windows Close All cte hike retener decet es lee ER Nye T EERCEN EEE 2 57 Window Workspace oet cmo de E ER ERR REA 2 57 Windows Build Errors iie Iro eI et eee e e ERR 2 57 Window Run Time Errors nennen enne 2 57 Window Debug Output eeseesseeseeeeeeeeeeenee eterne nnne entente 2 58 Window Find Results Window cccccsssccccccssssscececessssceeeeeesssceeeesesseeeeeeeeesas 2 58 Window Source Code Control Errors eese 2 59 Window Memory Display sees neret enne 2 59 Mandow Varlables aua e viso d et e e MO a EPI PUN Gebers 2 60 Window Wath p PEE E EA E EE E EE ET E T 2 60 Window Amrray Displ y ei e teet eie ese n TR aaa 2 60 Window String Display eese enne enne nennen 2 60 Window User Interface eiaa aE A EEE aS ASEE EE O 2 60 Window Function Panel ccccccccccessssscecccessssseecccessssseccceesssseeceeeessnseeeeeees 2
214. eete heater ea RUE tecta i 7 3 Edit Repl ce iet e oet e dessa evi HER avid HET Ie re ese ORT Re oo 7 4 Create Menu for the Function Tree Editor sess 7 4 Greate InstrumenE ise e e Write o catene 7 4 Create Class sien neroc tei eet t eae Tode te EIU 7 4 Create Function Panel Window ccccccssccccessssssececesesseeceeessseeccesessseeeeeeees 7 5 Adding a Function to an Empty Tree or Class 7 5 Inserting a Function into an Existing Tree sess 7 6 Instrument Menu for the Function Tree Editor eesssssseeeeeeeeeene 7 6 Library Menu for the Function Tree Editor esee 7 6 Tools Menu for the Function Tree Editor essen 7 6 Tools Generate C Wrapper essent 7 6 Tools Enable Auto Replace oo eecesccsseecescesseeceaceesceeeaeceseeesneseacecseeenaeeenees 7 7 Tools Customize Function Panels 0 cccccccccsssseccccesssssecceeesssseeceeeessseeeeeeees 7 7 Tools Generate New Source For Function Panel sss 7 8 Tools Go to Definito ni a e E E nnn nnns 7 8 Tools Go to Declaration krenes ennea a a a n 7 8 Window Menu for the Function Tree Editor eeeesseeeeeeeeneeeenenne 7 8 Options Menu for the Function Tree Editor see 7 8 Options FP File Format esses nennen tenente nennen 7 9 Optio
215. el window View Find Function Panel When you select Find Function Panel a dialog box appears in which you can enter the name of a function You can enter just a substring and Find Function Panel finds all functions that contain that substring anywhere in their names For instance if you enter ctrl and click OK a dialog box appears with a list of functions including NewCtrl SetCtrlVal GetCtrlVal and so on You can use regular expressions in your search string Refer to the Regular Expression Characters section of Chapter 4 Source and Interactive Execution Windows for a list of regular expressions If a function panel exists for the function LabWindows CVI displays the panel If two or more function panel windows exist for the function LabWindows CVI displays a list of the function panels The default shortcut key for Find Function Panel is lt Ctrl Shift P gt View Previous Function Panel The Previous Function Panel command displays the previous function panel in the current Function Panel window This option applies only to multiple function panels in a window LabWindows CVI User Manual 6 12 ni com Chapter 6 Using Function Panels View Next Function Panel The Next Function Panel command displays the next function panel in the current Function Panel window This option applies only to multiple function panels in a window View Previous Function Panel Window The Previous Function Panel Window command opens the Function
216. enerates when you save the uir file If you do not assign a constant name the User Interface Editor assigns one for you when you save the uir file e Callback Function Type the name of the function to call when an event is generated on the control Naming a callback function is optional The Control Settings section of the Edit Control dialog box displays specific attributes for the type of control that you are editing This section contains the data specific attributes for the control Ring controls and list boxes have a Label Value Pairs button in the Control Settings section of the Edit Control dialog box National Instruments Corporation 3 9 LabWindows CVI User Manual Chapter 3 User Interface Editor The Control Appearance section of the Edit Control dialog box displays specific attributes for the type of control that you are editing The section contains attributes pertaining to the physical appearance of the control From the Quick Edit Window you can perform high level edits on the control The mode tools operate like the tools in the main User Interface Editor The Quick Edit Window also immediately reflects any changes you make in other sections of the dialog box The Label Appearance section of the Edit Control dialog box contains attributes pertaining to the physical appearance of the control label If you type a double underscore before any letter in the Label field the letter appears underlined in the label The
217. ent position e Return Terminates the search leaving the keyboard cursor at the position where you initiated the search e Next File Moves the search to the next file if you enabled Multiple Files Click Replace All to replace in the currently open file all occurrences of the search string without asking for confirmation National Instruments Corporation 4 15 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows Edit Quick Search Use the Quick Search command to perform an incremental search When you select Edit Quick Search or press lt Ctrl Q gt if you have default shortcut keys enabled and begin typing the Quick Search command finds matches of the letters you typed To continue searching for the same string press lt Ctrl Q gt Edit Next File If you selected the Multiple Files option from either the Find or Replace dialog boxes you can move to the next file in the search list using this command View Menu for the Source and Interactive Execution Windows This section explains how to use the commands in a Source and Interactive Execution window View menu Use commands in the View menu to display line numbers and tags on source code step through build errors and manipulate function panels that pertain to your editing session View Line Numbers The Line Numbers command displays a column in the left of the Source window in which line numbers appear A checkmark appears next to t
218. ents and their values The Expand Variable command expands a currently closed aggregate variable so you can see its contents Clicking the triangle icon has the same effect as selecting View Expand Variable View Close Variable The View Close Variable command closes the currently expanded aggregate variable so you can see its name and starting address Clicking the circle icon has the same effect as selecting View Close Variable LabWindows CVI User Manual 10 6 ni com View Follow Pointer Chain Chapter 10 Variables and Watch Windows Use Follow Pointer Chain to examine complex pointer linked structures such as linked lists and trees If a pointer is a member of a structure and points to a structure of the same type Follow Pointer Chain replaces the current structure with the child structure that the pointer references For example in Figure 10 1 hquework begin next is a member of the structure hquework begin and points to another structure of type Item cw Variables File Edit View Format Run Window Options Help 00A62524 00A62530 1 9 hquework 9 hquework begin hquework gt begin gt value Y hquework gt begin gt next Y hquework gt end ALI 00A6253C 00A6259C Figure 10 1 Parent Structure Pointer in a Chain Clicking the right arrow icon or selecting Follow Pointer Chain replaces the current structure with the child structure that the pointer references as shown in the Figure 10
219. enu for the Source and Interactive Execution Windows 4 26 Tools Edit Instrument Attributes eese 4 26 Tools Edit Function Tree essere eee 4 27 Tools Edit Function Panel sese 4 27 Window Menu for the Source and Interactive Execution Windows 4 27 Options Menu for the Source and Interactive Execution Windows 4 27 Options Editor Preferences esses enne nnne 4 27 Options Toobar rer rte ree ere RR TUR e eri Eee ee RET 4 28 Options Bracket Styles room t e RC RR 4 28 Options Fontese teo nho pute aime e EID nete dede 4 28 Options ColOts cette rre Ge E UR e De REN XE ERR e ats 4 28 Options Syntax Coloring essere enne eere 4 29 Options User Defined Tokens for Coloring sees 4 29 Options Translate LW DOS Program eese 4 29 Options Generate DLL Import Source eeseeeeenr 4 29 Options Generate DLL Import Library eene 4 30 Options Generate Visual Basic Include eese 4 30 Options Generate Function Tree eesessssseeeeeeeenee nennen 4 31 Rules for Header Files iet tente 4 31 Tags in Header Files aree RO reo ege eee 4 32 Options Create Object File enn ote edet este e ues 4 37 Options Preprocess Source F
220. enuFontBold specifies whether the font that LabWindows CVI uses in menus is bold as shown in the following example MenuFontBold Yes EditorFontName EditorFontName specifies the default font that LabWindows CVI uses in Source windows as shown in the following example EditorFontName Courier EditorFontSize EditorFontSize specifies the font size that LabWindows CVI uses in Source windows as shown in the following example EditorFontSize 30 EditorFontBold EditorFontBold specifies whether the font that LabWindows CVI uses in Source windows is bold as shown in the following example EditorFontBold Yes MessageBoxFontName MessageBoxFontName specifies the font that LabWindows CVI uses in simple message boxes as shown in the following example MessageBoxFontName Courier MessageBoxFontSize MessageBoxFont Size specifies the font size that LabWindows CVI uses in simple message boxes as shown in the following example MessageBoxFontSize 30 A 6 ni com Appendix A Configuring LabWindows CVI MessageBoxFontBold MessageBoxFontBold specifies whether the font that LabWindows CVI uses in simple message boxes is bold as shown in the following example MessageBoxFontBold Yes AppFontName AppFontName specifies the font that LabWindows CVI uses for dialog box labels and for function panels as shown in the following example AppFontName Courier AppFontSize AppFontSize specifies the font size that LabWindows CVI
221. erface Localizer utility 2 55 user interface objects finding 3 13 User Interface option Add Files to Project command 2 9 user interface resource uir files Convert UI to Lab Style command 2 55 optional for project file list 2 5 UI to Code Converter utility 2 54 LabWindows CVI User Manual UIR Callbacks option External Compiler Support dialog box 2 24 User Interface Localizer utility 2 55 user libraries See also libraries dummy fp files for support libraries 2 46 installing into Library menu 2 46 instrument drivers vs 2 46 user defined data types array data types 5 11 creating 5 10 user defined entries Tools menu 2 55 Using LoadExternalModule to Load Object and Static Library Files option External Compiler Support dialog box 2 24 V Value option Find command 10 4 Var Args data type 5 10 Variable Size command 10 13 variables browsing 2 54 compiler options Detect uninitialized local variables at run time 2 65 Uninitialized local variables detection 2 66 Declare Variable command 6 6 Select Variable or Expression dialog box 6 8 Variables command 2 60 Variables window Edit menu 10 3 File menu 10 3 Format menu 10 12 function subwindow 10 1 Global subwindow 10 1 Help menu 10 14 icons associated with variables 10 2 Options menu 10 13 ni com purpose and use 1 3 10 1 Run menu 10 12 View menu 10 6 viewing 10 1 Window menu 10 12 Version Info button Target Settings dialog box
222. es x10000000 for DLLs e Debugging level LabWindows CVI uses this setting only if you enable the Build Configuration Debug item of the Workspace window If you check the Release item in the Configuration submenu LabWindows CVI compiles all source files without debugging information Select one of the three debugging levels for the source modules in your application Norun time checking In this mode you can set breakpoints and use the Variables window You have no protection from run time memory errors and you cannot use the Run Break on Library Errors option Standard In this mode you can set breakpoints use the Variables window and use the Run Break on Library Errors option You also have protection from run time memory errors Extended This mode has the same benefits as Standard mode with added user protection that validates every attempt to free dynamically allocated memory by verifying that the address you pass is actually the beginning of an allocated block Detect uninitialized local variables at run time This option checks for the run time use of variables that do not have values assigned to them Enabling this option causes LabWindows CVI to use extra stack space To avoid a stack overflow adjust the maximum stack size National Instruments Corporation 2 65 LabWindows CVI User Manual Chapter 2 Workspace Window Track include file dependencies This option keeps the project
223. es you cannot use the import qualifier in the function declarations in the DLL include file e Note The import source code does not operate in the same way as a normal DLL import library When you link a normal DLL import library into an executable the operating system attempts to load the DLL as soon as the program starts The import source code operates in such a way that the DLL does not load until the user makes the first function call into it Options Generate DLL Import Library This command generates a DLL import library LabWindows CVI enables Generate DLL Import Library only when you have an include file in the Source window The include file must contain declarations of all the functions and global variables you want to access from the DLL When you execute the command a dialog box appears giving you the option to generate an import library for each of the compatible external compilers rather than just for the current compatible compiler Enter the pathname of the DLL in the file dialog box that appears The Generate DLL Import Library command generates a 1ib file with the same base filename as the include file If you choose to create an import library for both compilers LabWindows CVI creates the files in subdirectories named msvc and borland LabWindows CVI creates a copy of the library for the current compatible compiler in the directory of the DLL Options Generate Visual Basic Include This command generates a Microsoft
224. es for New Panels section to set initial attribute values for each panel that you create in the User Interface Editor Resolution Adjustment 46 Specifies the degree to which LabWindows CVI scales panels and their contents when you display them on screens with resolutions different than the one on which you create them This option also appears in the Other Attributes dialog box that you can open from the Edit Panel dialog box To programmatically override this setting call SetSystemAttribute with the ATTR RESOLUTION ADJUSTMENT attribute before calling LoadPanel or LoadPanelEx Conform to System Colors Forces panels and the controls they contain to use the system colors This option also appears in the Other Attributes dialog box that you can open from the Edit Panel dialog box To programmatically set this option call LabWindows CVI User Manual 3 24 ni com Chapter 3 User Interface Editor SetPanelAttribute with the ATTR CONFORM TO SYSTEM attribute When you enable this option you cannot change any panel or control colors Use system colors as defaults for panels and controls Forces LabWindows CVI to use the system colors as the initial colors for panels and controls you create You can change the colors without restriction Background color Frame color Title bar color You must disable two options Conform to System Colors and Use system colors as defaults for panels and controls to set the following options
225. es for the Soft Front Panel and so on in the first file group with the Soft Front Panel executable File Groups Verify that the following file groups exist in your distribution kit What you name the groups is not important although the following names are good suggestions For the following examples assume that instr is the name of the instrument e Soft Front Panel Files This group should contain all the files necessary to run your soft front panel executable uir files and so on nstall to application directory no relative path e nstrument Driver Files This group should contain the following files instrument source instr c e instrument function panels instr fp Install to application directory no relative path e Instrument Include Files This group should contain only the instrument header file instr h nstall to application directory Setthe relative path to include e Instrument Driver DLL This group should contain the instrument DLL nstall to application directory Setthe relative path to bin e Import Library Borland This group should contain the Borland C import library for your DLL instr lib nstall to application directory Set the relative path to V N1ibWMbc National Instruments Corporation 2 37 LabWindows CVI User Manual Chapter 2 Workspace Window Import Library Microsoft This group sho
226. esponds to one function with the controls on that function panel manipulating the parameters to that function call You can disable individual functions by selecting Edit Edit Function and selecting Function Disabled from the dialog box Disabled function calls do not appear in the generated code box therefore you cannot execute or insert them into a Source window Each function panel occupies a position in the window To modify the order of the function panel select Edit Edit Function and change the Function Position option E Note In general National Instruments recommends that you have only one function panel per window Generated Code Box The generated code box at the bottom of the Function Panel window displays the code the function panels produce when you manipulate the panel controls The generated code box displays up to three lines of code at a time and is scrollable Function Panel Controls Function panel controls specify parameters in a function call hy Note Press Page Up or Page Down to move the input focus across multiple function panels in one window Press Ctrl Page Up and Ctrl Page Down to move from one Function Panel window to the next The way you specify parameter values differs for each type of control Specifying Return Value Control Parameters A return value control displays a value that a function returns as a return value rather than as a formal parameter For scalar return values
227. f the other functions in the Traditional NI DAQ Library If you use a stand alone compiler and want to use any of these libraries refer to Chapter 3 Compiler Linker Issues of the LabWindows CVI Programmer Reference Manual If you use the Create Distribution Kit command on a project that you link for instrument driver support only LabWindows CVI automatically selects Instrument Driver Only as the Run Time Engine Support The following Utility Library functions are in instrsup dll Beep DateStr Delay SyncWait Timer TimeStr National Instruments Corporation 2 19 LabWindows CVI User Manual Chapter 2 Workspace Window RoundRealToNearestInteger TruncateRealNumber InStandaloneExecutable CVIRTEHasBeenDetached instrsup d11 does not support the Standard Input Output window Functions such as FmtOut or ScanIn return errors when you use them with instrsup dll All the functions in instrsup d11 are multithread safe cvi lvrt d11 contains the TCP Support Library and the libraries in instrsup dll with the following restrictions The RS 222 Library is not available The file I O and console I O functions in the ANSI C Formatting and I O and Utility Libraries are not supported and return run time errors Some of the functions affected by this are printf scanf fprintf fscanf ScanIn ScanFile FmtOut FmtFile Beep tmpfile and tmpnam Only thec
228. fault shortcut keys enabled View Go to Definition This command is valid only in the Variables window The Go to Definition command opens the Source window that contains the definition of the currently selected function or variable and highlights the definition View Source Code Browser The Source Code Browser is a cross reference tool that lists all files functions variables data types and macros in a program You can use the browser to identify how different parts of a program interact with each other Browse information is not available in Release configuration For more information about the Source Code Browser refer to the Tools Menu for the Workspace Window section of Chapter 2 Workspace Window View Array Display The Array Display command invokes the Array Display window for the currently highlighted array To invoke the Array Display window double click an array variable or press F4 if you have default shortcut keys enabled View String Display The String Display command invokes the String Display window for the currently highlighted string To invoke the String Display window double click a string variable or press lt Shift F4 gt if you have default shortcut keys enabled View Memory Display The Memory Display command displays the currently highlighted item in the Memory Display window If the currently highlighted item is a pointer variable the memory pointed to by the pointer appears in the Memory Disp
229. for the User Interface Editor For more information about these commands refer to the Window Menu for the User Interface Editor section of Chapter 3 User Interface Editor Options Menu for the Source and Interactive Execution Windows Use the commands in the Options menu to set up preferences for the LabWindows CVI environment and execute various LabWindows CVI utilities Options Editor Preferences Use the Editor Preferences dialog box to set up Source window editor preferences Undoable actions per file next session Set the number of actions per file that you can undo Purge undo actions when saving file Clear the accumulated list of editing actions each time you save a file e Tab length Set the tab length Activate the options to request LabWindows CVI to convert tab characters into spaces when saving files and convert leading spaces to tab characters when loading files These options are convenient if you use another editor or a printer that does not support tab characters e Line terminator for this file and Line terminator for new files LabWindows CVI can read source files with any of the commonly used line termination sequences National Instruments Corporation 4 27 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows It remembers what line termination sequence was found in each file and uses the same sequence when saving each file If you want to change that sequence because
230. for the Workspace window Refer to the Help Menu for the Workspace Window section of Chapter 2 Workspace Window for more information Creating a Function Tree with Multiple Classes In this example you create a function tree with nested classes Before beginning select File New Function Tree fp to invoke the Function Tree Editor Complete the following steps to create a new instrument and function tree Enter Function Tree Select Create Class 99 mL cue Be ee a National Instruments Corporation Select Create Instrument Examples as the Name and tree as the Prefix Click OK Select Create Function Panel Window Enter Function 1 as the Name and un1 as the Function Name Click OK Enter Class 1 as the Name Click OK Select Create Function Panel Window Enter Function 2 as the Name and un2 as the Function Name Click OK 7 13 LabWindows CVI User Manual Chapter 7 9 Function Tree Editor Select File Save FP File As and save the file as multclass 10 To view the structure of the function tree as it is seen by the instrument driver user add the instrument to the project by selecting File Add FP File to Project Double click multclass fp in the Project Tree in the Workspace window Moving and Copying Function Panels You can move a function and its associated function panel in a function tree to a new position within the function tree To move a function drag the function an
231. function exists in the code appears next to the function name Static functions are identified e Included headers A hierarchical display of included files in the file National Instruments Corporation 2 53 LabWindows CVI User Manual Chapter 2 Workspace Window e Macros The macros in the file The line number where the macro exists appears next to the macro name e Referencing A hierarchical list of variables and functions grouped according to module explicitly referenced in the file e Referenced from The functions and variables grouped according to module referenced from another file e Types The types defined in the file e Variables The variables defined in the file Line numbers appear next to the variable name Static variables also are identified next to the line number Browsing on Functions Under the Views column you can choose from the following items Definition The file that contains the definition for the function along with the line number in the code e References A hierarchical list of files where the function is referenced e Calling List of functions that the function is calling and the number of references e Called from A hierarchical list of functions that call this function Browsing on Variables Data Types and Macros Under the Views column you can choose from the following items Definition A list of file locations where the variable data type or macro is
232. g 5 10 VISA data types 5 11 DataSocket support option Create Distribution Kit dialog box 2 30 date option DSTRules A 4 daylight savings time setting A 4 Debug Output command 2 58 Debug Output window bringing to front whenever modified 2 62 setting number of lines to display 2 62 debugging Create Debuggable Dynamic Link Library command 2 11 Create Debuggable Executable command 2 11 Debug command 2 40 Debug option Configuration command 2 11 Use Console Window for Standard I O when Debugging option 2 62 LabWindows CVI User Manual Index debugging levels Extended 2 65 No run time checking 2 65 Standard 2 65 decimal symbol localized 3 24 Declare Variable command 6 6 defining variables 6 3 specifying input control parameter 6 4 specifying output control parameter 6 5 specifying return value control parameter 6 3 Declare Variable dialog box Add declaration to current block in target file checkbox 6 6 Add declaration to top of target file checkbox 6 6 Execute declaration in Interactive Window 6 6 Number of Elements 6 6 Set Target File button 6 7 Variable Name 6 6 Variable Type 6 6 DEF file generating 7 10 __DEFALIGN macro 2 69 Default All command 6 14 Default calling convention option 2 64 Default Control command 6 14 Default Control Events option Preferences submenu 3 22 Default Panel Events option Preferences submenu 3 22 Delete command Help Editor 9 5 Source and Interactive Exe
233. g an instrument driver The Instrument I O Assistant generates the following three files c source file that contains the Run Task function and associated source code h include file that contains the Run Task function declaration e mxb binary file that contains a description of the task that is used when you modify the task in the Instrument I O Assistant These generated files are added to your project Using the Instrument 1 0 Assistant The Instrument I O Assistant organizes instrument communication into ordered steps You must arrange the following steps into a sequence Select Instrument Specify the instrument with which the task will communicate This action must be the first step in all sequences e Query and Parse Send a command to the instrument read a response from the instrument and parse the returned data National Instruments Corporation 2 49 LabWindows CVI User Manual Chapter 2 Workspace Window e Write Write data or commands to the instrument e Read and Parse Read a response from the instrument and parse the returned data As you specify and configure each step click the Run this step button to execute the operations you configure or click the Run button to perform the entire sequence For more information about configuring the steps click Show Help to view the embedded help within the Instrument I O Assistant You also must specify the name of the task the name of the Run Task func
234. g function tree 5 14 defining function parameters 5 7 hierarchy of functions 5 7 required functions 5 13 structuring functions 5 6 writing function code 5 14 G generate all code 3 18 Generate C Wrapper command 7 6 generate control callbacks 3 18 Generate DEF File command 7 10 Generate DLL Import Library command 4 30 Generate DLL Import Source command Options menu 4 29 Generate Documentation command 7 10 Generate Function Prototypes command 7 10 Generate Function Tree command 4 31 generate main function 3 18 Generate Main Function dialog box 3 20 National Instruments Corporation 1 15 Index Generate Map File option Target Settings dialog box 2 21 Generate menu All Callbacks command 3 18 All Code command 3 18 Control Callbacks command 3 18 Generate All Code dialog box 3 19 Main Function command 3 18 Menu Callbacks command 3 18 Panel Callbacks command 3 18 generate menu callbacks 3 18 Generate New Source For Function Panel command 7 8 Generate ODL File command 7 10 generate panel callbacks 3 18 Generate Prototypes command 4 21 Generate source code browse information option 2 68 Generate Source for Function Panel command 8 11 Generate Visual Basic Include command 4 30 Generate WinMain Instead of main checkbox Generate Main Function dialog box 3 20 generated code box 6 3 Get Latest Version command Source Code Control submenu 2 52 Get Latest Versions of All command S
235. g you for the pathname to the file XML format function panel files usually have a fpx file extension A document type definition DTD for this XML format is available in the bin directory This file is named cviFPX dtd If the px you are importing has a matching p already in the current workspace or is loaded as an instrument the following dialog box appears LabWindows CVI User Manual 7 12 ni com Chapter 7 Function Tree Editor The XML FP you are trying to open is either already in the current workspace or is loaded as an instrument Select one of the Following options display the existing FP replace the existing FP in memory or cancel the load tw LabWindows C I Message You have several options You can choose to display the existing function panel in the function tree editor replace the function panel that is already in memory with the one that you are importing or cancel the load operation AA Note In all cases the function panel that you import is loaded only into memory and is not saved to disk until you explicitly choose the Save option iy Note If you have a large number of panels in your function panel saving and loading a px file can take significantly longer than saving and loading a comparable fp file Help Menu for the Function Tree Editor Use the commands in the Help menu to access information about LabWindows CVI These commands work in the same way as the Help menu commands
236. ge menu User Interface Editor Align command 3 16 Alignment command 3 15 Center Label command 3 17 Control Coordinates command 3 17 Control ZPlane Order command 3 17 Distribute command 3 17 Distribution command 3 16 array data types user defined 5 11 Array Display command 10 8 Array Display command View menu 11 1 Array Display window Edit menu 11 4 File menu 11 4 Format menu 11 5 Help menu 11 6 multi dimensional array figure 11 2 Options menu 11 6 purpose and use 1 3 11 1 Run menu 11 5 single dimensional array figure 11 1 View menu 11 5 viewing 11 1 Window menu 11 6 arrays multi dimensional arrays illustration 11 2 Reset Indices dialog box 11 2 specifying dimensions 11 2 one dimensional array displaying in Array Display window figure 11 1 Graphical Array View figures 10 9 two dimensional array Graphical Array View figure 10 11 LabWindows CVI User Manual Index ASCII text format loading objects into User Interface Editor in 3 26 saving contents of User Interface Editor in 3 26 Assign Missing Constants command 3 26 Attach and Edit Source command Edit Instrument dialog box 2 44 attribute constants selecting 6 8 Auto Save Workspace command 2 7 background color preference for User Interface Editor 3 25 Balance command 4 10 Batch Build command 2 13 Beginning End of Selection command 4 17 bin directory table A 4 Binary command 8 6 binary control parameters specify
237. h window LabWindows CVI sets the Scope of the variable or expression as Global to project DLL LabWindows CVI User Manual 10 2 ni com Chapter 10 Variables and Watch Windows You can view Watch window variables and expressions in the Graphical Array View String Display Array Display and Memory Display windows Select the text you want to view and drag it into the windows File Menu for Variables and Watch Windows The commands in the File menu work in the same way as the File menu commands for the Workspace window Refer to the File Menu for the Workspace Window section of Chapter 2 Workspace Window for more information File Output The Output command writes the contents of the window to an ASCII file on disk When you select Output a dialog box appears prompting you to specify the name of the file File Hide The Hide command visually closes a window while retaining the contents in memory Edit Menu for Variables and Watch Windows This section contains a detailed description of the Edit menu for the Variables and Watch windows Edit Edit Value Use the Edit Value command to change the value of a variable When you select Edit Edit Value or double click the variable name the Edit Value dialog box appears in which you can type the new value The value that you enter in the Edit Value dialog box depends on the type and display format of the variable as the following instructions demonstrate e Edit integers an
238. he p file is under the VXIplug amp play framework directory A lib file is in the appropriate VXIplug amp play framework subdirectory The following table shows the corresponding subdirectories Corresponding Subdirectory that Compatible Compiler Contains the lib File Visual C C lib msc Borland C C C Builder lib be National Instruments Corporation 5 3 LabWindows CVI User Manual Chapter 5 Using Instrument Drivers If both of the following conditions apply with IVI instrument drivers the 1ib file is associated with the fp file The p file is under the IVI framework directory A libfile is in the appropriate IVI framework subdirectory The following table shows the corresponding subdirectories Corresponding Subdirectory that Compatible Compiler Contains the lib File Visual C C lib msc Borland C C C Builder lib be e Ifan instrument driver program file is on disk in the same directory as the fp file LabWindows CVI loads it with the following precedence l lib 2 obj 3 c Loading an Instrument without an Instrument Program You can load a p file as an instrument even if no program file exists for it In this case LabWindows CVI does not associate a program with the p file Nevertheless the p file appears in the Instruments folder and the Instrument menu Loading a p file without a program is useful if you wan
239. he Function Panel Editor The View menu for the Function Panel Editor works in the same way as the View menu for the Function Panel windows For more information about these commands refer to the View Menu for Function Panel Windows section of Chapter 6 Using Function Panels View Panels Use this command to cycle through the multiple function panels in the Function Panel window Instrument Menu for the Function Panel Editor The Instrument menu for the Function Panel Editor works in the same way as the Instrument menu for the Workspace window For more information about these commands refer to the Instrument Menu for the Workspace Window section of Chapter 2 Workspace Window Tools Menu for the Function Panel Editor Many of the commands in the Tools menu for the Function Panel Editor work in the same way as the Tools menu for the Function Tree Editor For more information about these commands refer to the Tools Menu for the Function Tree Editor section of Chapter 7 Function Tree Editor Tools Generate Source for Function Panel Generate Source for Function Panel generates function definitions and declarations in your driver source and header files If a function definition already exists LabWindows CVI prompts you for permission to update it You can replace insert above or below or skip without updating Your choice also applies to the declaration National Instruments Corporation 8 11 LabWindows CVI User Manual
240. he Global subwindow Next Scope highlights the next module This command appears only in the Variables window LabWindows CVI User Manual 10 4 ni com Chapter 10 Variables and Watch Windows Edit Previous Scope In the function subwindow Previous Scope highlights the function that the current function called directly In the Global subwindow Previous Scope highlights the previous module This command appears only in the Variables window Edit Add Edit Watch Expression These commands do not appear only in the Variables window The Add Edit Watch Expression dialog box has the following options e Variable Expression Contains the variable or expression to place in the Watch window e Scope Corresponds to whether the variable or expression variables are global to the project global to a file local to a function or global to the Interactive Execution window e Executable DLL Indicates the executable or DLL to which the watch expression applies The default value for the control is the debug executable or DLL name for the active project When you start debugging a project LabWindows CVI changes an empty string to the name of the debug executable or DLL for the current project The menu ring to the right of the control contains the names of all debuggable executables and DLLs in the workspace If you want the watch expression to apply to a DLL that is not in the workspace you must supply the name of the DLL Enter the file
241. he Line Numbers item in the View menu when you activate the line number display View Line Icons The Line Icons command displays a column in the left of the Source window in which line icons appear Line icons indicate the lines that you mark for breakpoints and the lines that you tag A checkmark appears next to the Line Icons item in the View menu when you activate the line icons display 3 Note LabWindows CVI saves line icons in the workspace file Editing source files outside of LabWindows CVI however might invalidate the positioning of associated line icons View Toolbar Use the Toolbar command to toggle between viewing or not viewing the Source window toolbar This item is not available for confined Source windows LabWindows CVI User Manual 4 16 ni com Chapter 4 Source and Interactive Execution Windows View Line The Line command moves the cursor to the line that you specify When you select Line a dialog box appears in which you enter the number of the line where you want to position the cursor If you specify a line number greater than the total number of lines in the program the cursor moves to the last line of the program View Beginning End of Selection The Beginning End of Selection command toggles the window between the beginning and the end of a highlighted block of text This is useful when you want to verify a selected block of text that is larger than the Source window View Toggle Tag The Toggle T
242. he Target Settings for DLLs section LabVIEW Real Time Only If you select LabVIEW Real Time Only cvi lvrt dll is installed instead of cvirte dllorinstrsup dll Use this option for DLLs that will be downloaded and run on the LabVIEW Real Time hardware For more information about cvi lvrt d11 refer to the Target Settings for DLLs section None Does not include any run time engine support All Engines Includes support for all three of the preceding run time engines Because it is not known at distribution kit build time if the target machine already has a run time engine NI recommends that you not choose None for your run time engine support Also do not include run time engine DLLs directly in a file group because the DLL might not run correctly or it might not be properly installed e Run Time Engine Install Location Selects the installation location for the run time engine If you choose Install in Windows System Directory the run time engine files are installed into the directory that the Windows system directory resolves to on the National Instruments Corporation 2 29 LabWindows CVI User Manual Chapter 2 Workspace Window target machine If you choose Install in Application Directory all run time engine and supporting files are installed in the same directory as your application The low level support driver files cannot be installed in the same directory as your application Install DataSocket Support
243. hortcuts in Start Programs Shortcut Name Start Top Level LabWindows CVI creates shortcuts in the top portion of the menu directly under the Start button None No shortcuts are created for the files in this group Windows Startup LabWindows CVI creates shortcuts in the Windows Startup folder The items in the Windows Startup folder execute automatically every time a user logs into the system Desktop LabWindows CVI creates shortcuts on the user s Windows desktop Send to Menu LabWindows CVI creates shortcuts in the user s Send To menu The Send To menu appears when you right click a file in Windows Explorer Group Destination Sets the root destination directory for the selected group You can select the destination directory to be either the application install location or common Windows locations These locations automatically resolve to the actual directories on the target machine during the install For a complete description of the directories you can choose from refer to the Parent Folder option A Application Directory The directory in which your application will be installed Relative Path Assigns a relative path based on the group destination directory in which to install the selected file group Note Using the syntax can cause unexpected results if you attempt to reference a directory that is higher than one of the common Windows locations For example if you set the Group
244. iable and message Create Input An input control accepts a variable name or value entered from the keyboard When you select Create Input the Create Input Control dialog box appears The following items appear in the dialog box e Control Label The label that appears above the control on the function panel e Parameter Position The location of the control value in the function parameter list For a control in a common control function panel Parameter Position specifies the control value in the parameter lists of all function panels in a Function Panel window The first position is 1 National Instruments Corporation 8 5 LabWindows CVI User Manual Chapter 8 Function Panel Editor For a control on a function panel Parameter Position specifies the control value in the parameter list after the controls in the common control function panel The first position after the controls in the common control function panel is 1 If there is no common control function panel the first position is 1 e Data Type The data type of the item entered in the input control Default Value The default for the input control The default must be a valid value a constant name or any other valid C expression e Control Width The width of the control in pixels The minimum allowed is 24 The maximum allowed is 2 048 The default control width is 145 pixels Create Slide A slide control looks like a mechanical slide switch A slide control s
245. ication may not be reproduced or transmitted in any form electronic or mechanical including photocopying recording storing in an information retrieval system or translating in whole or in part without the prior written consent of National Instruments Corporation Trademarks CodeBuilder CVI DataSocket IVI LabVIEW National Instruments NI NI 488 2 NI CAN ni com NI DAQ NI Developer Zone and NI VISA are trademarks of National Instruments Corporation Product and company names mentioned herein are trademarks or trade names of their respective companies Patents For patents covering National Instruments products refer to the appropriate location Help Patents in your software the patents txt file on your CD or ni com patents WARNING REGARDING USE OF NATIONAL INSTRUMENTS PRODUCTS 1 NATIONAL INSTRUMENTS PRODUCTS ARE NOT DESIGNED WITH COMPONENTS AND TESTING FOR A LEVEL OF RELIABILITY SUITABLE FOR USE IN OR IN CONNECTION WITH SURGICAL IMPLANTS OR AS CRITICAL COMPONENTS IN ANY LIFE SUPPORT SYSTEMS WHOSE FAILURE TO PERFORM CAN REASONABLY BE EXPECTED TO CAUSE SIGNIFICANT INJURY TO A HUMAN 2 IN ANY APPLICATION INCLUDING THE ABOVE RELIABILITY OF OPERATION OF THE SOFTWARE PRODUCTS CAN BE IMPAIRED BY ADVERSE FACTORS INCLUDING BUT NOT LIMITED TO FLUCTUATIONS IN ELECTRICAL POWER SUPPLY COMPUTER HARDWARE MALFUNCTIONS COMPUTER OPERATING SYSTEM SOFTWARE FITNESS FITNESS OF COMPILERS AND DEVELO
246. ich you can select settings for your source code control system Include Paths The Include Paths option in the Environment dialog box invokes a dialog box in which you can list paths that the compiler uses when searching for header files with simple pathnames The Include Paths dialog box has two lists of paths in which to search for include files one for include paths specific to the project and one for paths not specific to the project LabWindows CVI saves the list of paths specific to the project with the project file LabWindows CVI saves the list of paths not specific to the project from one session to another on the same machine regardless of the project When you install VXIplug amp play instrument drivers the installation program places the include files for the drivers in a specific VXIplug amp play include directory If you install IVI instrument drivers the installation program places the include files for those drivers in a specific IVI include directory LabWindows CVI also searches those directories for include files Source Code Control Options The Source Code Control option in the Environment and Edit Project dialog boxes opens the Source Code Control Options dialog box where you can set the following options e Provider The name of the source code control system that contains the source code control project e Project The name of the source code control project e Attach Attach an existing source code control s
247. ific functions into your executable create a table of function pointers and add the functions to the table For example to force references to CreateWindow and GetFreeDiskSpace you can add the following code to a source file in your project void ReferenceFunctionsTable CreateWindow GetDiskFreeSpace e OK Accepts the current inputs and closes the dialog box e Cancel Cancels the operation and closes the dialog box National Instruments Corporation 2 17 LabWindows CVI User Manual Chapter 2 Workspace Window Target Settings for DLLs When you set the Target Type to Dynamic Link Library and select Build Target Settings the Target Settings dialog box has the following options DLL File The name of the DLL files for the debug and release versions of your program Changing the value of DLL File allows you to edit the filename for the debug and release configurations You can use the Browse button to select an existing filename B Note Ifyou select the LabVIEW Real Time Only option for Run Time Support the filename you select must conform to the 8 3 DOS standard to be downloadable to a LabVIEW Real Time board Import Library Base Name Normally the name of the import library is the same as the name of the DLL except that the extension is 1ib There might be some cases however when you want to use a different name For example you might want to append _32 to the name of your DLL to distinguish it as a 32
248. ile essere 4 37 Help Menu for the Source and Interactive Execution Windows sess 4 37 HelpsKeyboard Help 5 ete ree eec Le Ot Ha 4 37 Chapter 5 Using Instrument Drivers Instrument Driver Elles oerte itr ite perm este 5 1 VXIplug amp play Instrument Driver Files eese 5 2 IVI Instrument Driver Files eene 5 2 Loading Unloading Instrument Drivers eese 5 3 Precedence Rules for Loading the Instrument Driver Program File one tea te ead 5 3 Loading an Instrument without an Instrument Program 5 4 Modules That Contain Non Instrument Functions eee 5 4 Modifying an Instrument Driver eese 5 5 Building IVI Instrument Drivers nen 5 5 Fund mentals OvetrVIeW 4 iacere teet evs deeds rH e etie tend 5 5 Defining the Instrument Functions eseseeeeeeeeeeee eene 5 6 Structuring Functions in an Instrument Driver 5 6 Defining the Hierarchy of Functions esee 5 7 Defining the Function Parameters eee ceeeeseeseceeeeseesseeseeeseeseseaeeseenaes 5 7 LabWindows CVI User Manual Xii ni com Contents Data Types vires ite svtas iiie peso ab ed deis ane R E 5 7 Predetined Data Type Sini e eee nte bet Dis 5 8 Inttinsic C Data Eypes eret te een 5 8 Meta Data Types osos Gr ertet 5 9 User Defined Data Types iis
249. ile Format dialog box Example Many instrument drivers use the _VI_FUNC macro as the function qualifier The vri FUNC macro is defined in the visatype h include file The definition of the VI FUNC macro varies based on the target operating system and application development environment The Create Class or Function Panel Window line appears beneath the instrument name Add functions and classes to the function tree using the Create Function and Class commands Create Class Use the Class command to add a new class to a function tree When you select the Class command the Create Class Node dialog box appears Enter the name that you want to appear in the Select Function Panel dialog box that opens when the user selects the instrument from the Instrument menu LabWindows CVI User Manual 7 4 ni com Chapter 7 Function Tree Editor In the function panel hierarchy you can insert up to eight levels of classes iyi Note A function tree can contain a combination of up to 32 000 functions and classes Create Function Panel Window Select Create Function Panel Window to add a new function to a function tree The Function Panel window is a collection of panels that represents all functions that users can interactively call from that window When you select the Function Panel Window command the Create Function Panel Window Node dialog box appears Enter the following information 1 In Name enter the name that you want to appear in
250. ile in the User Interface Editor Create Menu for the User Interface Editor Use the Create menu to create panels menu bars and controls For more information about each type of control you can create refer to the LabWindows CVI Help Arrange Menu for the User Interface Editor This section explains how to use commands in the Arrange menu of the User Interface Editor Arrange Alignment Use the Alignment command to align controls on a panel You can use the mouse to select a group of controls by dragging over them or Shift Click on each item you want to include in the group Then you can select an alignment method from the submenu The options on the Alignment command submenu are as follows Left Edges vertically aligns the left edges of the selected controls to the left most control Horizontal Centers vertically aligns the selected controls through their horizontal centers Right Edges vertically aligns the right edges of the selected controls to the right most control Top Edges horizontally aligns the top edges of the selected controls to the jee upper most control Vertical Centers horizontally aligns the selected controls through their Hle vertical centers Bottom Edges horizontally aligns the bottom edges ofthe selected controls llea to the lower most control National Instruments Corporation 3 15 LabWindows CVI User Manual Chapter 3 User Interface Editor Arrange Align The Align command performs
251. ile the breakpoint is in effect However you can look at other windows change the state of breakpoints and modify the value of variables in the Variables Array LabWindows CVI User Manual 4 22 ni com Chapter 4 Source and Interactive Execution Windows Display and String Display windows Also if you are at a breakpoint in a Source window you can execute code in the Interactive Execution window or in a function panel To resume program execution after a breakpoint you have several options under the Run menu You can restart the project at a breakpoint by selecting Debug To halt the execution of a program at a breakpoint select Terminate Execution while a LabWindows CVI environment window is active Setting and Clearing Breakpoints You can set and clear breakpoints in the following ways e Ifyou select View Line Icons click the line icon area next to a line of code to set or clear a breakpoint on that line e Move the cursor to the line of code where you want to set or clear a breakpoint and select Run Toggle Breakpoint e Select Run Breakpoints to edit all breakpoints in the workspace and the Interactive Execution window You also can use the Breakpoints command to set conditional breakpoints Select Run Break On First Statement to break on the first executable statement in the project or the Interactive Execution window e You can set breakpoints directly in source code using the Breakpoint function e You can manua
252. iles in this subdirectory When you install a VXIplug amp play instrument driver the installation program places the c file in the same directory as the p file The installation program also installs a dynamic link library 311 and two import libraries 1ib one compatible with Visual C C and the other compatible with Borland C C These files are not in the same directory as the p file The import libraries are in the VXIPNP 1ib msc and VXIPNP 1ib bc subdirectories The DLL is in the VXIPNP bin subdirectory The installation program adds the VXIPNP bin directory to the PATH environment variable so that the DLL can be found using the standard Windows DLL search algorithm If the p file is under the VXIplug amp play framework directory LabWindows CVI can find the appropriate import library If LabWindows CVI finds the import library it gives it precedence over the c file as the program file for the instrument driver IVI Instrument Driver Files When you install an IVI instrument driver the installation program does not place the h file in the same directory as the p file The installation program places the h file in the IVI include subdirectory LabWindows CVI then can find the include files in this subdirectory When you install an IVI instrument driver the installation program installs a dynamic link library d11 and two import libraries 1ib one compatible with Visual C C and the other with Borland C C
253. imension of the array To customize the appearance of the graph select different color scales from the Color Scale option Format Menu for Variables and Watch Windows Use the commands in the Format menu to choose the format the Variables and Watch windows use to display numbers You can change the format for an individual variable and the default formats for all variables Format Decimal Hexadecimal Octal Binary ASCII These items in the Format menu specify the available formats for displaying individual integers in the Variables and Watch windows You can display integers in decimal hexadecimal octal binary or ASCII format Format Floating Point Scientific These items the Format menu specify the formats available for displaying individual real numbers Real numbers appear in either floating point or scientific notation Format Preferences Use the Preferences command to set the default formats for all integers and all real numbers Run Menu for Variables and Watch Windows The commands that appear in the Variables and Watch windows Run menu are the same as the commands for the Run menu in the Workspace window Refer to the Run Menu for the Workspace Window section of Chapter 2 Workspace Window for more information about these commands Window Menu for Variables and Watch Windows The commands that appear in the Variables and Watch windows Window menu are the same as the commands for the Window menu in the Worksp
254. indow from the Interactive Execution window or from a function panel you must first execute the Compile File command in the Source window where you define the function If you subsequently modify the function you must recompile the Source window before calling the function again You can specify compiler options in the Build Options dialog box Build Create The Build Create command works in the same way as the command in the Build menu in the Workspace window Refer to the Build Menu for the Workspace Window section of Chapter 2 Workspace Window for more information Build Mark File for Compilation When LabWindows CVI marks a source file for compilation a C appears in the Status column of the Project Tree in the Workspace window LabWindows CVI recompiles marked files the next time you build the project When you modify a source file LabWindows CVI automatically marks the file for compilation You can force LabWindows CVI to compile a source file on the next build by selecting Mark File for Compilation LabWindows CVI User Manual 4 20 ni com Chapter 4 Source and Interactive Execution Windows Build Clear Interactive Declarations Variables you declare in the Interactive Execution window remain in effect until you explicitly remove them This feature lets you use these variables in succeeding executions of the Interactive Execution window and also enables different function panels to access the same variables When you delete
255. indows CVI moves the button to the Available Buttons list If you remove a separator it disappears from the list Your modifications take effect on the toolbar when you click OK Click Default to restore the default toolbar configuration for the selected window To position any item on the toolbar select it in the Buttons on Toolbar list and click Move Up or Move Down Modifications take effect on the toolbar when you click OK Help Menu for the Workspace Window Use the commands in the Help menu to access information about LabWindows CVI Help Contents The Contents command opens the LabWindows CVI Help Help Windows SDK The Windows SDK command opens online help for the Windows API functions LabWindows CVI User Manual 2 72 ni com Chapter 2 Workspace Window Help LabWindows CVI Bookshelf This command launches the LabWindows CVI Bookshelf which contains a searchable comprehensive list of all LabWindows CVI documentation Help Workspace View Selection The Workspace View Selection command opens a dialog box in which you can change the display of the Workspace window Help Tip of the Day The Tip of the Day command opens a dialog box containing tips to help you learn about features in the LabWindows CVI environment Help NI Example Finder This command launches the National Instruments Example Finder With the NI Example Finder you can search through all examples that ship with the NI products you have install
256. information the date and time the file was last modified and the size of the file Right click a project name to perform the following actions Save the project Setthe selected project as the active project Build the project Edit the project Remove the selected project from the workspace Print files in the project A Add a folder to the project A Add a file to the project Create a new file in the project Get the latest version of the project from source control Check out the project from source control Check in the project to source control Browse the project in the Source Code Browser Finditems within the Project Tree Expand all items within the Project Tree Collapse all items within the Project Tree LabWindows CVI User Manual 2 2 ni com Chapter 2 Workspace Window Right click a file in a project such as a source file or user interface file to perform the following actions Open the file in its window Edit the file This option applies only to p files and files that are not native to LabWindows CVI Save the file Exclude the file from the build This option applies only to source files Enable the O option This option compiles a source file without debugging information Replace the file with another file Remove the file from the project Compile the file This option applies only to source files Mark the sourc
257. ing 6 4 Bottom Edges option Alignment command 3 15 Distribution command 3 16 Bracket Styles command 4 28 brackets finding pairs of 4 10 setting location for 4 28 break key enabling global Ctrl F12 debug break key 2 62 Break On First Chance Exceptions option 2 41 Break On First Statement option 2 41 Break On Library Errors option 2 41 breakpoints See also watch variables expressions applicable only in source code modules note 4 22 breakpoint state 4 22 conditional 4 23 purpose and use 4 22 LabWindows CVI User Manual l 2 resuming execution 4 23 setting and clearing 4 23 Breakpoints command options 2 41 Breakpoints command Run menu opening Breakpoints dialog box 2 41 setting breakpoints 4 23 Breakpoints dialog box Add Edit Item button 2 41 Delete All item 2 41 Delete Item button 2 41 Disable All button 2 41 Edit Breakpoint dialog box 2 41 Enable All button 2 41 Go to Line button 2 41 options 4 22 Bring Debug Output Window to Front whenever Modified option Environment dialog box 2 62 Bring Panel to Front command 3 14 Browse Info window using only one 2 61 Browser See Source Code Browser build errors Build Errors in Next File command 4 21 Next Error Item command 4 21 Previous Error Item command 4 21 Build Errors command 2 57 Build Information section Create Distribution Kit dialog box 2 28 Build menu Source and Interactive Execution windows Add Missing Includes command 4 21 B
258. ing the Windows SDK GetFileVersionInfo and GetFileVersionInfoSize functions In the Version Info dialog box File Version and Product Version must be in the following form n n n n where n is a number from 0 to 255 Import Library Choices Choose whether to create a DLL import library for each of the compatible external compilers or to create only one for the current compatible compiler Refer to Chapter 3 Compiler Linker Issues of the LabWindows CVI Programmer Reference Manual You also can choose whether to create the import libraries in the VXIplug amp play or IVI subdirectories instead of the directory of the DLL If you choose to use the DLL directory and create an import library for each compiler LabWindows CVI creates the files in subdirectories named msvc and borland LabWindows CVI also creates the library for the current compatible compiler in the directory of the DLL If you choose to create an import library only for the current compiler LabWindows CVI creates the file in the directory of the DLL If you choose to use the VXIplug amp play directories and create an import library for both compilers LabWindows CVI creates the files in the VXIPNPMlibWnsc and VXIPNP 1ib bc subdirectories If you choose to create an import library for the current compiler only LabWindows CVI creates the file in the appropriate subdirectory If you use the IVI directories and create an import library for both compilers LabWindows CVI creates
259. ing the control or pressing Tab until the control is highlighted Select multiple controls by dragging the mouse over the controls You also can press lt Shift Click gt to select multiple controls 2 Select Edit Cut or Copy National Instruments Corporation 3 5 LabWindows CVI User Manual Chapter 3 User Interface Editor Edit Paste The Paste command inserts controls panels or text from the clipboard You can paste an object from the clipboard as many times as you like Controls or panels remain on the clipboard until you use Cut Cut Panel Copy or Copy Panel again The New and Open commands do not erase the clipboard Edit Delete The Delete command deletes selected controls without placing the controls on the clipboard Because Delete does not place controls on the clipboard you cannot restore deleted controls using the Paste command Edit Copy Panel and Cut Panel The Copy Panel and Cut Panel commands put an entire panel on the clipboard The Copy Panel command copies the selected panel its controls and all the associated help information and places it on the clipboard leaving the selected panel in its original location The Cut Panel command removes the selected panel its controls and all the associated help information and places it on the clipboard Panels you cut or copy do not accumulate on the clipboard LabWindows CVI replaces an existing panel every time you cut or copy a panel To use the Copy Panel or
260. int Style Selects the style in which points appear Line Style Selects the style in which lines appear Interpret data as Displays the data as 1 array or as an interleaved array Selecting N Interleaved Arrays displays the data as contiguous sets of points The maximum number of points you can select is half the number of elements in your array The following figure illustrates an interleaved 1D array 1 0 I 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 s 1 5 180 15 21 25 3 36 42 4 52 5 B3 EB 73 78 ea 54 58 Bald x Interpret data as 2 N interleaved arrays 3 5 Line Style sotd The value at point 68 is 0 275206 Help LabWindows CVI User Manual 10 10 ni com Chapter 10 Variables and Watch Windows 2D Arrays The following figure shows the Graphical Array View for a 2D array Dy 5 g o E a Dimension 1 A graph for a 2D array is an intensity plot The different shades of gray represent the magnitude of the points Darker shades represent lower values and lighter shades represent higher values The color scale uses the standard spectrum The following colors are organized from highest value to lowest value White Red Yellow Green Cyan Blue Magenta Black 9e I ON UA de oM AS pn National Instruments Corporation 10 11 LabWindows CVI User Manual Chapter 10 Variables and Watch Windows The Dimension 1 axis represents the first dimension of the array The Dimension 2 axis represents the second d
261. ions Estimate Number of Elements Options Add Watch Expression ssssss Help Menu for Variables and Watch Windows Chapter 11 Array and String Display Windows Array Display Window essen Multi Dimensional Arrays eene String Display Window sese Multi Dimensional String Arrays File Menu for Array and String Display Windows File OUtpUt 4 eere ee IR Fil Inp t 5 emeret Edit Menu for the Array and String Display Windows Window Menu for Array and String Display Windows Options Menu for Array and String Display Windows Options Reset Indices sese Options Display Entire Buffer suse Help Menu for Array and String Display Windows Appendix A Configuring LabWindows CVI Appendix B Technical Support and Professional Services Glossary Index National Instruments Corporation Xix Edit Goto ette CDS Ae Edit Edit Character ceste Edit Edit Mode eee Edit Overwrite eH ome te View Menu for Array and String Display Windows Format Menu for Array and String Display Windows Run Menu for Array and String Display Windows Contents LabWindows CVI User Manual About This Manual Conventions The LabWindows CVI User
262. ious Function Panel Window Next Function Panel Window First Function Panel Window and Last Function Panel Window give you access to function panels in this linear manner You can access function panels in other ways as well For instance you might want to return to a panel you recently used or recall a panel from the text of a function call in a Source window The commands that give you access to panels in these and other ways are in the View menu of the Source window A similar set of commands exist in the View menu of the Function Panel window The Function Panel window is a collection of panels that represent all functions that users can interactively call from that window The following figure shows the Configure Channel Function Panel window for the IviScope Class Driver The figure contains a function panel that corresponds to the IviScope ConfigureChannel function You can use controls on function panels to specify parameters for the functions The generated code box at the bottom of the window displays the function calls these function panels generate ES IviScope Class Driver Configure Channel d uj d K iy a 4 E ViStatus Status IviScope ConfigureChannel ViSession Instrument Handle a ViChar Channel Nanme LabWindows CVI User Manual 6 2 ni com Chapter 6 Using Function Panels Multiple Function Panels in a Window The Function Panel window can contain more than one function panel Each function panel corr
263. its supporting files If you choose Install in Windows System Directory the run time engine is installed into whatever the Windows System directory resolves to on the target machine If you choose Install in Application Directory the run time engine is installed in the same directory as your application Instrument Driver Only Includes support for instrument drivers If you install instrument driver support your project does not link to the entire set of LabWindows CVI libraries but to a smaller set of functions When you select this option your distribution will not include the LabWindows CVI Run time Engine DLL cvirte d11 Instead your distribution includes instrsup d11 which is much smaller This command allows other applications to use instrument driver DLLs without having to load the large LabWindows CVI Run time Engine DLL If you choose Install in Windows System Directory instrsup d11 is installed into whatever the Windows System directory resolves to on the target machine If you choose Install in Application Directory instrsup d11 is installed in the same directory as your application Also if you create a distribution kit for a project that you link for instrument driver support only in the Target Settings dialog box LabWindows CVI automatically enables the option to install instrsup d11 Do not include instrsup d11l directly into a file group use this option instead For more information about instrsup d11 refer to t
264. iver Developers Guide Fundamentals Overview This section covers instrument driver fundamentals you must consider if you add functions to a driver or if you develop a driver without using the Instrument Driver Development Wizard Although the wizard is the recommended method for developing a driver for an instrument that you control through a GPIB VXI or serial interface there may be situations in which you develop a driver for other purposes For example you might develop a driver for common utility functions or analysis algorithms or a driver for controlling custom hardware that does not fit the IVI instrument driver model for GPIB or VXI devices National Instruments Corporation 5 5 LabWindows CVI User Manual Chapter 5 Using Instrument Drivers Defining the Instrument Functions An instrument driver exports a set of functions that programmers can use to control an instrument To make the set of functions easy to use you must organize them into a logical structure Group related functions into categories or classes For complex instruments group related classes into higher level classes For very complex instruments that incorporate multiple personalities you might consider creating multiple instrument drivers Structuring Functions in an Instrument Driver If you use the wizard with a predefined instrument template the wizard creates a function hierarchy for you Otherwise you must define and structure the driver functions
265. ivers Control Help To display help for a specific function panel control select the control and select Help Control or right click the control You can enter control help from the Function Panel Editor Complete the following steps to add help for a function panel control 1 Select the control 2 Select Edit Control Help The Help Editor appears Alternatively you can right click the control to display the Help Editor 3 Enter the help text into the Help Editor You can add HTML tags to the text or you can leave out the HTML tags Function Panel Window Help Old Style Help Only When you use the old help style you can display help that pertains to a Function Panel window by selecting Help Window in the function panel Alternatively you can right click the background the Function Panel window to display the function panel help When you use the old help style enter Function Panel window help information from the Function Panel Editor Complete the following steps to add Function Panel window help 1 Select Edit Window Help in the Function Panel Editor The Help Editor appears Alternatively you can right click the background of the Function Panel window to display the Help Editor 2 Enter the help text into the Help Editor File Menu for the Help Editor The commands in the File menu for the Help Editor work in the same way as the commands in the File menu for the Workspace window Refer to the File Menu f
266. ix_IviClose but the driver must not have function panels for these functions The Prefix_init function calls the Prefix_InitWithOptions function which in turn calls the Prefix_IviInit function The Prefix close function calls the Prefix IviClose function Building the Function Tree Use the Function Tree Editor to create the function tree for your instrument driver The function tree shows the hierarchy of instrument driver functions Users can access functions from the function tree The function tree also contains help that the user can access from the dialog boxes Add help as you create the tree Building the Function Panels Users operate the function panels to execute instrument driver functions and to generate code for an application program Each primary function requires a function panel A secondary function can appear on one or more function panels A function panel also can consist entirely of secondary functions Use the Function Panel Editor to build function panels You also can add help for each control on a panel Add help as you create each panel Writing the Function Code After you name the function and define its parameter list write the code to implement the function LabWindows CVI provides development tools for testing and debugging your code The instrument driver you create uses full C language source code To develop the instrument driver source code follow the guidelines in Chapter 3 Programming Guidelines f
267. ject File Enter the name of the object file to create Click Create to create the file You must include this file in your external compiler project The bottom of the External Compiler Support dialog box contains a list of library files to include in your external compiler project The files are as follows e cvi7O0NextlibNcvirt lib e cvi7O0NextlibNcvisupp lib cvi70NextlibNcviwmain lib Use cviwmain 1ib only when the external compiler requires you to define WinMain when you do not define it in your project and when any of the libraries the external compiler automatically links do not define it In general console applications do not require WinMain GUI application wizards sometimes automatically include it in the source code they generate Build Create Distribution Kit Use the Create Distribution Kit command to make an installer application from which you can install your executable program on a target machine Create Distribution Kit automatically includes all the files necessary to run your executable program on a target computer except for DLLs for National Instruments hardware files that you load using LoadExternalModule and any ActiveX servers that are not the target of your project Do not include DLLs for National Instruments hardware in your distribution kit Users can install the DLLs for their hardware from the distribution disks that they obtain from National Instruments If you load files using LoadExternalModul
268. l 6 16 ni com Function Tree Editor About the Function Tree and Function Tree Editor The function tree defines the hierarchical structure in which functions of an instrument driver are grouped Use the Function Tree Editor to create and modify the function tree for an instrument driver To invoke the Function Tree Editor select File New Function Tree fp or File Open Function Tree fp You also can drop a p file into the Window Confinement Region of the Workspace window When you invoke the Function Tree Editor a new Function Tree Editor window appears If you select New to create a new function tree you see a blank Function Tree Editor Right click the background or select Create Instrument to create an instrument If you select Open to edit an existing function tree the function tree for the file you selected appears in the window To edit a function panel double click the function in the function tree File Menu for the Function Tree Editor The commands in the File menu for Function Tree Editor work in the same way as the commands in the File menu for the Workspace window Refer to the File Menu for the User Interface Editor section of Chapter 3 User Interface Editor for more information File Add Program File to Project The Add Program File to Project command adds the instrument driver program file associated with the p file of the current Function Panel window to the project list Edit Menu for
269. l Events opens the Panel Callback Events dialog box Selecting Code Preferences Default Control Events opens the Control Callback Events dialog box To set the Default Panel Events or Default Control Events select the events you want to include in the code as case statements and then click OK For each option you choose LabWindows CVI includes in the source code a case statement that corresponds to this option Note Default control events are ignored for timer control callbacks for which the only event cases are EVENT TIMER TICK and EVENT DISCARD When you select Always Append Code to End LabWindows CVI places the skeleton code for each callback function at the end of the target file If you do not select this option LabWindows CVI places newly generated code at the current position of the cursor in the target file Run Menu for the User Interface Editor The commands that appear in the User Interface Editor Run menu are the same as the commands for the Run menu in the Workspace window Refer to the Run Menu for the Workspace Window section of Chapter 2 Workspace Window for more information about these commands LabWindows CVI User Manual 3 22 ni com Chapter 3 User Interface Editor Library Menu for the User Interface Editor The Library menu for the User Interface Editor works in the same way as the Library menu for the Workspace window For more information about these commands refer to the Library Menu
270. l subwindow displays the following variables e Project globals including all global variables not declared as static Interactive Execution window variables declared in the Interactive Execution window e Global variables declared as static The function subwindow displays function parameters and local variables from currently active functions The variable list for each function is grouped in a different section For any given function the Variables window lists formal parameters first followed by local variables Formal parameters appear in italics National Instruments Corporation 10 1 LabWindows CVI User Manual Chapter 10 Variables and Watch Windows The following icons appear to the left of certain variables F The variable on this line is the starting pointer to a block of defined data such as an array string or structure Click this icon or select View Expand Variable to expand the variable so that you can see each element or member The variable on this line is the starting pointer to a block of defined data that appears in expanded form Click this icon or select View Close Variable to close the variable so that you see only the starting pointer The variable on this line is a member of a structure that is a parent pointer to another structure of the same type Click this icon or select View Follow Pointer Chain to replace the current structure with the child structure that the pointer references gt The va
271. lay If the currently highlighted item is not a pointer the address of the highlighted variable appears in the Memory Display LabWindows CVI User Manual 10 8 ni com Chapter 10 Variables and Watch Windows View Graphical Array View Use the Graphical Array View command to view the values of arrays in a graph You can view arrays in a graph only while you are debugging and only with 1D and 2D arrays From the Variables window or Watch window select View Graphical Array View to open the Graphical Array View for the currently highlighted array You also can drop a variable from the Source Interactive Execution Variables or Watch window onto the Graphical Array View 1D Arrays The following figure shows a Graphical Array View for a 1D array Gi Pel ES Wey 0 0 0 2 0 47 0 6 0 8 EN Se e ane ee eee e Te e 0 5 10 15 20 25 30 35 40 45 50 55 60 65 70 75 80 85 90 9599 zi SINo Point Interpret data as E 1 array Line Style Solid The value at point 68 is 0 275206 Help For a 1D array the Graphical Array View shows a single plot To find the value of a point move the crosshair pointer over any point in the graph When values change during debugging the graph auto scales to fit the updated values National Instruments Corporation 10 9 LabWindows CVI User Manual Chapter 10 Variables and Watch Windows You can customize the appearance of the graph with the following options Po
272. le New Function Tree fp Select Create Instrument Enter Help Examples as the Name and help as the Prefix Click OK Select Create Class Enter Class 1 as the Name Click OK Select the line beneath Class 1 Select Create Function Panel Window Enter Function 1 as the Name and un1 as the Function Name Click OK Oo 990 I Qvo f amp PR oL The first level of help is associated with the name of the instrument driver Right click Help Examples and select Edit Help to open the Help Editor n Enter the following texts This driver was created to illustrate how to add help text to an instrument driver 11 Select File Save FP File Save the file as help p Close the Help Editor 12 Right click Class 1 and select Edit Help 13 Enter the following text in the Help Editor An example function class The functions in this class are the following Function 1 The only function in the class LabWindows CVI User Manual 9 6 ni com Chapter 9 Adding Help to Instrument Drivers 14 Save the p file and close the Help Editor Complete the following steps to view the help Select Instrument Help Examples The Select Function Panel dialog box appears Select Class 1 and click Help to open the Class Help window Click Instrument Help to display the Instrument Help window Click Done to exit the Instrument Help and Class Help windows D du ina Click Cancel to exit the Select Function Panel dialog
273. le breakpoint with the Edit Breakpoint dialog box Go to Line Highlights the source code location of the currently selected breakpoint Delete Item Deletes the currently selected breakpoint Delete All Deletes all the breakpoints Disable All Forces LabWindows CVI to ignore all the breakpoints The breakpoint icons in the Source window change color to indicate that you disabled them Enable All Activates all the breakpoints The breakpoint icons in the Source window change color to indicate that you enabled them OK Accepts the current breakpoint attributes and closes the dialog box Cancel Cancels the current operation and closes the dialog box For more information about breakpoints refer to the Introduction to Breakpoints and Watch Expressions section of Chapter 4 Source and Interactive Execution Windows Run Stack Trace You can use the Stack Trace command only during a breakpoint state Stack Trace opens a dialog box that lists the currently active functions in the program displaying the most recently called function at the top and the initial function at the bottom If you highlight a function in National Instruments Corporation 2 41 LabWindows CVI User Manual Chapter 2 Workspace Window the list and select Display a Source window appears with the file that contains that function LabWindows CVI highlights the last statement that your program executed in that function Run Up Call Stack You can use the
274. lect Run View Variable Value to open the Array Display window when the name of an array variable is under the keyboard cursor e Ina function panel select Code View Variable Value to open the Array Display window when the name of an array variable is in the active function panel control You also can drop array variables onto the Array Display window From the Source Interactive Execution Variables or Watch window drop the variable you want to view onto the Array Display window The following figure shows the Array Display window for a single dimensional array amp Array Display y IDE x File Edit View Format Run Window Options Help double y 100 Slice R Index 9 0 027741325113682 J 351451155125584 617267372661519 069063386944182 895260475478378 343455305642872 404461806085391 452833643604846 98953215124973 FICEEEELII 1 0 0 1 1 0 1 0 0 D CO 7J C Om CO h9 I2 C9 National Instruments Corporation 11 1 LabWindows CVI User Manual Chapter 11 Array and String Display Windows The Slice indicator shows the dimension that appears You can display a single dimensional array by row R or column C using the Options Reset Indices command The Index indicator shows the currently selected element Multi Dimensional Arrays For an array with two or more dimensions you can specify two dimensions as the rows and columns of the display You also can specify constant values to use to fi
275. lename LoadPanel or LoadPanelEx will look first for an embedded uir Generate Map File Creates a memory map for the executable This map lists the address of every function and variable and the name of the function or variable This option is useful if your program crashes and provides an address where the failure occurred You can view the map file to check which function or variable the crash occurred in Create Console Application If you disable this option LabWindows CVI creates your executable as a Windows GUI application If you enable this option LabWindows CVI creates your executable as a console application Console applications create a Windows console window Command Prompt or MS DOS Prompt and set the standard I O port to the console Create a console application if you want to redirect the standard input or output of your program Register ActiveX Server After Build LabWindows CVI registers the target each time that it builds the target By default this option is enabled for a new ActiveX server project This option appears only for ActiveX server projects Version Info Opens the Version Info dialog box You can enter version information for the executable file in this dialog box LabWindows CVI saves the version information in the executable as a standard Windows version resource You can obtain the information LabWindows CVI User Manual 2 16 ni com Chapter 2 Workspace Window from the executable by using
276. libraries and static libraries Refer to Chapter 4 Creating and Distributing Release Executables and DLLs of the LabWindows CVI Programmer Reference Manual for more information LabWindows CVI User Manual 1 4 ni com Workspace Window Use the Workspace window to open edit build run and save application project prj files and to open edit and save workspace cws files A workspace file contains the settings that do not affect the way a project builds such as breakpoints window positions tag information and debugging levels A workspace can contain one or more projects A project file is a list of files your application uses If you loaded a workspace the last time you used LabWindows CVI that workspace appears in the Workspace window when you start LabWindows CVI again Workspace Window Overview The Workspace window contains many of the different components of the LabWindows CVI environment In this window you can work with all of your files you can create edit save and run files You also can view output such as errors and search results The Workspace window contains the following four areas National Instruments CVI7O samples userint events cws er eot E G3 Source Fies Ed everts c E Ql Include Files E Gg User Interface Fles everts ur Project Tree L Pa C Lixanes al C Instruments amp M Fegin Enrere 128 26 Iliegal expression 33 1 synkas error fou
277. lights the function call in the source code Use the DebugPrintf function for all your debug output strings Unlike the Standard I O window you can access and scroll through the Debug Output window even while your program is suspended To view the Debug Output window as the program adds text to the window enable the Bring Debug Output Window to Front whenever Modified option in the Environment dialog box The context menu in the Debug Output window contains the following items e Clear Window Removes all items from the Debug Output window e Copy Item Copies a single highlighted item to the clipboard Copy All Items Copies all items in the Debug Output window to the clipboard e Save to File Saves the contents of the Debug Output window to a text file e Goto Item Highlights the selected line of code e Release Confine Window Releases the window from the Output Window Region if confined Confines the window into the Output Window Region if released Hide Confined Error Windows Removes all windows from the Output Window Region To access the context menu right click an empty area of the Debug Output window Window Find Results Window The Find Results window contains the search results for a search involving multiple files The Find Results window lists the filename and line number of the matched text Double clicking a match in the Find Results window opens the file and highlights the matched text Press F4 to
278. lines Edit Resolve All Excluded Lines The Resolve All Excluded Lines command interactively highlights the next excluded line or set of consecutive excluded lines and allows you to reinclude comment out conditionally compile out delete or skip the code National Instruments Corporation 4 9 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows Edit Insert Construct The Insert Construct command has a submenu of various C programming constructs Use this command to insert a construct into your Source window at the current keyboard cursor position For most of these menu items a dialog box appears in which you can fill in portions of the construct You can press Enter or click OK without filling in the dialog box When you insert the construct into your program the keyboard cursor moves to the first location in the construct where you can enter text You can set the location of the curly brackets in the construct by selecting Options Bracket Styles Edit Balance Use the Balance command to find pairs of opening and closing curly braces brackets and parentheses If the cursor is within or near a set of any of these symbols when you select the Balance command LabWindows CVI highlights all characters between them This command is useful when you want to find a missing opening or closing symbol and a large number of these symbols are nested inside each other Edit Diff Use the Diff co
279. llation Name and Start Program Sub Folder to help distinguish one version from another Nlrecommends that you also change the default Install Location option in the Create Distribution Kit dialog box Doing so minimizes the chance that two different distribution kits will install the same file s to the same directory e Generate New GUID Generates a new GUID for the current distribution kit installer NI recommends that you use this option to generate the new GUID instead of editing the existing GUID Using this option guarantees a unique GUID e Install 3D Graph Control Set this option to If Needed to include the NI 3D Graph ActiveX control in your distribution only if your project uses the 3D Graph function panel Set this option to Always to include NI 3D Graph ActiveX control in your distribution regardless of whether your project uses the 3D graph Set this option to Never if you do not want to include the NI 3D Graph ActiveX control under any condition National Instruments Corporation 2 39 LabWindows CVI User Manual Chapter 2 Workspace Window Run Menu for the Workspace Window This section explains how to use the commands in the Workspace window Run menu You can use commands in the Run menu to run your program step through code and assign breakpoints Run Debug If you select Build Target Type Executable the Debug menu item runs the project s target executable for the currently selected configuration Se
280. lly suspend execution while the program runs if the program checks for user input For example if the program makes calls to RunUserInterface or scanf pressing lt Ctrl F12 gt if you have default shortcut keys enabled while a LabWindows CVI environment window is active causes a breakpoint state Conditional Breakpoints To set conditional breakpoints select Run Breakpoints When you assign a conditional breakpoint to a line in a program LabWindows CVI evaluates an expression you supply such as x 100 or y lt 0 before executing the line If the expression is true program execution suspends For example if you assigned these expressions to line 23 in a program you would have to define x and y before line 23 Watch Expressions You can use watch expressions to suspend program execution conditionally Watch expressions do not apply to specific lines of code Instead LabWindows CVI evaluates them before each statement in source code National Instruments Corporation 4 23 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows Run Run Interactive Statements Select Run Interactive Statements in the Interactive Execution window to execute code in that window You do not need to enter a complete program in the Interactive Execution window For instance you can execute variable declarations and assignment statements in C without declaring a main function You can use the Interactive Execution window to
281. lobal variables that appear in source code Highlight the variable that you want to see and select View Variable Value Depending on the type of the variable the Variables Array Display or String Display window appears with the selected variable highlighted Run Add Watch Expression Add Watch Expression is a convenient way to view the value of an expression that appears in source code Highlight the expression that you want to see and select Add Watch Expression The Watch window appears with the expression you selected Run Evaluate Data Tooltip The Evaluate Data Tooltip command displays the value of expressions variables and identifiers If the value in the tooltip is bold you can change the value by clicking the value You also can hover the mouse over a value to view the tooltip Instrument Menu for the Source and Interactive Execution Windows The Instrument menu for the Source and Interactive Execution windows works in the same way as the Instrument menu for the Workspace window For more information about these commands refer to the Instrument Menu for the Workspace Window section of Chapter 2 Workspace Window National Instruments Corporation 4 25 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows Library Menu for the Source and Interactive Execution Windows The Library menu for the Source and Interactive Execution windows works in the same way as the Library menu for the Workspace
282. lready installed on the system the installer will use that directory otherwise the installer will use its default directory LabWindows CVI User Manual 2 26 ni com Chapter 2 Workspace Window Program Files Directory The full path of the Program Files folder A common value for this directory is C Program Files Programs Menu Directory The full path of the All Users Program Menu folder Common values for this directory are C Documents and Settings All Users Start Menu Programs for Windows 2000 and C Windows NStart Menu Programs for Windows 98 This folder is located under the Windows Start Programs menu Root Directory The top level directory of the local fixed disk or partition with the most available free space The Root Directory is not necessarily the C or the Windows drive A common value for this directory is C V Send to Directory The full path of the SendTo folder Common values for this directory are C Documents and Settings V LogonUser V SendTo for Windows 2000 and C Windows NSendTow for Windows 98 This folder contains the shortcuts that appear in the SendTo menu To access the Send To menu right click a file in Windows Explorer Start Menu Directory The full path of the All Users Start Menu folder Common values for this directory are C Documents and Settings All Users M Start Menu for Windows 2000 and C Windows Start Menu for Windows 98 This folder contains the short
283. lue The value constant name or valid C expression you want to associate with the On label OFF Value The value constant name or valid C expression you want to associate with the Off label Create Ring A ring control shows the user an option list A ring control displays only one item at a time from its list of options When you select Create Ring the Create Ring Control dialog box appears The following items appear in the Create Ring Control dialog box e Control Label The label that appears above the control on the function panel e Parameter Position The location of the control value in the function parameter list For a control in a common control function panel Parameter Position specifies the control value in the parameter lists of all function panels in a Function Panel window The first position is 1 For a control on a function panel Parameter Position specifies the control value in the parameter list after the controls in the common control function panel The first position after the controls in the common control function panel is 1 If there is no common control function panel the first position is 1 e Data Type The data type of the values in the ring control National Instruments Corporation 8 7 LabWindows CVI User Manual Chapter 8 Function Panel Editor Default Value The default for the ring control The default must be one of the labels specified in the Edit Label Value Pairs dialog
284. ly used for Set GetAttribute functions This tag applies only to the function immediately following the tag The parameter type cannot be of an enum type LabWindows CVI User Manual 4 34 ni com Chapter 4 Source and Interactive Execution Windows Tag Description XCHG s1 s2 Replaces string s1 with s2 in function panel titles XCEG stops any replacements For example if you have a function with a name PrefixVXIPnPCfg the generated title for this function is V XIPn PCfg because of the word splitting mechanism You can correct problems like this by using the XCHG tag For example place the following XCHG tag in front of the function in your header file XCHG V XIPn PCfg VXI PnP Configuration Your function panel title will then be VXI PnP Configuration This tag applies only to the function immediately following the tag PXCH s1 s2 Replaces string s1 with s2 in function panel controls PXCH stops any replacements BINB type OffVal OnVal defVal Specifies what data type to associate with a binary switch control This tag also specifies labels for both values and index of the default value This tag is valid until it is overridden by another or no data type You cannot use this tag for an enum type Example use BINB boolean Off On 1 causes every Boolean parameter to generate a binary switch with labels Of f and On with a default value of On Note NI recommend
285. makes it easier to access header files Use the User Interface command to add uir files to your project You can include uir files in your project to make it easier to access to the files Use the Instrument command to add instrument drivers to your project Instrument drivers that LabWindows CVI loads through the project remain in memory while the project is open Use the All Files command to add any file to your project View Menu for the Workspace Window This section explains how to use the commands in the Workspace window View menu View Project Tree Use this command to display the Project Tree The Project Tree contains all of the project files in the currently loaded workspace View Library Tree Use this command to display the Library Tree You can access LabWindows CVI library function panels and function panels of loaded instrument drivers through the Library Tree National Instruments Corporation 2 9 LabWindows CVI User Manual Chapter 2 Workspace Window View Toolbar Use this command to toggle between viewing and not viewing the Workspace window toolbar View Window Confinement Region Use this command to display the Window Confinement Region The Window Confinement Region contains open Source windows User Interface Editor windows and Function Tree Editor windows View Columns Use this command to display status date and time and size columns for files in the Project Tree The following icon
286. mand you select and the window that is active the Source Code Control commands apply to either the list of files you select or the file that is in the active window e Get Latest Version Get the latest version of files from the source code control project e Get Latest Versions of All Get the latest version of all files e Check Out Check out files from the source code control project e Check In Check files into the source code control project LabWindows CVI User Manual 2 52 ni com Chapter 2 Workspace Window e Undo Check Out Undo check out actions you previously performed on files e Add to Source Control A dd files to the source code control project e Remove From Source Control Remove files from the source code control project Show History View the source code control history for a file Show Differences View the differences between a file on disk and the latest version of the file in the source code control system e Properties View the source code control properties and status of a file e Refresh Status Have LabWindows CVI update the source code control status of files If you use the source code control system GUI to change the status of files in your source code control system LabWindows CVI might not know about these changes until you select Refresh Status Clear Source Code Control Error Window Clear the contents of the Source Code Control Error window e Source Code Control Launch the
287. me way as the Help menu for the Workspace window For more information about these commands refer to the Help Menu for the Workspace Window section of Chapter 2 Workspace Window Creating a Function Panel Window In this example you create a function panel without writing any code The example panel controls an oscilloscope with two channels and configures the vertical sensitivity coupling and invert setting of the oscilloscope Complete the following steps to create a new instrument and panel Select File New Function Tree fp Select Create Instrument Enter Function Panel Examples as the Name and panel as the Prefix Click OK Select Create Function Panel Window Enter Configure as the Name and config as the Function Name Click OK a UC odo p LE Double click the Configure node in the function tree A new Function Panel window that contains a single function panel appears on the screen Notice that the code name of the function appears in the generated code window preceded by the prefix LabWindows CVI User Manual 8 14 ni com Chapter 8 Function Panel Editor 7 Select Create Binary and complete the Create Binary Control dialog box except the Default Value as shown in the following figure Create Binary Control 8 Click the On Off Settings button and complete the Edit On Off Settings dialog box as shown in the following figure Click OK in both dialog boxes and position the control on the panel 9 In
288. minate a program that suspended because of a run time error select Run Terminate Execution or use the default shortcut key lt Ctrl F12 gt while a LabWindows CVI environment window is active Run Go to Cursor When the program is in a breakpoint state you can move the keyboard cursor to a line in the program and select Run Go to Cursor Program execution then continues until it reaches that line where it enters another breakpoint state LabWindows CVI User Manual 4 24 ni com Chapter 4 Source and Interactive Execution Windows Run Set Next Statement Use the Set Next Statement command to change the next statement to execute while you are debugging This command is useful if you want to skip over code you know is going to fail or if you executed code that failed and you want to go back and investigate that section To use this command move the cursor to the statement you want to execute and select Run Set Next Statement A red outline appears surrounding the statement in the source code If you try moving from inside one function to another function or from one block or scope to another block or scope LabWindows CVI shows a warning dialog box You can choose to continue or remain in the same position Run Toggle Breakpoint The Toggle Breakpoint command toggles the state of the breakpoint on the selected lines Run View Variable Value View Variable Value is a convenient way to view the contents of arrays structures and g
289. mmand for comparing two source files to detect any differences The Diff command has a submenu that you can use to perform the following actions e Use Diff With to select another open source file and compare it against the current source file e After you select the two files to compare use Synchronize at Top to display both files starting at the top e Select Find Next Difference to display the next point where a difference exists in the files Highlight a section from one of the files and select Synchronize Selections from that window to find a matching section in the other file e Use Match Criteria to establish the number of lines that must match to mark the end of differing sections in a file e Select Ignore White Space to compare files while ignoring spaces tabs or other text control characters Use Recompare Ignoring White Space once a difference has been found to determine if the only difference in the selections involves white space characters LabWindows CVI User Manual 4 10 ni com Chapter 4 Source and Interactive Execution Windows Edit Go to Definition When you place the text cursor on a C identifier and select Go to Definition LabWindows CVI highlights the definition of the identifier If the definition is not available for example a LabWindows CVI library function definition LabWindows CVI highlights the declaration of the identifier Edit Go to Next Reference When you place the text cursor on a C
290. mplete the following steps to copy the help text without copying the control l 2 3 Select Options Edit Function Panel Select Create Global Variable Complete the Create Global Variable Control dialog box as follows Type Error in Control Label and iberr in Global Variable Name Leave all other items at their default settings Click OK Select the Status control Select Edit Control Help or right click the control and select Control Help LabWindows CVI User Manual 9 8 ni com Chapter 9 Adding Help to Instrument Drivers 6 Select all the text in the dialog box 7 Select Edit Copy 8 Select File Close 9 Select the Error control 10 Select Edit Control Help or right click the control and select Control Help 11 Select Edit Paste The help appears in the window 12 Modify the text so it reads as follows This control displays the value of the GPIB global error variable The control displays the value of the error only when the Status control is non zero Errors 0 Success non zero See the Status control on any GPIB Library function panel In these examples you have learned to copy or move text from one control to another Use the same methods to copy and move help text between various locations For example use these methods to copy and move panel instrument window and control help within an instrument driver or across instrument drivers National Instruments Corporation 9 9 LabWi
291. n access function help for each function panel In the old style you can access the Function Panel window help which describes all the functions contained in that Function Panel window National Instruments recommends that you use the new help style for all help for instrument drivers that you create in LabWindows CVI Most of the discussion in this chapter assumes you are using the new style help National Instruments Corporation 9 1 LabWindows CVI User Manual Chapter 9 Adding Help to Instrument Drivers Help Options The user of an instrument driver can view the help listed in the following table Type of Help Location of Help Instrument help Access instrument help by right clicking an instrument in the Instruments folder and selecting Instrument Help Function class help Access class help by right clicking a class and selecting Class Help Function help New style help only Access function help by selecting Help Function in the function panel Function Panel window help Access help through a dialog box that appears when you select an instrument from the Instrument menu This help is directly editable only in old style help In the new style help it is generated from the function help for each function in the window Control help Select Help Control in the function panel to view help for the individual controls on the function panel Editing Help There are four t
292. n existing control with Edit Control When you select Edit Control you see the same series of dialog boxes you use to create the control Refer to the Create Menu for the Function Panel Editor section for more information about controls Edit Change Control Type Use this command to change the type of a control When you select Change Control Type a dialog box appears that lists the available control types Select a control type from the dialog box When you select a new control type you see the same series of dialog boxes that you use to create the control If you change a control type from slide to ring or vice versa the new control type retains the option list associated with the old control National Instruments Corporation 8 8 LabWindows CVI User Manual Chapter 8 Function Panel Editor Edit Customize Controls Refer to the Tools Menu for the Function Tree Editor section of Chapter 7 Function Tree Editor for information about this command Edit Edit Function Use this command to modify an existing function panel Selecting this command opens the Edit Function Panel dialog box in which you can modify the function name and qualifier You also can specify the function position if you have multiple function panels and whether or not to disable the function Edit Control Coordinates Use the Control Coordinates command to view and set the top and left coordinates and width of the controls on the panel You can use th
293. n in the driver Chapter 3 Programming Guidelines for Instrument Drivers of the LabWindows CVI Instrument Driver Developers Guide contains guidelines and suggestions for documenting your instrument driver National Instruments Corporation 5 15 LabWindows CVI User Manual Using Function Panels A function panel is a graphical representation of the functions in LabWindows CVI libraries and instrument drivers The controls on the function panels represent parameters Some controls provide dialog boxes to help you select input for parameters These controls have a button next to them You can use function panels to help generate and test function calls within LabWindows CVI A function panel generates one or more function calls with the function parameters you specify in the function panel LabWindows CVI can execute these functions immediately in the Interactive Execution window When you execute a function panel LabWindows CVI copies the generated code to the Interactive Execution window and executes it The first time you execute a function panel for an instrument driver or library LabWindows CVI creates and executes a include statement for the header file associated with the instrument driver or library Instead of executing the function call you can choose to copy the function call code to a Source window You can later recall the function panel from the Source window by selecting View Recall Function Panel Normally you use f
294. n the user interface panel a preview of the control appearance and the name that will appear in the Create menu Select the control you want to add as a custom control and click OK Delete Removes the selected control from the Create menu Edit Opens the Edit Control dialog box Edit Name Opens a dialog box in which you can change the name of the control Code Opens a dialog box in which you can associate the following files with the control Program File A fp file source file or object file that implements additional functionality for the control When you select Code Generate All Code or Generate Custom Control Code LabWindows CVI automatically adds the program file to the project Header File The include file that accompanies the program When you select Code Generate All Code or Generate Custom Control Code LabWindows CVI includes the header file at the top of the source file Template File for main Contains code that LabWindows CVI imports into the main function when you select Code Generate All Code or Generate Custom Control Code LabWindows CVI inserts the code following the call to LoadPanel Operate in UI Editor In operate mode LabWindows CVI automatically generates a DLL which allows the control to behave as it would in a complete application You can interact with the control in operate mode Move Up Moves the selected control up one line Move Down Moves the selected control
295. n void functions option 2 67 Reset Indices command 11 6 displaying single dimensional arrays 11 2 specifying index for string array 11 3 specifying plane for multi dimensional arrays 11 2 Reset Indices dialog box 11 2 Resolve All Excluded Lines command Edit menu 4 9 Retrace Pointer Chain command 10 2 10 7 Return Value command 8 9 return value control parameters specifying 6 3 return values requiring for non void functions 2 67 Revert command 9 5 Revert to Default Panel Size command 8 13 LabWindows CVI User Manual Right Edges option Alignment command 3 15 Distribution command 3 16 Ring command 8 7 Run Function Panel command 6 6 Run Interactive Statements command 4 24 Run menu Source and Interactive Execution windows Add Watch Expression command 4 25 Evaluate Data Tooltip command 4 25 Go to Cursor command 4 24 Run Interactive Statements command 4 24 Set Next Statement command 4 25 Toggle Breakpoint command 4 25 View Variable Value command 4 25 User Interface Editor 3 22 Variables and Watch windows 10 12 Workspace window Break On command 2 41 Breakpoints command 2 41 Command Line command 2 42 Continue command 2 40 Debug command 2 40 Down Call Stack command 2 42 Execute command 2 42 Finish Function command 2 40 Loaded Modules command 2 43 Specify External Process command 2 42 Stack Trace command 2 41 Step Into command 2 40 Step Over command 2 40 Terminate Execution command 2 4
296. nalModule function e CVILibraries Provides information that LoadExternalModule requires when your run time modules reference symbols in any of the following LabWindows CVI libraries User Interface Library RS 232Library DDE Support Library TCP Support Library Formatting and I O Library Utility Library If you use one of these libraries include in your external compiler project the source file displayed in this indicator This option does not apply if you use LoadExternalModule to load only DLLs LabWindows CVI User Manual 2 24 ni com Chapter 2 Workspace Window e ANSI C Library Provides information that LoadExternalModule requires when your run time modules reference symbols in the ANSI C Library Include in your external compiler project the source file displayed in this indicator This does not apply if you use LoadExternalModule to load only DLLs e Other Symbols Creates an object file for you to link into your executable or DLL Select this option if your run time modules refer to symbols other than those covered by the previous two options Such symbols include functions or variables that you define globally in your executable or DLL and to which your object or static library run time modules expect to link Header File Insert the name of an include file that contains complete declarations of all the symbols necessary to resolve references from run time modules Ob
297. name and extension without a directory path such as myd11 d11 To set a watch expression for a DLL it is easiest to first set a breakpoint in a DLL source file Once the DLL has been loaded and program execution suspends select the DLL name from the menu ring e File Contains the name of the file that defines the variable or expression variables if they are global to a file or local to a function e Function Contains the name of the function that defines the variable or expression variables if they are local to a function e Update display continuously Causes the variable or expression to be evaluated and updated in the Watch window between each statement in your program while the program is running e Break when value changes Suspends the program when the value of the variable or expression changes e Replace Replaces the previous attributes of the current variable or expression of the same name in the Watch window with the current attributes of the dialog box Replace is available only when you invoke the dialog box from the Watch window e Add Inserts the variable or expression into the Watch window e Cancel Aborts the operation National Instruments Corporation 10 5 LabWindows CVI User Manual Chapter 10 Variables and Watch Windows You can add watch expressions to the Watch window directly from a Source window or a function panel To add a watch expression from a Source window highlight the expression a
298. names in the function tree This option is global to LabWindows CVI so enabling it in one Function Tree Editor window enables it for all Function Tree Editor windows This command is dimmed for function trees that have not yet been saved When you enable this option LabWindows CVI updates the instrument driver c h and sub files to reflect changes you make to function names or the instrument prefix in the Function Tree Editor window or Function Panel Editor window When you change a function name LabWindows CVI prompts you for permission to update your instrument driver to reflect the new name When you change the instrument prefix LabWindows CVI prompts you for permission to update your instrument driver to reflect the new prefix Tools Customize Function Panels Use the Customize Function Panels option to provide input selections for controls in function panels An example of input selections is the Select Attribute Constant dialog box in Get Set Attribute function panels You can add similar dialog boxes for your function panels For example if one of your parameters requires the device number of a DAQ device you can provide a customized dialog box with selections to help the user select input for the parameter To include input selections for parameters you must associate a control in a function panel to a callback function in a DLL You can make these associations in the Customize Function Panels and Customize Controls dialog
299. nce but that are referenced by modules you load at run time by calling LoadExternalModule If you force a Windows SDK import library into your project your DLL might not load The Windows SDK import libraries contain functions that are not present on all versions of Windows If the DLL on your system does not export all the functions in the import library your DLL will not load Instead of forcing an import library into your DLL you can force only the functions you need into the DLL To force specific functions into your DLL create a table of function pointers and add the functions to the table For example to force references to CreateWindow and GetFreeDiskSpace you can add the following code to a source file in your project void ReferenceFunctionsTable CreateWindow GetDiskFreeSpace Exports The following options assist you in exporting symbols Export What Indicates the current method for determining which symbols in the DLL to export to the users of the DLL Use the Change button to change your choice Change Select the method to use for determining which symbols in the DLL to export to the users of the DLL You have the following choices Include File Symbols You must name one or more include files that declare symbols defined globally in the DLL The DLL exports the symbols you declare in the include files You can select from a list of include files in the project LabWindows CVI User Manual
300. nction panels that you select in a new window If you do not select this option each function panel you select replaces the current function panel Options Go to Source After Inserting Code Enable this command to move the cursor to the source file after you insert a function from a function panel Options Edit Function Panel The Edit Function Panel command puts the Function Panel window in edit mode iyi Note You cannot edit the function panels of the LabWindows CVI libraries or user libraries National Instruments Corporation 6 15 LabWindows CVI User Manual Chapter 6 Using Function Panels Help Menu for Function Panel Windows Use the commands in the Help menu to access information about LabWindows CVI These commands work in the same way as the Help menu commands for the Workspace window Refer to the Help Menu for the Workspace Window section of Chapter 2 Workspace Window for more information Help Control The Control command displays help about the currently highlighted control To select control help with the mouse right click the control you want help about Help Function The Function command displays help about the function that the current function panel generates To select function help with the mouse right click the function panel Help Online Function Help The Online Function Help command opens the LabWindows CVI Help to the help topic for the current function panel LabWindows CVI User Manua
301. nd 6 16 Function Help command 8 5 Function Names option Select Function Panel dialog box 2 45 Function Panel command 8 10 function panel controls binary control parameter 6 4 common control function panel 6 5 global control 6 5 input control parameter 6 4 numeric control parameter 6 4 output control parameter 6 5 overriding with Toggle Control Style command 6 15 purpose and use 6 3 restoring default value 6 14 return value control parameter 6 3 slide control parameter 6 4 viewing arrays structures and variables 6 5 LabWindows CVI User Manual Index Function Panel Editor Create menu 8 5 Edit menu 8 2 examples changing control type 8 18 creating Function Panel window 8 14 cutting and pasting controls 8 20 File menu 8 2 Help menu 8 14 Instrument menu 8 11 invoking from function panel 8 2 from Function Tree Editor 8 1 Options menu 8 12 Tools menu 8 11 View menu 8 11 Window menu 8 12 Function Panel Editor windows adding help example 9 7 purpose and use 1 3 Function Panel Help Editor window 1 3 Function Panel History command 4 17 6 12 Function Panel Tree command 4 18 Function Panel window Code menu 6 6 File menu 6 5 Help menu 6 16 Instrument menu 6 13 Library menu 6 13 Options menu 6 14 Tools menu 6 14 View menu 6 11 Window menu 6 14 Function Panel Window command 7 5 Function Panel windows help old style 9 4 purpose and use 1 3 function panels See also function p
302. nd Pasting Help Text In this exercise you will copy text between function panels controls and instruments The clipboard retains its contents as you move between controls function panels and even instruments Help text also stays with a control or function panel that is cut copied or pasted Complete the following steps to copy the help between controls on different panels 1 SO eor Et VON Create a new Function Panel window for help fp Enter Function 2 in the Name box and fun2 in the Function Name box The Function 1 function panel from the previous example should be on the screen in Edit mode Double click Function 1 in the Function Tree Editor Select Create Global Variable Enter Status in Control Label and ibsta in the Global Variable Name Leave all other items at their default settings Click OK Add the following help to the global control This control displays the status of GPIB function calls Errors 0 Success non zero See the Status control on any GPIB Library function panel Select File Save FP file and then File Close to save the text and exit the Help Editor Select the Status control Select Edit Copy Controls Press Ctrl Page Down to display the Function 2 function panel Select Edit Paste The Status control appears on the function panel Select Options Operate Function Panel and view the help Notice that the help stays with a control when you copy that control Co
303. nd select Run Add Watch Expression To add a watch expression from a function panel highlight the expression and select Code Add Watch Expression You also can drop text from the Source Interactive Execution or Variables window into the Watch window to add a watch expression When you drop text into the Watch window the Add Edit Watch Expression dialog box appears If you drop code onto the lower half of the Watch window LabWindows CVI sets the Scope of the variable or expression as Local If you drop code onto the upper half of the Watch window LabWindows CVI sets the Scope of the variable or expression as Global to project DLL Edit Delete Watch Expression Delete Watch Expression removes the selected watch variable expression from the Watch window This command is not available in the Variables window View Menu for the Variables and Watch Windows This section contains a detailed description of the View menu for the Variables and Watch windows To use one of these commands select a particular variable or expression by clicking it or using the up and down arrow keys and then accessing the command from the View menu View Expand Variable The Variables and Watch windows can display arrays strings and structures in closed form or expanded form In closed form you see only the name and address of the aggregate variable next to the triangle icon In expanded form the icon changes to a circle and you see the individual elem
304. nd void expecting 7 236 5 Missing prototype 236 13 Wamng Local displayStr has not been inibakzed Output Window Region Library Tree E National Instruments Corporation 2 1 LabWindows CVI User Manual Chapter 2 Workspace Window e Project Tree Contains the list of files in each project included in your workspace A bold project name indicates that project is the active project The active project determines which project you can build debug modify and so on An asterisk next to the project name indicates that the project has been modified and needs to be saved To open and edit files you can double click the filename For p files double click the filename to open the Select Function Panel dialog box double click the image to open the p in the Function Tree Editor For files not native to LabWindows CVI double click the filename to open the file in the associated editor double click the image to attempt to open the file in a LabWindows CVI Source window If you attach the project to a source code control system a box appears next to the icon for each file in the Project Tree An empty box means that the file is under the source code control A box with a red checkmark means that you currently have the file checked out A box with a blue checkmark means that someone else has the file checked out You also can view additional columns of information in the Project Tree The columns include status
305. ndows CVI User Manual Variables and Watch Windows Variables Windows Use the Variables window to inspect and modify the values of program variables You can open this window when a program is suspended at a breakpoint or at any other time The Variables window shows the names and types of all variables including arrays and strings The current values of numeric scalars values and contents of pointers and string contents appear in the Variables window 3 Note When strings appear in ASCII format there is no visual distinction between a space ASCII 32 and a NUL byte ASCII 0 To see the difference select Format Decimal to view the string in decimal format To view the Variables window select Window Variables in the active LabWindows CVI window While the program is suspended you can open the Variables window for the currently highlighted variable from a Source or function panel by selecting Run View Variable Value in the Source window or Code View Variable Value in the function panel The Variables window shows all currently defined variables in LabWindows CVI LabWindows CVI updates variables in this window at each breakpoint The vertical bars separate the window into three scrollable fields name value and variable type You can change the width of the fields by dragging the vertical bars with the mouse The window also is divided into two horizontal sections the Global subwindow and the function subwindow The Globa
306. ndows CVI User Manual 5 8 ni com Chapter 5 Using Instrument Drivers When you define a function panel control with an intrinsic C data type variables the user declares in the control through the Declare Variable command appear with that data type in the dialog box You must define the parameter with the same data type when you prototype the function in the instrument driver include file Meta Data Types The meta data types are useful for parameters through which users can pass arguments of more than one data type The meta data types are Numeric Array Any Array Any Type and Var Args Each of these data types defines a set of multiple allowable data types When the user executes the Declare Variable command on a control defined with a meta data type the user can select from a list of the allowable data types Numeric Array Numeric Array specifies a parameter that can be any of the intrinsic C numeric array data types You must define the parameter as void in the function prototype An example of a Numeric Array data type is in the P1otx function of the User Interface Library The Plotx function plots the values of any intrinsic C numeric array data type to a graph control on a user interface panel On the function panel the X Array control is of type Numeric Array X Array is defined as void in the following function prototype int PlotX int panel int control void xArray int numPoints int xDType int plotStyle int pointStyle i
307. next statement Run Terminate Execution Use the Terminate Execution command to terminate a program that is in a breakpoint state LabWindows CVI User Manual 2 40 ni com Chapter 2 Workspace Window Run Break On Use this command to view a submenu in which you can set additional break conditions for programs First Statement This option specifies that LabWindows CVI enter a breakpoint state on the first executable statement in your source code Library Errors This option specifies that a breakpoint occurs when any function call to a LabWindows CVI library results in an error First Chance Exceptions This option determines what LabWindows CVI does when your program causes an exception If you enable this option LabWindows CVI suspends your program before it can catch and handle the exception In general disable this option if you are debugging code that generates exceptions that your code catches and handles If LabWindows CVI suspends your program before your program catches the exception you can use the Run Continue command to resume execution of your program Run Breakpoints The Breakpoints command opens the Breakpoints dialog box which contains a list of the breakpoints in the workspace Also you can open this dialog box by right clicking the line icons column in a Source window and selecting Breakpoints from the context menu The Breakpoints dialog box contains the following options Add Edit Item Edits a sing
308. ng hy Note If the source file is in the project and you do not want to debug it use Enable O Option in the Workspace window rather than the Create Object File command To select Enable O Option right click the source file in the Project Tree and select Enable O Option The Create Object File command gives you the option of creating an object file for both of the compatible external compilers rather than just for the current compatible compiler If you choose to create an object file for both compilers LabWindows CVI creates the files in subdirectories named msvc and borland LabWindows CVI creates a copy of the object file for the current compatible compiler in the directory of the source file You can compile your file using a third party compiler that LabWindows CVI supports These compiled files are smaller and execute faster than object files LabWindows CVI creates You can use the Create Object File command if you do not have access to another compiler Options Preprocess Source File Use the Preprocess Source File command to open a new source window that contains preprocessed output LabWindows CVI replaces simple macros expands function macros includes header files and resolves conditional compilation Help Menu for the Source and Interactive Execution Windows The Help menu for the Source and Interactive Execution windows works in the same way as the Help menu for the Workspace window For more information
309. ng multiple lines of text in the Source window Wrap Continues searching from the beginning of the file once the search reaches the end of the file Button Bar Enables a dialog box for interactive searching Find Prev and Find Next operate the same as they do in the main Find dialog box Stop terminates the search LabWindows CVI User Manual 4 12 ni com Chapter 4 Source and Interactive Execution Windows leaving the keyboard cursor at the current position Return terminates the search leaving the keyboard cursor at the original position where you began the search For multiple file searches Next File moves the search to the next file Selecting the Button Bar option disables the Show All Matches option Show AII Matches Opens the Find Results window with a list of matches The Find Results window lists the filename and line number of the matched text Double clicking a match in the Find Results window opens the file and highlights the matched text If you have default shortcut keys enabled press F4 to cycle through the matches e Find Prev Searches backward for the previous match e Find Next Searches forward for the next match e Cancel Terminates the search and closes the Find dialog box Regular Expression Characters Purpose Character Description Example Wildcard matching Match 1 character a t matches act and apt period but not abort Matching zero or d Match 0 or more 0 1 matches 1 01
310. ng the number of items that do not have constant names Options Save in Text Format H 5 The Save in Text Format command saves the contents of the User Interface Editor in an ASCII text format A dialog box appears prompting you to enter the pathname under which to save the text file The extension tui is recommended for such files Do not use the uir extension The ASCII text file contains descriptions of all the objects in the User Interface Editor You can call LoadPanel and LoadPanelEx on tui files Note If you have a large number of objects in your User Interface Editor loading a tui file can take significantly longer than loading a comparable uir file Note The tui file format in LabWindows CVI 5 0 and later differs from previous versions If you use tui files to find differences between versions of your uir files and you created tui files in previous versions of LabWindows CVI create new baseline tui files for your uir files Options Load from Text Format The Load from Text Format command loads into a new User Interface Editor the objects defined in a file saved using the Save in Text Format command A dialog box appears prompting you for the pathname of the file LabWindows CVI User Manual 3 26 ni com Chapter 3 User Interface Editor Help Menu for the User Interface Editor The Help menu for the User Interface Editor works in the same way as the Help menu for the Workspace window For more inform
311. nment ShowExitConfirmation If you set the key to TRUE LabWindows CVI displays the message box If you set the key to FALSE LabWindows CVI exits without displaying the message box Option Descriptions When configuring LabWindows CVI through the Registry you can make changes to the directory options date and time options timer options and font options Directory Options The directory options available in LabWindows CVI are the cvidir option and the tmpdir option National Instruments Corporation A 3 LabWindows CVI User Manual Appendix A Configuring LabWindows CVI cvidir The cvidir option specifies the directory that contains the following subdirectories You should set the cvidir option only if the subdirectories that LabWindows CVI requires shown in the following table are not in the directory that contains the LabWindows CVI executable Name of Directory Contents bin Resource files cvi rsc cvimsgs txt NI function panels 1 p files NI libraries obj and 1ib files fonts Font description files include C header files for NI libraries Sdk Windows SDK If you do not specify a directory LabWindows CVI assumes that the directory that contains the executable file cvi exe or cvi also contains the directories in the preceding table tmpdir tmpdir sets the location for temporary files If you do not specify a directory LabWindows CVI uses the
312. ns Help Style oe eH eerte eee RO 7 9 Options Transfer Window Help to Function Help esses 7 10 Options Generate Function Prototypes scescccssceseeessecenceeseeceaeeeseeeeeeeeaees 7 10 Options Generate Documentation eese enne 7 10 Options Generate Windows Help eeeeeeeeeeeeeeeeneneennen 7 10 Options Generate ODL File sees enne 7 10 Options Generate DEF File essssseseseeseeeeneeenennen rennen eee 7 10 Options Create DLL Project 7 10 National Instruments Corporation XV LabWindows CVI User Manual Contents Options IVI V XIplug amp play Style eese 7 11 Options Save in XML Format sese 7 12 Options Load from XML Format sese 7 12 Help Menu for the Function Tree Editor sese 7 13 Creating a Function Tree with Multiple Classes see 7 13 Moving and Copying Function Panels eese 7 14 Using Existing Function Panels in a New Instrument Driver 7 14 Editing Items in the Function Tree sese 7 15 Chapter 8 Function Panel Editor Invoking the Function Panel Editor eese 8 1 Invoking from the Function Tree Editor e 8 1 Invoking from a Function Panel eese 8 2 File Menu for the Function Panel
313. nservative This mode flags only variables that do not have values assigned to them A Aggressive This mode flags all variables that may or may not have values assigned to them Detect signed unsigned pointer mismatches This option generates a compiler warning for pointer assignments in which the left side and right side are not both signed or unsigned expressions According to the ANSI C standard these assignments are errors because they involve incompatible types In practice however such assignments cause no problems The LabWindows CVI compiler checks assignment statements and function call arguments to ensure that the 1value and rvalue expressions have compatible types If you enable this option LabWindows CVI generates compile warnings when the lvalue and rvalue expressions are both pointers to integers but one points to a signed integer and the other points to an unsigned integer For example the LabWindows CVI compiler generates a signed type mismatch between pointer to char and pointer to unsigned char warning on the call to MyFunction in the following code example void MyFunction unsigned char x char y my string main LabWindows CVI User Manual 2 66 ni com Chapter 2 Workspace Window MyFunction y e Detect unreachable code This option generates a compiler warning for statements that the compiler cannot reach on execution When you enable this option the LabWindows CVI compiler generates
314. nt lineStyle int pointFreq int color Any Array Any Array specifies a parameter that can be any of the intrinsic C or user defined array data types You must define the parameter as void in the function prototype An example of an Any Array data type is in the memcpy function of the ANSI C Library This function copies a specified number of bytes to a target buffer of any type from a source buffer In the function panel the first parameter is Target Buffer which is of type Any Array Target Buffer is defined as void in the following function prototype void memcpy void const void size t Any Type Any Type specifies a parameter that can be any of the intrinsic C or user defined data types If the parameter is an output parameter you must define it as void in the function prototype If the parameter is an input parameter you must define it as in the function prototype and it must be the last parameter in the function The Value output parameter of the GetCtrlAttribute function in the User Interface Library is an example of the Any Type data type The function obtains the value of a particular attribute for a particular user interface control Different attributes have different data types Users pass the attribute value National Instruments Corporation 5 9 LabWindows CVI User Manual Chapter 5 Using Instrument Drivers parameter by reference and it is therefore a pointer Consequently the attribute value p
315. ntBold configuration option A 6 EditorFontName configuration option A 6 EditorFontSize configuration option A 6 Enable Auto Replace command 7 7 Enable Data ToolTips option Environment command 2 62 Enable Global Ctrl F12 Debug Break Key option 2 62 environment options Bring Debug Output Window to Front whenever Modified 2 62 Copy Standard I O to Debug Output Window 2 62 CVI Environment Sleep Policy 2 62 Enable Data ToolTips 2 62 Enable Global Ctrl F12 Debug Break Key 2 62 Force Loaded Instrument Drivers into Interactive Window 2 62 Force Project Files into Interactive Window 2 62 Hide Windows 2 61 Interactive Window Memory Size 2 62 Lines in Debug Output Window 2 62 Save Changes before Debugging 2 62 Use Console Window for Standard I O when Debugging 2 62 Use Only One Browse Info Window 2 61 Error command 6 12 errors Break On Library Errors option 2 41 build errors 4 21 Display status dialog during build option 2 66 National Instruments Corporation l 11 Index Maximum number of compile errors 2 68 run time error reporting 4 24 Show build error window for warnings option 2 68 Stop on first file with errors option 2 68 Estimate Number of Elements command 10 13 example code B 1 Exclude Function command 6 14 excluding lines of code 4 9 executables creating and distributing See release executables creating and distributing Execute command 2 42 Exit LabWindows CVI command 2 7 Expand V
316. nterface Resource Files contains all the uir files open or in the project Only constants from the currently selected uir file appear in the list at the bottom of the dialog box Click a file to select it Constant Type contains the categories of constant names to display in the list below Constant Type To copy the currently selected constant name into the function panel control click OK Click Cancel to cancel the operation and close the Select UIR Constant dialog box Note If you attempt to use Select UIR Constant on the Panel Handle and Menu Bar Handle parameters that appear on most User Interface Library function panels an error message appears These parameters take the values returned from LoadPanel1 and LoadMenuBar so an attempt to select uir constants fails You can use Select UIR Constant in user defined panels That way the command is available to function panels for user libraries that you build on top of the User Interface Library Code Select Attribute Constant The Select Attribute Constant command replaces the Select UIR Constant command in the Code menu in function panels that set or get attribute values The User Interface Library the VISA Library and IVI instrument drivers have such functions Examples are GetCtrlAttribute SetCtrlAttribute GetPanelAttribute and SetPanelAttribute in the User Interface Library The panels for these functions each contain an Attribute ring control and a corresponding Value input con
317. ntrol dialog box 8 9 Create Release Dynamic Link Library command 2 12 Create Release Executable command 2 12 Create Return Value Control dialog box 8 9 Create Ring Control dialog box 8 7 Create Slide Control dialog box 8 6 Create Static Library command 2 13 Create Edit DAQmx Tasks command Tools menu 2 50 curly braces finding pairs of 4 10 setting location of 4 28 Current Tree command 6 12 custom controls 3 11 customer education B 1 professional services B 1 technical support B 1 Customize Controls command 8 4 Customize Function Panels command 7 7 Cut command Function Tree Editor 7 2 Source and Interactive Execution windows 4 8 User Interface Editor 3 5 Cut Controls command 8 3 CVI Environment Sleep Policy option 2 62 CVI Libraries display External Compiler Support dialog box 2 24 CVI DEBUG macro 2 69 CVI DLL macro 2 69 CVI EXE macro 2 69 CVI LIB macro 2 69 CVI macro 2 69 CVI USE FUNCS FOR VARS macro 2 69 cvidir configuration option A 4 National Instruments Corporation l 7 Index D DAQmx tasks MAX based creating 2 51 editing 2 51 project based creating 2 51 editing 2 51 using 2 52 data tooltips enabling 2 62 data type compatibility for function panel variables 6 10 Data Types command 8 12 data types for instrument drivers browsing 2 54 overview 5 7 predefined intrinsic C data types 5 8 meta data types 5 9 user defined array data types 5 11 creatin
318. o the New Instrument file through the Window menu 8 Select Edit Paste Below C1ass 1 and its associated functions appear in the new tree When you paste a class into a new tree all information associated with the class and the functions of the class is retained Editing Items in the Function Tree In this example you edit the names displayed in the function tree To edit all the function tree items select Edit Edit Node Complete the following steps to change the name of the instrument driver and its prefix 1 Select Function Tree Examples from the function tree you created 2 Select Edit Edit Node The Edit Instrument Node dialog box originally used to create the instrument appears 3 Change the name of the instrument to Tree 2 and the prefix to tree2 Click OK The changes in the instrument driver name appear at the top of the function tree in the Function Tree Editor If you save the file these changes also appear in the Library Tree The changes to the prefix are reflected in the generated code window in each function panel National Instruments Corporation 7 15 LabWindows CVI User Manual Function Panel Editor This chapter describes how to create and modify instrument driver function panels using the Function Panel Editor To create a new function panel you must invoke the Function Panel Editor The following items appear on the function panel The Instrument Name and Function Panel Name appear
319. ociated with the Workspace window Source window and scroll bars disappear from the list box LabWindows CVI automatically assigns colors to these types based on the system colors you set in the Appearance tab in the Windows Display Properties dialog box Toolbars in LabWindows CVI The LabWindows CVI toolbar appears within the Workspace window in Source windows in the Interactive Execution window in function panels and in Function Panel Editor windows Using the toolbar gives you quick access to common commands such as File Open and File Save You can configure the toolbar to meet your needs or choose not to display it at all To find out what a toolbar button does position the mouse cursor over that button and either hold the cursor there for a short period of time or right click the toolbar button to display the name of the toolbar button Items in the toolbar change depending on what windows are open Modifying Your Toolbars To modify a toolbar select Options Toolbar to open the Customize Toolbars dialog box Toolbar contains the windows or combination of windows in which toolbars appear Select a window to modify its toolbar The Available Buttons list contains names and icons of toolbar buttons that do not currently appear in the toolbar The Buttons on Toolbar list contains the names and icons of toolbar buttons that currently appear in the toolbar National Instruments Corporation 2 71 LabWindows CVI User Manual Chapter
320. ol e Data Type The data type of the item entered in the global variable control e Display Format The format in which the global variable control displays values You can display integers longs shorts and chars in decimal hexadecimal octal or ASCII format You can display doubles and floats in either scientific or floating point notation If the data type is char void a meta data type or an array the display format control is not valid e Control Width The width of the control in pixels The minimum allowed is 24 The maximum allowed is 2 048 The default control width is 145 pixels Create Message You can place text anywhere on the panel with a message control The message control serves as an online documentation tool for panels When you select Create Message a dialog box appears Enter the text into the message text control and click OK To enter a new line in the message text control press lt Ctrl Enter gt The text appears on the panel and you can position it like any other control Create Function Panel Use this command to create multiple function panels within one Function Panel window LabWindows CVI User Manual 8 10 ni com Chapter 8 Function Panel Editor Create Common Control Function Panel Use this command to create a common control function panel The n controls on a common control function panel specify the first n parameters of all functions in the Function Panel window View Menu for t
321. ollow Pointer Chain eessssseeeeeeeeeeeee eene 10 7 View Retrace Pointer Chali nenori aea n e RE ANEREN 10 7 View Go to Execution POsition ccccccssscccesssseeceeesssseeeceesessseesceesssseeeeeens 10 8 Views Go to Definitio rnv ec usta eret ve see E RKS 10 8 View Source Code Browser accurria e eene entree enne 10 8 View A tray Display eet tte dedere e a ese as 10 8 View String Display eiii rnit re vtr e ete enne erede Ere neon 10 8 View Memory Display ceceesccssccsscecesrecseeceeeeseeceaeeeaeecseceseeeeaeeeseeeeeeeesaes 10 8 View Graphical Array View sese 10 9 1D ATrayS ater ers tetro m Odette 10 9 2D APA S asa e Sep etee eee RU I ee ned 10 11 Format Menu for Variables and Watch WindowS cccccccccessssecceesesseceeeesenssceeeeeeenes 10 12 Format Decimal Hexadecimal Octal Binary ASCII esses 10 12 Format Floating Point Scientific essere 10 12 PForimat Preferences iie a eee verse Pee TR TEENS ere gea ea da ses 10 12 Run Menu for Variables and Watch Windows eese nene 10 12 Window Menu for Variables and Watch Windows c ccccccssssccccesssseceeecesssseeeeeeeees 10 12 Options Menu for Variables and Watch Windows ese 10 13 Options Variable Size sannir iaie iar rrini ine a 10 13 Optons Interpret As diee pee e E a eas 10 13 LabWindows CVI User Manual xviii ni com Opt
322. ols operate like the tools in the main User Interface Editor The Attributes for Child Panels section of the Edit Panel dialog box has the following options e Frame Style Sets the styles of the frame in the child panel e Frame Thickness Sets the frame thickness in the child panel Title Bar Style Sets the title bar style in the child panel Title Bar Thickness Sets the title bar thickness in the child panel Size Title Bar Height to Font Sets the size of the title bar to match the height of the font in the title bar e Title Style Sets the style of the title in the child panel Edit Control The Control command opens a dialog box in which you can interactively set many attributes of a control You also can double click a control to open this dialog box The dialog box can have various sections including Source Code Connection Control Settings Control Appearance Quick Edit Window and Label Appearance The sections available in the dialog box for a selected control vary slightly depending on the type of control that you are editing The Source Code Connection section of the edit control dialog box contains the following options Constant Name The User Interface Editor appends the constant name to the panel resource ID to form the ID for the control The ID identifies the control in any control specific functions such as GetCtrlVal and SetCtrlAttribute The ID is defined in the h file that LabWindows CVI g
323. on Edit Menu Bar dialog box 3 7 Menu Bar List dialog box 3 6 Menu Bars command 3 6 Menu Callbacks command 3 21 MenuFontBold configuration option A 6 MenuFontName configuration option A 6 MenuFontSize configuration option A 6 Message command 8 10 MessageBoxFontBold configuration option A 7 MessageBoxFontName configuration option A 6 MessageBoxFontSize configuration option A 6 meta data types Any Array 5 9 Any Type 5 9 Numeric Array 5 9 Var Args 5 10 Microsoft Visual Basic generating include file for 4 30 Minimize All command 2 56 Modifier Key Edit Menu Bar dialog box 3 7 Move Backward option Control ZPlane Order command 3 17 Move cursor to end of pasted text option Editor Preferences command 4 28 Move Forward option Control ZPlane Order command 3 17 Move to Back option Control ZPlane Order command 3 17 LabWindows CVI User Manual Move to Front option Control ZPlane Order command 3 17 multi dimensional arrays Array Display window 11 2 illustration 11 2 Reset Indices dialog box 11 2 specifying dimensions 11 2 String Display window 11 3 multi dimensional string array 11 3 Multiple Files option Find command 4 12 Name option Find command 10 4 National Instruments customer education B 1 professional services B 1 system integration services B 1 technical support B 1 worldwide offices B 1 New command 2 5 New Window option Select Function Panel dialog box 2 45 newproje
324. one compatible with Visual C C and the other compatible with Borland C C The two import libraries must be installed in the IVI Lib msc and IVI Lib be subdirectories LabWindows CVI sets this up automatically for you if you enable the Options IVI VXIplug amp play Style command and select Options Create DLL Project in the Function Tree Editor for a p file in the IVI framework directory For more information about distributing IVI instrument drivers refer to the Creating a Distribution National Instruments Corporation 2 33 LabWindows CVI User Manual Chapter 2 Workspace Window Kit for IVI Instrument Drivers section and the LabWindows CVI Instrument Driver Developers Guide e Register Files As ActiveX Servers Enable this option if you distribute any ActiveX servers such as ActiveX controls in your project If you use an ActiveX server in your project you must explicitly include the control in the File Groups list box and enable the Register Files As ActiveX Servers option Enabling Register Files As ActiveX Servers causes LabWindows CVI to attempt to register all the files in the file group regardless of file type as ActiveX servers The installation does not show any warnings or errors for files that failed to successfully register as ActiveX servers If your project itself is an ActiveX server the distribution kit registers the target as an ActiveX server regardless of whether you enable this option The Create Distribution
325. ons Next Tool The Next Tool command cycles the User Interface Editor through its four modes as described in the User Interface Editor Overview section Options Preferences Selecting Options Preferences opens the Editor Preferences dialog box Use the User Interface Editor Preferences section to set options that affect the operation of the User Interface Editor Initial editor background color Determines the initial background color of the User Interface Editor Default Restores the initial background color of the User Interface Editor to the default color Use localized decimal symbol Replaces the traditional decimal symbol used by LabWindows CVI in numeric graph and table controls with the decimal symbol specified in the Regional Settings Properties configuration of your Windows Control Panel Show Editor Grid Lines Displays a grid on user interface panels You can use the grid lines to align and resize controls This option is enabled by default Grid Line Type Specifies the appearance of the grid lines You can select crosses solid lines dots and dotted lines Grid Line Spacing Specifies the amount of space that appears between grid lines The default is 25 Snap to Grid Lines Snaps a control to the nearest grid line as you move the control on the panel or resize the control Snapping to grid lines works only when you move or resize the control within a certain distance of a grid line Use the Preferenc
326. ons based on the data type you specify for the function panel control When you run a function from a function panel National Instruments Corporation 5 7 LabWindows CVI User Manual Chapter 5 Using Instrument Drivers LabWindows CVI verifies that the data type of the value you enter in the control matches the prototype of the function Data types are divided into three classes predefined data types user defined data types and VISA data types Predefined Data Types Predefined data types are available by default in the LabWindows CVI environment The predefined data types consist of intrinsic C data types and meta data types that LabWindows CVI defines Intrinsic C Data Types The intrinsic C data types that LabWindows CVI defines are as follows int long short char unsigned int unsigned long unsigned short unsigned char int long short char unsigned int unsigned long unsigned short unsigned char double float double float char chan f void When you create a control to represent an array of data make the data type an intrinsic C data type that ends with the square brackets Do not select a data type that ends with an asterisk The brackets tell LabWindows CVI that the control represents an array of data not a pointer LabWindows CVI can then perform the appropriate variable declaration and run time checking when the user operates the function panel LabWi
327. op and bottom of all selected controls labels digital displays and legends Code Menu for the User Interface Editor This section explains how to use the commands in the User Interface Editor Code menu Use the commands in the Code menu to use CodeBuilder to generate code automatically based on uir file you are creating or editing Code Set Target File Use the Set Target File command to specify to which file LabWindows CVI generates code Selecting this command opens the Set Target File dialog box By default LabWindows CVI places the generated code in a new window unless a source c file is open Then that source file is the default target file CodeBuilder uses the same target file as the function panel target file except when the function panel target file is the Interactive Execution window National Instruments Corporation 3 17 LabWindows CVI User Manual Chapter 3 User Interface Editor To set a target file select a file from the list in the Set Target File dialog box and then click OK You can select from all open source files or a new window Code Generate Access the CodeBuilder features of LabWindows CVI through the Generate menu item The commands in the Generate menu produce code to the target file based on the uir file The code produced by the Generate menu uses the bracket styles you specify with the Options Bracket Styles command in the Source window The Generate command has a submenu that contains
328. or Instrument Drivers of the LabWindows CVI Instrument Driver Developers Guide LabWindows CVI User Manual 5 14 ni com Chapter 5 Using Instrument Drivers Operating the Driver After you create the c or obj or d11 h and p files you can operate the instrument driver To load the driver right click the Instruments folder in the Library Tree and select Load Instrument Operate every function panel that you have created Then use the panels to generate a sample program to verify operation of the driver Testing the Instrument Driver AN Before you distribute an instrument driver you should fully test it Test it from within the LabWindows CVI interactive program and as a stand alone application A suggested testing sequence for instrument drivers follows Caution Be sure to save copies of the original instrument source files in a separate directory 1 Load the instrument driver and execute all functions from the function panels 2 Verify correct operation of all functions Create and run a sample application program that exercises all the functions in the driver within LabWindows CVI 4 Verify correct operation of the application program Documenting the Driver The final step in creating an instrument driver is to document the driver The doc file describes the purpose of the driver the function tree and function panels The file also contains a function reference list that explains the syntax of each functio
329. or static library If you choose LabVIEW Real Time Support as the Run Time Support in the Target Settings dialog box or if you build a static library the Debug configuration is dimmed hy Note You can set the names of the target executable DLL or library files for each configuration using the Target Settings menu item When you select the Release item in the Configuration submenu source modules execute faster but you cannot set breakpoints or use the Variables window Also you have no protection from run time memory errors such as using bad pointers over indexing arrays passing incorrect array sizes and so on Build Create Debuggable Executable The Create Debuggable Executable menu item appears if you select Build Configuration Debug and Build Target Type Executable Use this menu item to compile and build an executable with debugging information Use the Debugging level in the Build Options dialog box to select the degree of debugging information you want LabWindows CVI to generate for the executable To debug the executable you create with this command select Run Debug in Workspace Source Variables Watch Array Display and String Display windows You can specify the filename of the executable as well as other executable settings by selecting the Target Settings menu item You can set other creation and build options in the Build Options dialog box Build Create Debuggable Dynamic Link Library The Create Debuggabl
330. or the User Interface Editor section of Chapter 3 User Interface Editor for more information File Add Program File to Project The Add Program File to Project command adds the instrument driver program file associated with the p file of the current Function Panel window to the project list LabWindows CVI User Manual 9 4 ni com Chapter 9 Adding Help to Instrument Drivers Edit Menu for the Help Editor Use the commands in the Edit menu to edit the help text in the window Many of these commands work in the same way as the commands in the Edit menu for the Source window Refer to the Edit Menu for the Source and Interactive Execution Windows section of Chapter 4 Source and Interactive Execution Windows for more information Edit Paste Paste inserts the contents of the clipboard into the window at the location of the cursor Edit Delete Delete discards the selected text in the window without copying it to the clipboard Edit Find Find locates a particular text string in the Help Editor Edit Replace Replace replaces particular text in the Help Editor with text you specify Edit Revert Revert returns the most recently saved version of help text to the window Tools Menu for the Help Editor Use the commands in the Tools menu to jump back to the function panel or function tree node that the help text in the window applies to Refer to the Tools Menu for the Workspace Window section of Chapter 2 Wo
331. ormat command 3 26 Save in Text Format command 3 26 text selecting Character Select Mode 4 5 Column Select mode 4 6 Line Select mode 4 6 Threads command 2 43 Tile Windows command 2 56 time option DSTRules A 4 timer option useDefaultTimer A 5 Tip of the Day command 2 73 tmpdir configuration option A 4 Toggle Breakpoint command 4 23 4 25 LabWindows CVI User Manual Toggle Control Style command 6 15 specifying binary control parameter 6 4 specifying numeric control parameter 6 4 specifying slide control parameter 6 4 Toggle Exclusion command 4 3 4 9 Toggle Scroll Bars command 8 13 Toggle Tag command 4 17 tokens Syntax Coloring option 4 29 User Defined Tokens for Coloring command 4 29 Toolbar command 4 16 4 28 6 11 6 14 8 13 toolbars adding and positioning buttons 2 72 adding and positioning separators 2 72 displaying names of buttons or icons 2 71 modifying 2 71 positioning controls 2 72 removing items 2 72 Tools menu Function Panel Editor Generate Source for Function Panel command 8 11 Function Panel window 6 14 Function Tree Editor Customize Function Panels command 7 7 Enable Auto Replace command 7 7 Generate C Wrapper command 7 6 Generate New Source For Function Panel command 7 8 Go to Declaration command 7 8 Go to Definition command 7 8 Help Editor 9 5 Source and Interactive Execution windows Edit Function Panel command 4 27 Edit Function Tree command 4 27 ni
332. ory where LabWindows CVI is installed If LabWindows CVI cannot find the p file you can look for the file using a file dialog box If you find the p file LabWindows CVI prompts you to add the directory to the instrument directories list and prompts you to add the file to the project If an auto loaded p file has no classes or function panels it does not appear in the Instrument menu This is useful for support modules that contain no user callable functions When you select Instrument Unload all auto loaded p files appear in the Unload Instrument dialog box Auto loaded instruments are not unloaded automatically when the dependent instrument is unloaded Edit Find Use the Find command to locate a particular text string in the function panel file You can search for text in node names function names control labels control values item labels in ring slide and binary controls message control text and help text When you search in help text you cannot search in any of the other items at the same time The search begins at the node that is currently selected Ifthe Find command opens the Help Editor and you do not use the button bar you must return to the Function Tree Editor to continue searching throughout the panel The Find command in the Help Editor searches only within the window On the other hand the Find command in the Function Panel Editor continues searching through the entire function panel file N
333. ototype 3 Note Itis best to enable the Require function prototypes option If disabled some of the run time error checking also is disabled e Require return values for non void functions This option generates compile warnings for non void functions except main that do not end with a return statement that returns a value LabWindows CVI reports a run time error when a non void function executes without returning a value National Instruments Corporation 2 67 LabWindows CVI User Manual Chapter 2 Workspace Window For example the following code always produces a compile time warning and it produces a run time error when flag is FALSE int fun void if flag return 0 j j Maximum number of compile errors This option sets an upper limit on the number of compile errors that LabWindows CVI lists in the Build Errors window for each source file Stop on first file with errors This option sets the LabWindows CVI compiler to terminate compilation after it finds one file with errors Using this option you can correct build errors in your project one file at a time Show build error window for warnings This option sets the LabWindows CVI compiler to open the Build Error window when warnings occur even if no errors exist If you deactivate this option warnings can occur without being brought to your attention Generate source code browse information Use this option to view source code browse information
334. ource uir file This section describes the User Interface Editor tells you how to create a GUI interactively and explains procedures for creating and editing panels controls and menu bars When you use the User Interface Editor you create and modify user interface resource uir files To open the User Interface Editor select File New or File Open and select User Interface uir User Interface Editor Overview From the User Interface Editor you can create and edit GUI panels controls and menu bars Panels in the User Interface Editor contain grid lines that you can use to align and resize controls You can use the mouse to edit in four different modes When you click a particular mode tool the mouse cursor changes to reflect the new editing mode LabWindows CVI provides commonly used control configurations as custom controls To access these controls select Create Custom Controls Besides an Ok and Quit button you can use several Toolslib controls such as the file browser path control and the hot ring control Toolslib controls have code associated with them making the controls fully functional without additional code Use the following tools in the User Interface Editor Use the operating tool to operate objects When you are in operate mode M events display in the upper right side of the User Interface Editor under the menu bar These event displays have a built in delay to give you time to see each event
335. ource Code Control submenu 2 52 global control 6 5 Global subwindow Variables window 10 1 Global Variable command 8 10 Go Back command 4 11 Go to Cursor command 4 24 Go to Declaration command 7 8 Go to Definition command 7 8 10 8 Go to Next Reference command 4 11 Goto command 11 4 Graphical Array View 1D arrays figures 10 9 2D arrays figure 10 11 LabWindows CVI User Manual Index Graphical Array View command 10 9 Grid Line Options command 8 13 H header files including in project 2 9 optional in project file list 2 5 previewing 3 15 help control help 9 4 editing 9 2 examples Function Tree Editor 9 6 function class help 9 3 function help new style help only 9 2 function panel window help old style help only 9 4 Generate Windows Help command 7 10 help options 9 2 Help Style command 7 9 instrument help 9 3 new style versus old style help 9 1 professional services B 1 technical support B 1 Transfer Window Help to Function Help command 7 10 Help dialog box for functions or classes 2 46 Help Editor Edit menu 9 5 examples copying and pasting help text 9 8 Function Panel Editor 9 7 File menu 9 4 Help menu 9 6 Tools menu 9 5 Window menu 9 6 Help menu Array and String Display windows 11 6 Function Panel Editor 8 14 Function Panel window LabWindows CVI User Manual Control command 6 16 Function command 6 16 Online Function Help command 6 16 Function Tree Editor
336. ow normally cannot expand variables for which LabWindows CVI does not have user protection information You can use this command to estimate the number of elements for a variable Once you have estimated the number of elements for the variable you can view the elements in the Variables window Options Add Watch Expression This command is not available for the Watch window For more information about this command refer to the Edit Menu for Variables and Watch Windows section National Instruments Corporation 10 13 LabWindows CVI User Manual Chapter 10 Variables and Watch Windows Help Menu for Variables and Watch Windows The commands that appear in the Variables and Watch windows Help menu are the same as the commands for the Help menu in the Workspace window Refer to the Help Menu for the Workspace Window section of Chapter 2 Workspace Window for more information about these commands LabWindows CVI User Manual 10 14 ni com Array and String Display Windows Array Display Window Use the Array Display window to view and edit the contents of a string or a single dimensional or multidimensional array during a breakpoint You can view the Array Display window in the following ways e From the Variables window select View Array Display to open the Array Display window for the currently highlighted array e From the Variables window double click an array to open the Array Display window e Ina Source window se
337. ow you can select the waveform var data type when you create function panel controls for this instrument driver Also users can interactively declare a variable of wave orm var data type from any function panel control that you define as waveform var User Defined Array Data Types Use care when you declare user defined data types that are arrays If you want to define a user defined array data type square brackets must appear at the end of the type name in the Edit Data Type List dialog box The brackets enable the interactive variable declaration and other capabilities of LabWindows CVI function panels For example to declare an array of waveform var type from the preceding example add waveform var in Type of the Edit Data Type List dialog box and include the typedef declaration for waveform var in the driver include file This example is correct because it includes brackets The following examples show incorrect ways to define user defined array data types Assume the following data type definitions are in an instrument driver header file typedef waveform var waveform arr1 typedef waveform var waveform arr2 100 The following data type declarations in the Edit Data Type List dialog box are incorrect waveform var This example is incorrect because it lacks brackets waveform arr1 This example is incorrect because it lacks brackets waveform arr2 This example is incorrect because it lacks brackets VISA Data Types
338. ows CVI contains the Project Tree Library Tree Window Confinement Region and Output Window Region LabWindows CVI User Manual Index A About LabWindows CVI command 2 73 ActiveX Container Support option Create Distribution Kit dialog box 2 31 Add Files to Executable button Target Settings dialog box 2 17 Add Files to Project 2 8 2 9 3 4 Add Missing Includes command 4 21 Add Program File to Project command 6 6 7 1 8 2 9 4 Add to Source Control command 2 53 Add Watch Expression command 4 25 6 5 6 11 10 2 10 5 10 13 Add Edit Tools Menu Item dialog box 2 56 Add Edit Watch Expression dialog box 10 2 Align command 3 16 Alignment command 3 15 All Callbacks command 3 18 All Code command 3 18 3 19 All Files command Add Files to Project dialog box 2 9 Alphabetize option Select Function Panel dialog box 2 45 Always Append Code to End option Preferences command 3 19 ANSI C Library display External Compiler Support dialog box 2 25 Any Array data type 5 9 Any Type data type 5 9 AppFontBold configuration option A 7 AppFontName configuration option A 7 AppFontSize configuration option A 7 Application File option Target Settings dialog box 2 14 Application Icon File option Target Settings dialog box 2 14 Application Title option Target Settings dialog box 2 14 National Instruments Corporation applications creating 1 3 Apply Default Font command 3 11 Arran
339. p to four levels of classes and functions Each time you select a class name the function list updates Click the Up button to return to the previous level When you select a function from a dialog box that function panel appears Refer to Chapter 6 Using Function Panels for more information about function panels National Instruments Corporation 2 45 LabWindows CVI User Manual Chapter 2 Workspace Window To close the dialog box without opening a function panel select Cancel The Select Function Panel dialog box contains a Help button Click the button to get help information about the functions and classes listed in the dialog box Select Help or press F1 to display the Help dialog box for a selected function panel To close the Help dialog box click the Done button press the Enter key or press the lt Esc gt key Library Menu for the Workspace Window This section explains how to use the commands in the Library menu Use the Library menu commands to access function panels for the LabWindows CVI libraries Use library function panels to interactively run library functions and insert these function calls into any open Source window For descriptions of each LabWindows CVI library refer to the LabWindows CVI Help User Libraries You can install your own libraries into the Library menu A user library has the same form as an instrument driver Anything that can be loaded into the Instrument menu can be loaded a
340. pecifies a parameter value depending upon the position of the cross bar of the slide control When you select Create Slide the Create Slide Control dialog box appears The following items appear in the dialog box e Control Label The label that appears above the control on the function panel Parameter Position The location of the control value in the function parameter list For a control in a common control function panel Parameter Position specifies the control value in the parameter lists of all function panels in a Function Panel window The first position is 1 For a control on a function panel Parameter Position specifies the control value in the parameter list after the controls in the common control function panel The first position after the controls in the common control function panel is 1 If there is no common control function panel the first position is 1 e Data Type The data type of the values in the slide control Default Value The default for the slide control The default must be one of the labels specified in the Edit Label Value Pairs dialog box e When you click the Edit Label Value Pairs button the Edit Label Value Pairs dialog box appears Use the dialog box to specify the label and value associated with each cross bar position on the slide control A slide control can have up to 32 labels and associated values Create Binary A binary control operates like a mechanical on off switch A binary
341. pers or store the task definition in a source code control system LabWindows CVI User Manual 2 50 ni com Chapter 2 Workspace Window When you create a new task you must specify the measurement type for the task and the channels to add to the task Once you select these options the DAQ Assistant appears The DAQ Assistant contains help that describes each step of creating and editing your task To view the help click Show Help Project Based Tasks If you select a project based task the DAQ Assistant generates source code to create the specified task programmatically In addition to defining your task in the DAQ Assistant you must specify a task name a task creation function name and a target directory When you exit the DAQ Assistant LabWindows CVI generates source c header h and binary mxb files and adds them to the project The generated source and header files define the task creation function This function contains the code necessary to create and configure the specified task The generated binary mxb file contains a binary description of the task that is used when you edit the task in the DAQ Assistant Once you create a project based task you can use it in your program MAX Based Tasks If you store the task in MAX you can edit it from LabWindows CVI or you can edit it directly in MAX You can access the task in MAX by expanding My System Data Neighborhood NI DAQmx Tasks You also can create a MAX based
342. ptions Bracket Style in a Source window National Instruments Corporation 3 19 LabWindows CVI User Manual Chapter 3 User Interface Editor Generating the main Function hy Note If you previously selected the Code Generate All Code command you do not have to execute this command Use this command only when you want to replace the main function to add or change the panels to be loaded at run time Selecting Code Generate Main Function opens the Generate Main Function dialog box Use this dialog box to select the following options e Choose the panels that the main function loads and displays at run time LabWindows CVI automatically assigns a default panel variable name for each panel in the uir file Select Generate WinMain Instead of main to use WinMain instead of main for your main program In LabWindows CVI you can use either function as your program entry point When linking your application in an external compiler it is easier to use WinMain When you choose Code Generate Main Function LabWindows CVI produces the include statements the variable declarations and the main function and places them in the target file 3 Note Ifthe source file contains only the main function and the include statements and you have not yet created the appropriate callback functions you might get an error when trying to run the project When the main function calls LoadPane1 LabWindows CVI generates a non fatal error for each
343. ptions dialog box the following options apply Executable Filename is left empty After you create a soft front panel executable and add it to the soft front panel file group click on the Select button to specify the soft front panel executable as the Executable Filename The Installation Titles names are set to instrument prefix Instrument Driver Options Save in XML Format The Save in XML Format command saves the current function panel in an XML format When you select this option a dialog box appears prompting you to enter the pathname under which to save the XML file NI recommends using the extension px for these files Do not use the p extension A document type definition DTD for this XML format is available in the bin directory This file is named cviFPX dtd 3 Note You can open the resulting fpx file in any XML editor text editor or in Microsoft Internet Explorer However you must use the Load from XML Format option to import the file back into LabWindows CVI as a function panel B Note Ifyou have a large number of panels in your function panel saving and loading a fpx file can take significantly longer than saving and loading a comparable fp file Options Load from XML Format The Load from XML Format command creates a new Function Panel window containing the function definitions generated by the Save in XML Format command When you select Options Load from XML Format a dialog box appears promptin
344. rates the include statements and the function skeleton for the selected control and places the code in the target file View Control Callback Generate ActiveX Control Driver Launches the ActiveX Controller Wizard This option is available only for ActiveX controls Generate Custom Control Code Generates code for the custom control This option applies only to custom controls with code associated with them This option inserts the code from the template file associated with the custom control and places the code under the call to LoadPanel LabWindows CVI adds the program file associated with the control to the project Control Help Opens the LabWindows CVI Help to the control overview for the selected control LabWindows CVI User Manual 3 2 ni com Chapter 3 User Interface Editor Edit Control Opens the Edit Control dialog box Properties Opens the property sheets for the selected control This option is available only for ActiveX controls CodeBuilder Overview With LabWindows CVI CodeBuilder you can automatically create complete C code that compiles and runs based on a user interface resource uir file you create or edit Use options in the Code menu to produce skeleton code Skeleton code is syntactically and programmatically correct code that compiles and runs before you type a single line of code With the CodeBuilder feature you save the time of typing standard code included in every program eliminate synta
345. ration 4 33 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows Tag Description SLD pl enum Specifies which parameter of a function is a slide control This tag applies only to the function immediately following the tag enum is optional it specifies the enum name enum is the name of a regular enum or an enum created using the ENUM tag The parameter must be of an enum type if you omit the slash The enum must contain at least two values Example use SLD 2 void OpenFile char Pathname enumTxtBin mode Example use SLD 2 enumTxtBin void OpenFile char Pathname unsigned mode RNG pl enum Specifies which parameter of a function is a ring control This tag applies only to the function immediately following the tag enum is optional it specifies the enum name enumis name of a regular enum or an enum created using the ENUM tag The parameter must be of an enum type if you omit the slash The enum must contain at least one value Example use You can omit the RNG tag in this case The ring is created automatically if an enum is found in the place of the parameter type RNG 2 void OpenFile char Pathname enumTxtBin mode Example use RNG 2 enumTxtBin void OpenFile char Pathname unsigned mode ERNG pl Specifies which parameter of a function is an empty ring control This tag is most
346. rce and Interactive Execution Windows You can paste the same information from the clipboard as many times as you like Text remains on the clipboard until you use Cut or Copy again or until another application overwrites the clipboard The New and Open commands do not erase the clipboard To insert text from the clipboard move the cursor to the place you want the text inserted and select Edit Paste Edit Delete The Delete command deletes highlighted text without placing the text on the clipboard Edit Select All The Select All command selects all the text in the Source window and positions the keyboard cursor at the end of the file Edit Clear Window Use the Clear Window command in the Interactive Execution window to clear the contents of the window The Clear Window command also clears any variables declared in the Interactive Execution window 3 Note The Clear Window command is disabled in Source windows Edit Toggle Exclusion You can specify portions of code to exclude during compilation and execution LabWindows CVI ignores excluded code and displays it in a different color than included code The Toggle Exclusion command marks lines in Source windows and the Interactive Execution window as excluded or included code This command acts on single and multiple line selections When you work in the Interactive Execution window lines are excluded automatically Select Edit Toggle Exclusion if you want to include these
347. riable on this line is a child structure in a chain The pointer to its parent structure does not appear Click this icon or select View Retrace Pointer Chain to replace the current structure with its parent You can view Variable window variables in the Graphical Array View String Display Array Display and Memory Display windows Select the text you want to view from the Variables window and drag it into the windows Watch Window The Watch window is similar in nature to the Variables window except that you can select your own set of variables and expressions to view in the Watch window By default LabWindows CVI updates variables and expressions in the Watch window at each breakpoint but you also can set them to update continuously and cause a breakpoint when their values change To open the Watch window select Window Watch in the active LabWindows CVI window Select Watch window variables from the Variables window using the Options Add Watch Expression command The Edit Add Watch Expression command opens the Add Edit Watch Expression dialog box You also can drop text from the Source and Interactive Execution windows into the Watch window to add a watch expression When you drop text into the Watch window the Add Edit Watch Expression dialog box appears If you drop code into the lower half of the Watch window LabWindows CVI sets the Scope of the variable or expression as Local If you drop code into the upper half of the Watc
348. river program file if any from the p file LabWindows CVI then reloads a program file using certain rules Refer to the Precedence Rules for Loading the Instrument Driver Program File section of Chapter 5 Using Instrument Drivers Edit Function Tree LabWindows CVI displays the function tree for the selected p file Done Closes the Edit Instrument dialog box Instrument Search Directories Use the Search Directories command to list the directories that LabWindows CVI searches when loading instruments that reference other instruments The p files of the dependent drivers store the names of the p files of the drivers on which they depend When loading an instrument p file that references other instrument p files LabWindows CVI tries to find LabWindows CVI User Manual 2 44 ni com Chapter 2 Workspace Window the referenced instrument p files and load them LabWindows CVI searches for each p file in the following directories and in the following order 1 The directory of the referencing p file 2 The directories listed in the Instrument Directories dialog box 3 The subdirectories under the cvi70Ntoolslib directory 4 The cvi70 instr directory LabWindows CVI saves the Instrument Directories list from one session to another To find out more about referencing one instrument from another refer to Chapter 7 Function Tree Editor You also use the Instrument Directories list when you load a proj
349. rkspace Window for information about the Customize command Tools Edit Function Tree Edit Function Tree opens the Function Tree Editor and highlights the function tree node that contains the current help text Tools Edit Function Panel Edit Function Panel opens the Function Panel Editor for the function panel that contains the current help text If the help text applies to a particular control on the function panel the Edit Function Panel command selects the control National Instruments Corporation 9 5 LabWindows CVI User Manual Chapter 9 Adding Help to Instrument Drivers Window Menu for the Help Editor The Window menu for the Help Editor works in the same way as the Window menu for the Workspace Window For more information about these commands refer to the Window Menu for the Workspace Window section of Chapter 2 Workspace Window Help Menu for the Help Editor Use the commands in the Help menu to access information about LabWindows CVI These commands work in the same way as the Help menu commands for the Workspace window Refer to the refer to the Help Menu for the Workspace Window section of Chapter 2 Workspace Window for more information Adding Help in the Function Tree Editor In this example you will add instrument and function class help information to a function tree Complete the following steps to create a new instrument and function tree and add help information to the function tree Select Fi
350. rkspace window 2 46 Library option Add Files to Project command 2 9 Library Tree 2 4 Library Tree Flatten Option 6 1 National Instruments Corporation Index Line command 4 17 Line Icons command 4 16 Line Numbers command 4 16 Line Select mode 4 6 Line terminator option Editor Preferences command 4 27 Lines in Debug Output Window option Environment command 2 62 lines of code excluding 4 9 LINK CVI LVRT macro 2 69 _LINK_CVIRTE_ macro 2 69 _LINK_INSTRSUP_ macro 2 69 Load command 2 43 Load from Text Format command 3 26 Load from XML Format command 7 12 8 14 Loaded Modules command 2 43 LoadExternalModule options External Compiler Support dialog box 2 24 Target Settings dialog box Target Type Dynamic Link Library 22 Target Type Executable 2 17 loading unloading instrument drivers instruments without instrument program 4 Load command 2 43 precedence rules 5 3 Unload command 2 44 low level support driver option Create Distribution Kit dialog box 2 30 _M_IX86 macro 2 69 macros browsing 2 54 predefined 2 69 main function generating 3 18 Main Function command 3 20 LabWindows CVI User Manual Index Make O option compatible with CVI 5 0 1 option 2 66 Mark File for Compilation command 4 20 Mark Project for Compilation command 2 13 Maximum number of compile errors option 2 68 maximum stack size setting 2 65 Memory Display command 2 59 Menu Bar Constant Prefix opti
351. roject and Read Only These commands work like the commands in the File menu of the User Interface Editor For more information about these commands refer to the File Menu for the User Interface Editor section of Chapter 3 User Interface Editor File Close The Close command closes the active window If you have modified the contents of the window since the last save LabWindows CVI prompts you to save the file to disk Sy Note The Hide command replaces the Close command in the Interactive Execution window The Hide command visually closes the Interactive Execution window but retains the contents in memory File Print The Print command prints the window contents to a printer or a file National Instruments Corporation 4 7 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows Edit Menu for the Source and Interactive Execution Windows This section explains how to use the commands in a Source or Interactive Execution window Edit menu Use the commands in the Edit menu to edit text in Source windows and the Interactive Execution window Edit Undo and Redo B Note LabWindows CVI disables Undo and Redo until you make an edit LabWindows CVI disables the Cut and Copy commands until you select text and disables Paste until you place text on the clipboard The Undo command reverses your last edit action LabWindows CVI stores editing actions in a stack so that sequential Undo commands reverse a histo
352. rol and a double control If the variable is not known to the compiler LabWindows CVI has no way of knowing the true data type of the variable name Thus you might see the variable name associated with different data types Code Insert Function Call The Insert Function Call command copies the generated code to the selected window at the current location of the keyboard cursor You can copy code to any open Source window or to the Interactive Execution window To determine the destination window select Code Set Target File If the destination window contains selected text LabWindows CVI displays a dialog box that gives you the option of replacing the selected text or inserting the generated code after the selected text Code Set Target File Use the Set Target File command to set the destination file for the Insert Function Call command Set Target File opens a dialog box from which you can select from a new Source window any open Source window or the Interactive Execution window Code View Variable Value Use the View Variable Value command to view the contents of arrays structures and global variables that appear in a function panel Highlight the variable that you want to see and select View Variable Value Depending on the type of the variable the Variables Array Display or String Display window appears with the variable highlighted Code Add Watch Expression Use the Add Watch Expression command to view the value of an e
353. roup e Delete Group Deletes the selected group from your distribution kit e Create Shortcuts Creates shortcuts that contain icons for files in the selected file group The installation program will install the embedded icons for exe files and the default icons for com pif lnk bat cmd hlp txt doc wri xls ppt htm html vsd xml pdf and reg files National Instruments Corporation 2 31 LabWindows CVI User Manual Chapter 2 Workspace Window To create a shortcut to the same file in more that one location you can add the file to a new file group with the same Group Destination and change the shortcut in that new group to be created in the additional location Items created on the Start menu are shortcuts so they do not have file extensions If you create shortcuts for two files of the same base name such as test exe and test hlp two shortcuts with the name test are created and one overwrites the other Make sure that you have different names for each shortcut created in the same location You can create shortcuts in the following locations Start Programs Sub Folder LabWindows CVI creates shortcuts in Start Programs Sub Folder Shortcut Name You can change the Start Programs Sub folder in the Advanced Distribution Kit Options dialog box The default for the subfolder is usually the name of the current LabWindows CVI project Start Programs Top Level LabWindows CVI creates s
354. rt Construct command 4 10 Insert Function Call command 6 11 Insert Include Statements command 4 21 Insert Item option Edit Menu Bar dialog box 3 7 Insert Separator option Edit Menu Bar dialog box 3 7 instrsup dll target settings for DLLs cvi lIvrt dll subset 2 20 libraries supported by 2 19 Utility Library functions contained in 2 19 target settings for executables libraries supported by 2 15 Utility Library functions contained in 2 16 Instrument command adding instrument drivers to project 2 9 Create command Function Tree Editor 7 4 National Instruments Corporation Index instrument driver function panel fp files adding to project list 6 6 creating help 9 2 dummy fp files for support libraries 2 46 purpose and use 6 1 Instrument Driver Only option Run Time Engine Support Create Distribution Kit dialog box 2 29 Run Time Support option Target Settings dialog box Target Type Dynamic Link Library 2 18 Target Type Executable 2 15 instrument drivers B 1 compared with user libraries 2 46 data types overview 5 7 predefined 5 8 user defined 5 10 definition 5 1 documenting 5 15 files for instrument drivers 5 1 forcing source code for loaded driver into Interactive window 2 62 functions building function panels 5 14 building function tree 5 14 defining function parameters 5 7 defining hierarchy of functions 5 7 required functions 5 13 structuring functions 5 6 writing function co
355. rt Separator Inserts a separator below the currently selected menu item e Move Up Moves the currently selected item up one item in the hierarchy e lt lt Change Level Moves the currently selected menu item up one level in the menu hierarchy e Change Level gt gt Moves the currently selected item down one level in the menu hierarchy e Move Down Moves the currently selected item down one item in the menu hierarchy e Cut Deletes the currently selected menu item and copies it to the menu clipboard e Copy Copies the currently selected menu item to the menu clipboard National Instruments Corporation 3 7 LabWindows CVI User Manual Chapter 3 User Interface Editor Paste Inserts the menu item currently on the menu clipboard below the currently selected menu item Paste Child lInserts the item currently on the menu clipboard as the child of the currently selected menu item OK Accepts the current inputs and closes the dialog box Cancel Cancels the operation and removes the dialog box Help Displays the help topic for the Edit Menu Bar dialog box Preview Displays the current state of the menu bar and menus at the top of the dialog box Edit Panel The Panel command opens the Edit Panel dialog box where you can set the following options The Source Code Connection section of the Edit Panel dialog box has the following options Constant Name Sets the resource ID for the panel Pass
356. rts of a word Wrap Specifies to continue searching from the beginning of the window once the end of the window has been reached Regular Expression lf you select this option LabWindows CVI treats certain characters in Find What as regular expression characters instead of literal characters Refer to the Regular Expression Characters section in Chapter 5 Source and Interactive Execution Windows for a list of regular expression characters Name Includes the variable name field of the Variables Watch window in the search Value Includes the value field of the Variables Watch window in the search Type Includes the variable type field of the Variables Watch window in the search Button Bar Enables or disables the built in dialog box for interactive searching Find Prev and Find Next search for the closest previous or next occurrence of the specified text Stop terminates the search leaving the highlight on the current line Return terminates the search moving the highlight to where you initiated the search search shortcut keys remain active even if you disable the Button Bar The search shortcut keys in the Variables and Watch windows are the same as the search shortcut keys in Source windows Use the Options Change Shortcut Keys command in the Source window for a list of the default search shortcut keys Edit Next Scope In the function subwindow Next Scope highlights the function that called the current function In t
357. rules of ANSI C Notification of External Modification If you have externally modified a file since you last loaded or saved it in LabWindows CVI and the file is in a Source window a dialog box appears when you switch back to LabWindows CVI from another Windows application In the dialog box you can update the Source window from the file on disk overwrite the file on disk with the contents of the Source window or do nothing National Instruments Corporation 4 1 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows Context Menus in Source Windows To open a context menu right click anywhere in the Source window The context menu contains a set of the most commonly used menu commands from the Source window menu bar plus additional options not available through menus The set of commands is different depending on whether you right click over the text editing area or over the line number or line icon area The following options are not available through menus Cut Line Removes the entire line and places it on the clipboard Copy Line Copies the line to the clipboard The line remains in the source file Generate DAQ Example Code This option generates code that shows how to run the selected task in a program Selecting this menu item opens the Generate DAQ Example Code dialog box You must specify the Run Task function name and the target source file When you click OK LabWindows CVI generate
358. ruments B 1 Contents command 2 72 context menu Library Tree 2 4 Project Tree 2 2 to 2 4 Source window 4 2 User Interface Editor 3 2 Control Appearance section Edit Control dialog box 3 10 Control Callbacks command 3 21 Control command 6 16 Edit menu 3 9 Control Coordinates command 3 17 8 4 Control Help command 8 5 Control Settings section Edit Control dialog box 3 9 Control Style command 3 11 Control ZPlane Order command 3 17 controls See also function panel controls changing control type example 8 18 User Interface controls 3 15 conventions used in the manual xxi Convert UI to Lab Style command 2 55 LabWindows CVI User Manual Index Copy command Function Tree Editor 7 2 Source and Interactive Execution windows 4 8 User Interface Editor 3 5 Copy Controls command 8 3 Copy Panel command 3 6 Copy Standard I O to Debug Output Window option Environment command 2 62 Create ActiveX Controller command 2 48 Create ActiveX Server command 2 48 Create Binary Control dialog box 8 6 Create Console Application option Target Settings dialog box 2 16 Create Custom Controls command 3 11 Create Debuggable Dynamic Link Library command 2 11 Create Debuggable Executable command 2 11 Create Distribution Kit command 2 25 Create Distribution Kit dialog box Advanced button 2 34 Build button 2 34 Build Information section Add Group option 2 31 Browse option 2 28 Build Location option 2 28 Create Short
359. ry of your edit actions You can set the size of this stack using the Options Editor Preferences command The maximum capacity of this stack is 1 000 operations The Redo command reverses your last Undo command Redo is helpful when you use the Undo command to reverse a series of your edit actions and accidentally go too far LabWindows CVI enables the Redo command only when the previous action was the Undo command Any other action even moving the cursor disables the Redo command Edit Cut and Copy To cut or copy text to the clipboard select the text you want to place on the clipboard and then select Cut or Copy from the Edit menu LabWindows CVI places the selected text on the clipboard If you used the Copy command the text remains in the window Use the Cut command to delete text from the window Text you cut or copy does not accumulate on the clipboard Every time you cut or copy text it replaces the previous contents of the clipboard Edit Paste The Paste command inserts text from the clipboard e Ifyou paste in character select mode the characters appear at the cursor on the current line e Ifyou paste in line select mode the new lines appear above the current line e Ifyou paste in column select mode the new block of characters appears at the cursor on the current line e Ifyou select text before you paste the contents of the clipboard replace the selected text LabWindows CVI User Manual 4 8 ni com Chapter 4 Sou
360. s Choose whether to create a static library for each of the compatible external compilers or create one for the current compatible compiler only If you want to create a static library for both compilers you must not include any object or library files in your project because such files are specific to a particular compiler If you choose to create a static library for each compiler LabWindows CVI creates the files in subdirectories named msvc and borland LabWindows CVI also creates the library for the current compatible compiler in the parent directory e OK Accepts the current inputs and closes the dialog box Cancel Cancels the operation and removes the dialog box Build External Compiler Support Use the External Compiler Support command to help you build your project in one of the two compatible external compilers National Instruments Corporation 2 23 LabWindows CVI User Manual Chapter 2 Workspace Window The External Compiler Support dialog box contains the following options UIR Callbacks Creates an object or source file for you to link into your executable or DLL The object or source file contains a list of the callback functions you specify in the uir files in your project When you load a panel or menu bar from the uir file the User Interface Library uses the list to link the objects in the panel or menu bar to their callback functions in your executable or DLL If you specify callback function names in
361. s Prompt for include file paths 2 66 paths for compiler listing 2 63 phone technical support B 1 pointer mismatch detecting 2 66 pProcessID startup option table A 1 predefined data types intrinsic C data types 5 8 ni com meta data types Any Array 5 9 Any Type 5 9 Numeric Array 5 9 Var Args 5 10 predefined macros 2 69 Preferences command 3 22 10 12 Default Control Events option 3 22 Preferences for New Controls section 3 25 preferences for User Interface Editor 3 24 Preferences submenu Always Append Code to End option 3 22 Code menu Default Panel Events option 3 22 Preprocess Source File command 4 37 Preview User Interface Header File command 3 15 Previous Function Panel command 6 12 Previous Function Panel Window command 13 Previous Panel command 3 14 Previous Scope command 10 5 Previous Tag command 4 17 Print command 4 7 professional services B 1 programming examples B 1 project files displaying in Project Tree 2 9 optional files 2 5 required files 2 4 saving automatically 2 7 Project Tree 2 2 Prompt for include file paths option 2 66 Properties command Source Code Control submenu 2 53 Purge undo actions when saving file option Editor Preferences command 4 27 PUSHPOP SUPPORTED macro 2 69 National Instruments Corporation 1 23 Index Q Quick Edit Window Edit Control dialog box 3 10 Edit Panel dialog box 3 9 Quick Search command 4 16 R Read Only command
362. s and enter help text for them When you apply the changes the command modifies the source include and function panel files for the instrument driver If you select this command when the text cursor is over the defined constant name or callback function name for one of the attributes the dialog box appears with that attribute selected in the list box Refer to the LabWindows CVI Instrument Driver Developers Guide for more information about the Edit Instrument Attributes command LabWindows CVI User Manual 4 26 ni com Chapter 4 Source and Interactive Execution Windows Tools Edit Function Tree Use Edit Function Tree command to display the Function Tree Editor window for the function panel p file associated with the file in the Source window The function panel file must have the same path and base filename as the file in the Source window Tools Edit Function Panel Use the Edit Function Panel command to display the Function Panel Editor window for a function defined in an instrument driver source file You can use this command only if the file in the Source window has the same path and base filename as an instrument driver function panel p file The text cursor must be over the name of a function for which there is a function panel in the p file Window Menu for the Source and Interactive Execution Windows The Window menu for the Source and Interactive Execution windows works in the same way as the Window menu
363. s CVI User Manual Glossary scrollable text box select shortcut key commands slide control slider Source window Standard Input Output window standard libraries step mode String Display window T text box timer control Tooltips LabWindows CVI User Manual A dialog box item that displays text in a scrollable display To choose the item that the next executed action will affect by moving the input focus highlight to a particular item or area A combination of keystrokes that provides a means of executing a command without accessing a menu in the menu bar A function panel control that resembles a physical slide switch A slide control is a means for selecting one item from a list of options it inserts a value in a function call that depends on the position of the crossbar on the switch The crossbar on the slide control that determines the value placed in the function call A LabWindows CVI work area in which programs are edited and executed A LabWindows CVI work area in which textual output to and input from the user take place The LabWindows CVI User Interface ActiveX DataSocket Advanced Analysis or Analysis Formatting and I O GPIB GPIB 488 2 Utility RS 232 TCP Support DDE Support VISA IVI Traditional NI DAQ NI DAQmx and ANSI C libraries A program execution mode in which a program is manually executed one instruction at a time Each instruction in the program is highlighted as
364. s CVI to display the values of variables and selected expressions when you place the mouse cursor over the variables or selected expressions in a Source window e Enable Global Ctrl F12 Debug Break Key Enables a system wide hot key to suspend the execution of your LabWindows CVI program or the Interactive Execution window You can use this hot key when LabWindows CVI or your program is not the active application Enabling this option might interfere with other applications including your program that use lt Ctrl F12 gt for different purposes The hot key also might not work correctly when you are debugging two applications with LabWindows CVI at the same time The hot key is active only when LabWindows CVI is running a user program or the Interactive Execution window Interactive Window Memory Size Sets the amount of memory you want LabWindows CVI to reserve for executing function panels or code in the Interactive Execution window If LabWindows CVI displays the message Insufficient memory for Interactive window you must increase the value of Interactive Window Memory Size select Build Clear Interactive Declarations in the Interactive Execution window and then execute the function panel or Interactive Execution window statements again e Force Project Files into Interactive Window Enable this option if you run function panel or Interactive Execution window code that uses LoadExternalModule or joadExternalModuleEx to load a source file
365. s a user library provided the program is in compiled form The main difference between modules you load as instrument drivers and those you load as user libraries is that you can unload instrument drivers using the Instrument Unload command but you cannot unload user libraries Also because user libraries must be in compiled form you cannot edit them when they are in the Library menu Refer to the LabWindows CVI Instrument Driver Developers Guide for more information about writing an instrument driver To install user libraries select Library Customize in the Workspace window Once a library is installed the next time you launch LabWindows CVI the libraries load automatically and appear at the bottom of the Library menu Dummy fp Files for Support Libraries If you develop a library module to provide support functions for the modules in your project you can install it as a user library By doing so you ensure that the library is always available in the LabWindows CVI development environment If you do not want to develop function panels for the library create a p file without any classes or functions In that case LabWindows CVI loads the library at startup but does not include the library name in the Library menu LabWindows CVI User Manual 2 46 ni com Chapter 2 Workspace Window System Libraries LabWindows CVI includes some low level system functions The prototypes for the functions are in 1owlvlio h and the function p
366. s an XML file LabWindows CVI User Manual 7 8 ni com Options FP File Format Chapter 7 Function Tree Editor Use FP File Format to select the format for the current function panel file and the default format for new function panel files Two function panel file formats are available The following table lists the features of the two formats Table 7 1 FP File Format Features LabWindows CVI 5 0 1 LabWindows CVI 5 5 Feature and Earlier Format and Later Format Maximum Instrument Prefix Length 8 31 Maximum Function Name Length 31 79 Maximum Class Name Length 31 79 Maximum Window Name Length 31 79 Maximum Type String Length 50 80 Default Text for Output Controls Not Supported Supported Function Qualifiers Not Supported Supported Set Precision on Numeric Controls Not Supported Supported Options Help Style Use Help Style to choose the help style New Recommended or Old LabWindows DOS to use when you edit context sensitive help for the function tree The new and old help styles differ significantly The old help style maintains compatibility with function panels created in LabWindows version 2 3 or earlier This help style uses the DOS IBM character set so that it can display special extended ASCII characters that many older instrument drivers use Also the old style provides help for the entire Function Panel window not the individual function panels within a Function Panel window
367. s appear in the Status column in the Workspace window 8 The file has been modified since you last saved it C You have modified the file since you last compiled it or you manually marked it for compilation Q This symbol applies only to source c files and indicates that you selected Enable O option If you enable this option LabWindows CVI compiles the source file without debugging information You can use this option to reduce the amount of memory required to build a project The file is associated with a loaded instrument driver If not present the fp file is not loaded into memory A The fp file is contained in the project and is attached to or associated with a program file U The fp file is contained in the project and is not attached to any program file Build Menu for the Workspace Window This section explains how to use the commands in the Workspace window Build menu Commands in the Build menu include commands used to build and link projects mark projects for compilation and create application files LabWindows CVI User Manual 2 10 ni com Chapter 2 Workspace Window Build Configuration The Configuration item opens a submenu from which you select the active configuration for your project Set the configuration to Debug when you want to debug your executable or DLL Set the configuration to Release when you are ready to build a release version of your executable DLL
368. s deter tecto ee t ate e e HERES 4 17 View Next Tae eodera n i teneor rei t ER 4 17 VIEW Previous Lag wade erea e a a i e a aerea a A 4 17 Views Las SCODe aii fash pepe 4 17 Miews Clear TaS cx a a a e a 4 17 View Function Panel History sesseesseseesesseessesssssessressrssessessseseessresressresrese 4 17 View Function Panel Tree eea Aa E E e 4 18 View Recall Function Panel eese a 4 18 Selecting the Recall Function Panel Command 4 18 Recalling a Function Panel from a Function Name Only 4 18 Multiple Panels for One Function see 4 18 Multiple Functions in One Function Panel Window 4 18 Syntax Requirements for the Recall Function Panel Command 4 19 View Find Function Panel esses neret enne 4 19 View Find UI Object ette ttp te Rede Re ehe ye Re e 4 19 Build Menu for the Source and Interactive Execution Windows s 4 20 Build Configuration o ae tranne rete hr Rete RO EE PNE ERE aepo vend 4 20 Build Compile Pile to ee D metere E Re ern 4 20 B ild Cteate e tt aie e ree o RUE eq 4 20 Build Mark File for Compilation eee 4 20 Build Clear Interactive Declarations eese 4 21 Build Insert Include Statements eese 4 21 Build Add Missing Includes
369. s example code that shows how to run the selected task in a program The generated code includes source and header files that define the Run Task function LabWindows CVI automatically adds these files to the project The current source file is modified to call the run task function The generated code has no link to the original task Any modifications you make to the original task will not be automatically reflected in the generated code This menu item is enabled only when you place the cursor on a call to DAQmxLoadTask or the name of the task creation function of a project based task Copy DAQ Task to Project This option creates a new project based task that is a copy of the selected MA X based task Selecting this menu item opens the Copy DAQ Task to Project dialog box You must specify a task name task creation function name and target directory When you click OK LabWindows CVI completes the following actions Generates source c header 5 and binary mxb files and adds them to the project Replaces the call to DAQmxLoadTask with a call to the new task creation function Adds an include statement for the generated header file The generated source and header files define the task creation function This function contains the code necessary to create a task that is equivalent to the selected MAX based task The generated binary mxb file contains a binary description of the task that is used when you edit the
370. s interactively from the function panel LabWindows CVI creates an int variable and automatically puts an ampersand amp in front of the variable name to pass it by reference 3 Assign a meaningful name to each parameter Return Values Instrument driver functions also can have a return value Instrument drivers supplied by National Instruments use function return values to implement an error handling mechanism All instrument driver functions have a return value of type ViStatus 32 bit unsigned integer that returns error and status information about the function call Required Instrument Driver Functions All instrument drivers must contain functions that perform the following operations Prefix init e Prefix close Prefix error message The VXIplug amp play standard requires the following additional functions for instrument drivers that control GPIB VXI or serial instruments e Prefix reset e Prefix self test Prefix_revision_query Prefix error query National Instruments Corporation 5 13 LabWindows CVI User Manual Chapter 5 Using Instrument Drivers IVI instrument drivers must have the following additional functions Prefix InitWithOptions Prefix GetErrorInfo Prefix ClearErrorInfo Prefix LockSession Prefix UnlockSession Prefix ReadInstrData Prefix WriteInstrData IVI instrument drivers from National Instruments also must export functions by the name of Prefix_IviInit and Pref
371. s that you use the BINB tag only for Boolean parameters NARG type name Adds specified parameters at the end of the parameter list that ends with variable argument list This tag applies only to the function immediately following the tag Example use NARG Any Type Value int Number of Elements You optionally can specify the name of the help file whose contents are copied into the control help for name Use the following tag NARG type name helpfile National Instruments Corporation 4 35 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows Tag Description RETV name Specifies the name of the return value If you do not use this tag or use the tag without a name the default name Return value is used FP title Specifies the title of the instrument If you do not use this tag the function panel filename is used for the function panel title ADDT typename Adds a type to the function panel Adds typename typename typename typename typename zal P Excludes the following lines from function panel generation This tag ignores all other tags functions enums and so on until it finds the UNEX tag hy Note The code excluded from the generation still has to follow the syntax If you want to exclude code that is not syntactically correct use comments instead Also Ex and
372. se from the following data types int short char unsigned int unsigned short unsigned char double float You also can choose a user defined data type for which you have specified an intrinsic type Default Value The default for the numeric control which must be a valid member of the value set e Display Format The output format You can display integers longs and shorts in decimal hexadecimal octal or ASCII format You can display doubles and floats in either scientific or floating point notation LabWindows CVI User Manual 8 8 ni com Chapter 8 Function Panel Editor e Precision The number of digits the control displays to the right of the decimal point When you click the Value Set button the Edit Value Set dialog box appears Minimum The minimum value the numeric control accepts Maximum The maximum value the numeric control accepts Inc Value The amount the numeric control value increments or decrements when the user presses the up or down arrows The value in Inc Value must divide evenly into the range of the numeric control Create Output An output control displays the results of a function call When you select Create Output the Create Output Control dialog box appears The following items appear in the Create Output Control dialog box Control Label The label that appears above the control on the function panel e Parameter Position The location of the control value in th
373. secesessaeeeeeeenes 3 1 Using the Context Menus of the User Interface Editor 3 2 GCodeBuilder Overview eicere cree ert eter ned 3 3 File Menu for the User Interface Editor esssesseeeeeeeeen enne nenne 3 4 File New Open Save Save All Most Recently Closed Files and Exit LabWindows CVI uie tereti eer ert aee eee e ure ese a 3 4 Bile S Save AS tote deerit ETE E E a n RETE hota se E E 3 4 File Save Copy AS etie eere E nE EEE a NEE EENE EE 3 4 Filey A mm 3 4 File Add File to Project te E E S 3 4 FilesRead Only eter om repere besten see atreve 6 3 4 Filey Print eie aset eene deo EE te ERE ces ese tuae e ese aae 3 4 Edit Menu for the User Interface Editor sse 3 5 Edit Undo and Redo 5 ree it tee opere Eno Ea e TRES 3 5 Edit Cut and Copy e ente rtv dede TE eg 3 5 Edit P ste iesu apRad eina eode eite ques 3 6 Edit Delete eee he ea cte enttsc irit d 3 6 Edit Copy Panel and Cut Panel esses 3 6 Edit Menu Bars reete giten ee C eT EH er e in 3 6 Edit Panel 52242 ewe tec e P Ee YE de ege eerie eee ben Ue 3 8 jureiip iai Q 3 0 Edits Tab Order 5 initi ce E HE V evan a Eaa 3 11 Edit9SetDefaultBont 4 1 rtr e eet bee erp E CES ed 3 11 Edit Apply Default Font eee ee eene nennen ennt ttn tenerte 3 11 Edit Control Style oren hee rr tl er eee free ts 3 11 Edit Edit Create Custom Con
374. selecting variables and expressions 10 2 View menu 10 6 Window menu 10 12 Web professional services B 1 technical support B 1 Web Links command 2 73 Where to Copy DLL Target Settings dialog box 2 18 Whole Word option Find command Source and Interactive Execution windows 4 12 Variables window 10 4 Find UIR Objects dialog box 3 14 _WIN32 macro 2 69 WIN32 macro 2 69 __WIN32__ macro 2 69 Window Confinement Region 2 4 Window Help command 8 5 Window menu Array and String Display Windows 11 6 Function Panel Editor 8 12 Function Panel window 6 14 Function Tree Editor 7 8 Help Editor 9 6 Source and Interactive Execution windows 4 27 User Interface Editor 3 23 Variables window 10 1 10 12 Watch window 10 2 10 12 Workspace window Array Display command 2 60 Build Errors command 2 57 Cascade Windows command 2 56 ni com Close All command 2 57 Debug Output command 2 58 Find Results Window command 2 58 Interactive Execution command 2 61 Memory Display command 2 59 Minimize All command 2 56 open source files 2 61 Run Time Errors command 2 57 Source Code Control Errors command 2 59 String Display command 2 60 Tile windows command 2 56 Variables command 2 60 Watch command 2 60 Workspace command 2 57 Windows DLLs See DLLs WINDOWS macro 2 69 Windows SDK command 2 72 windows hiding 2 61 WinMain using instead of main 3 20 workspace creating with New command 2 6 Edit Workspace dialog
375. send email to ctechpubseni com 1994 2003 National Instruments Corporation All rights reserved Important Information Warranty The media on which you receive National Instruments software are warranted not to fail to execute programming instructions due to defects in materials and workmanship for a period of 90 days from date of shipment as evidenced by receipts or other documentation National Instruments will at its option repair or replace software media that do not execute programming instructions if National Instruments receives notice of such defects during the warranty period National Instruments does not warrant that the operation of the software shall be uninterrupted or error free A Return Material Authorization RMA number must be obtained from the factory and clearly marked on the outside of the package before any equipment will be accepted for warranty work National Instruments will pay the shipping costs of returning to the owner parts which are covered by warranty National Instruments believes that the information in this document is accurate The document has been carefully reviewed for technical accuracy In the event that technical or typographical errors exist National Instruments reserves the right to make changes to subsequent editions of this document without prior notice to holders of this edition The reader should consult National Instruments if errors are suspected In no event shall National Instrumen
376. splay the function panel corresponding to the call Recall Function Panel not only finds and displays the panel but also sets the panel controls so that they contain the parameter values that appear in the function call After modifying one or more controls you can replace the original call with the modified call Selecting the Recall Function Panel Command Before you select Recall Function Panel you must indicate the function panel you want to recall One method is to place the cursor on a line that contains a function call or a portion of a function call You can select part of a line provided that the part contains a function call If a line contains multiple function calls or one function call embedded within another you can resolve the ambiguity by placing the cursor on or immediately after the function name After you indicate the function call select View Recall Function Panel The function panel for that function appears and the controls contain the parameter values from the call Recalling a Function Panel from a Function Name Only You can recall a panel from a function name without specifying any of the parameters If you place the keyboard cursor on or immediately after a function name Recall Function Panel recognizes the function name even if a parameter list does not follow it Thus you can type a function name into the Source window and select Recall Function Panel Also you can use the Find Function Panel command to open
377. stallation Language The language that the installation program uses for text during the installation 3 Note You might receive an error if you attempt to build a Japanese distribution kit on English Windows NT 4 0 9x These operating systems do not have support for the Japanese codepage installed by default You also might receive an error at distribution kit install time on these same English versions of Windows While there are several ways to install Japanese codepage support on your system the following is a possible method 1 Install Microsoft Internet Explorer 5 0 or later 2 Gotohttp windowsupdate microsoft com and follow the links to the products update section 3 Download Japanese Language Support for Internet Explorer and follow the installation intructions 4 Reboot restart LabWindows CVI and retry the distribution kit build e Run Time Engine Support The run time engine to include in your distribution kit You must match this choice to the run time engine that your project is built with in the Target Settings dialog box Selections other than Full Run Time Engine or All Engines LabWindows CVI User Manual 2 26 ni com Chapter 2 Workspace Window cause other options on the distribution kit to be unavailable because those options require Full Run Time Engine support to function You can select the following options Full Run Time Engine Includes the full LabWindows CVI Run time Engine DLL cvirte d11 and
378. sts the currently assigned shortcut keys for each command in the window you selected Reset All Sets the default assignments for all shortcuts in all windows Load Loads a shortcut key list Save Saves to disk the currently assigned shortcut keys OK Accepts changes you made and closes the dialog box Cancel Discards changes you made and closes the dialog box Help Opens the help topic for this dialog box Right click a menu command in Current Shortcut Keys to access the context menu Change Key Opens the Change Key dialog box The Change Key dialog box contains the following options Modifier Key Select None Ctrl Shift or Ctrl Shift Shortcut Key What you select in Modifier Key determines what appears in Shortcut Key You can select function keys letter keys arrow keys and space keys Free Keys View a list of available keyboard shortcuts Select a shortcut you want to use and click Use Key If you assign a shortcut key that is already in use a Conflicting Keys message appears which shows the window and command assigned to the shortcut you are attempting to use You can select Clear the Conflicting Keys which removes the currently assigned shortcuts from all windows in which the conflicting shortcut appears and accepts the new shortcut or you can Revert to the shortcut that was assigned previously Reset key Sets the default shortcut key for the command Find Searches through the shortc
379. submenu 3 22 Always Append Code to End option 3 22 Default Control Events option 3 22 Default Panel Events option 3 22 Set Target File command 3 17 View command 3 21 code modules LabWindows CVI User Manual adding to projects 2 9 contained in project 1 4 code See source files CodeBuilder overview 3 3 coloring tool 3 2 Colors command 2 70 4 28 colors setting in Editor Preferences dialog box 3 24 Column Select Mode 4 6 Command Line command 2 42 common control function panel 6 5 Common Control Function Panel command 8 11 comparing source files 4 10 Compatibility with option 2 64 compile errors maximum number of 2 68 Compile File command 4 20 compiled files including in project 1 4 compiler defines predefined macros 2 69 syntax 2 68 Compiler Defines option Build Options dialog box 2 68 compiler options Compatibility with 2 64 Compiler Defines 2 68 Debugging level 2 65 Default calling convention 2 64 Detect assignments in conditional expressions 2 67 Detect signed unsigned pointer mismatches 2 66 Detect uninitialized local variables at run time 2 65 Detect unreachable code 2 67 Detect unreferenced identifiers 2 67 Display status dialog during build 2 66 Generate source code browse information 2 68 Image base address 2 65 Make O option compatible with CVI 5 0 1 2 66 Maximum number of compile errors 2 68 ni com Maximum stack size bytes 2 65 Predefined Macros 2 68
380. t name for each object as you create it For panels and controls the generated constant name appears in the Edit dialog box the first time you open it For menu bars LabWindows CVI assigns constant names only when you exit the Menu Bar Editor In all cases you can freely modify the generated constant names NI recommends that you leave the Immediately assign constant names for new objects option selected This option makes it easier for you to use the other LabWindows CVI features that have been designed to help you write your program to operate your user interface Notice that when you enable Immediately assign constant names for new objects Assign constant names from user defined control labels when possible has no effect National Instruments Corporation 3 25 LabWindows CVI User Manual Chapter 3 User Interface Editor That is because you do not have a chance to customize the control labels before the User Interface Editor generates the constant name Consequently the User Interface Editor bases the constant name on the control type If you choose to disable the Immediately assign constant names for new objects option NI recommends that you enable the Fill in missing constant names when saving option Options Assign Missing Constants The Assign Missing Constants command assigns constant names to all of the objects in the User Interface Editor that currently do not have constant names A confirmation dialog box appears showi
381. t Function command 8 4 Find command 8 4 Function Help command 8 5 Paste command 8 3 Redo command 8 2 Replace command 8 5 Undo command 8 2 Window Help command 8 5 Function Tree Editor Copy command 7 2 Cut command 7 2 Delete command 7 2 Edit Function Panel Window command 7 2 Edit Help command 7 2 Edit Node command 7 2 Find command 7 3 FP Auto Load List command 7 2 Paste Above command 7 2 Paste Below command 7 2 Replace command 7 4 Help Editor 9 5 Source and Interactive Execution windows Balance command 4 10 Clear Window command 4 4 4 9 Copy command 4 8 Cut command 4 8 Delete command 4 9 Diff command 4 10 Find command 4 12 LabWindows CVI User Manual Index Go Back command 4 11 Go To Definition command 4 11 Go to Next Reference command 4 11 Insert Construct command 4 10 Next File command 4 16 Paste command 4 8 Quick Search command 4 16 Redo command 4 8 Replace command 4 15 Resolve All Excluded Lines command 4 9 Select All command 4 9 Show Completions command 4 11 Show Prototype command 4 11 Toggle Exclusion command 4 3 4 9 Undo command 4 8 String Display window Edit Character command 11 4 Edit Mode command 11 4 Find command 11 4 Goto command 11 4 Overwrite command 11 5 User Interface Editor Apply Default Font command 3 11 Control command 3 9 Control Style command 3 11 Copy command 3 5 Copy Panel command 3 6 C
382. t Viewing of Function Panel Variables esses 6 5 File Menu for Function Panel Windows eese 6 5 File Add Program File to Project esee 6 6 Code Menu for Function Panel Windows eese 6 6 Code Run Function Panel eese 6 6 Code Declare Variable 3 ener ute e etes 6 6 Code Clear Interactive Declarations eese 6 7 Code Select Value its doo der bred mete rob teste Eten 6 7 Code Select UIR Constant eese enne ener 6 7 Code Select Attribute Constant essere 6 8 National Instruments Corporation Xiii LabWindows CVI User Manual Contents Code Select Variable or Expression eseeseeeeeeeeeeeennennenn 6 8 Sorted List Box Entries esesseseseseeeeeeeeeeeeeeenen nennen nnne 6 9 Included Variables and Expressions eee 6 9 Data Type Compatibility esee 6 10 Code Insert Function Call essere 6 11 Code Set Target File ssiri iiaeie tees teretes erede end 6 11 Code View Variable Value essent 6 11 Code Add Watch Expression cscesccsscesseeseeeseeseeeseceeeeneceeeeseeeeeaeeeseeaeeesees 6 11 View Menu for Function Panel Windows cceecccsseceseeeeeecseeceeeceeeceaeeeeecsaeeeseeeenees 6 11 Vae Ww EoO lb E hte eter es Aaa E C Fe E I Er EUR 6 11 VIEW BETOE oon n
383. t buttons open the Add Edit Tools Menu Item dialog box where you can set the following options e Menu Item Name The string that appears in the Tools menu To specify a shortcut key for the menu item insert two underscores in front of any letter You can select that entry by pressing that letter while the Tools menu is open e Program Name The pathname of the program to execute when you select the menu entry You can specify a full pathname a simple filename or a relative pathname You can use the Browse button to look for the program on disk Command Line Arguments Arguments you want to pass to the program You can leave this entry blank LabWindows CVI saves your Tools menu entries from one session to another not in the project Window Menu for the Workspace Window Use the commands in the Workspace window Window menu to bring any open window to the front for viewing or editing Window Cascade Windows Use this command to arrange all open windows within the Window Confinement Region so that each title bar is visible This command does not arrange released windows Window Tile Windows Use this command to arrange all open windows in smaller sizes to fit next to each other in the Window Confinement Region This command does not tile released windows Window Minimize All The Minimize All command hides all confined LabWindows CVI windows LabWindows CVI User Manual 2 56 ni com Chapter 2 Workspace Window
384. t driver carefully When you do the user can identify the functions required by the desired action without the burden of choosing from a long list of unrelated functions The concept of function classes is only apparent to the user from within the LabWindows CVI development environment The application program calls all functions within an instrument driver the same way regardless of which function class they are in Defining the Function Parameters To design the code for an instrument driver function you must first establish its parameters Function parameters provide input information to the function and output variables where the function can store its results Output parameters often contain values that the function reads from the instrument and formats for the user Data Types You must specify a data type for each parameter in each instrument driver function All data types the instrument driver uses must be intrinsic C data types or data types that you define in the h file and list in the p file Specify the data type of a parameter when you create its corresponding control on a function panel This data type also must be consistent with the function prototypes in the instrument driver header file LabWindows CVI uses the data type information to implement the variable declaration and run time checking capabilities when users operate function panels When you declare a variable from a function panel LabWindows CVI presents opti
385. t options 2 62 Slide command 8 6 slide control parameters specifying 6 4 software drivers B 1 Source Code Browser 2 53 files 2 53 functions 2 54 generating browse information 2 68 opening from Variables and Watch windows 10 8 variables data types and macros 2 54 Source Code Connection section Edit Control dialog box 3 9 Edit Panel dialog box 3 8 Source Code Control button Environment dialog box 2 63 Source Code Control command Source Code Control submenu 2 53 Source Code Control Errors command 2 59 Source Code Control Errors window 2 59 Source Code Control Options dialog box Advanced 2 64 Always show confirmation dialog 2 64 Attach 2 63 Create 2 63 Perform same actions for h file as for uir file 2 64 LabWindows CVI User Manual Project 2 63 Provider 2 63 Suppress CVI Error Message dialog 2 64 Use default comment 2 64 Use default username 2 64 Source Code Control submenu Add to Source Control 2 53 Check In command 2 52 Check Out command 2 52 Clear Source Code Control Error Window 2 53 Get Latest Version 2 52 Get Latest Versions of All 2 52 Properties 2 53 Refresh Status 2 53 Remove From Source Control 2 53 Show Differences 2 53 Show History 2 53 Source Code Control 2 53 Undo Check Out 2 53 source files creating with CodeBuilder 3 3 debugging 1 4 forcing into Interactive Execution window loaded instrument driver 2 62 project compiled source files 2 62 listed in Window menu
386. t terminates This option also suppresses the LabWindows CVI startup screen newproject LabWindows CVI starts with an empty Workspace window pProcessID LabWindows CVI attaches to the process that ProcessID identifies When the process subsequently loads DLLs LabWindows CVI can debug them if you created them with debugging information in LabWindows CVI You can express ProcessID as a decimal number or as a hexadecimal number that you precede with 0x National Instruments Corporation A 1 LabWindows CVI User Manual Appendix A Configuring LabWindows CVI How to Set the Configuration Options LabWindows CVI development environment configuration options are under the following key where version is the version of the LabWindows CVI development environment HKEY LOCAL MACHINENSOFTWARENNational Instruments NCVIN version Use this key to set the configuration options for the LabWindows CVI development environment LabWindows CVI Run Time Engine configuration options are under the following key HKEY LOCAL MACHINENSOFTWARENNational Instruments CVI Run Time Engine cvirte Your programs when you run them from the environment or as stand alone applications use the Run Time Engine configuration options A configuration string value is associated with each option as shown in the following figure a Registry Editor Registry Edit Yiew Favorites Help My Computer e Data Gu HKEY CLASSES ROOT
387. t the active configuration using the Build Configuration option If you select Build Target Type Dynamic Link Library the Debug menu item runs the executable you specify with the Run Specify External Process menu item Before running the executable the Debug menu item compiles any source files that must be compiled and builds the project s target executable or DLL if you made changes since you last built the target DLL or executable Run Continue Use the Continue command to resume program execution in a breakpoint state Run Step Over Use the Step Over command to execute an outlined statement in a breakpoint state If the program last suspended on a function call statement Step Over executes the entire function and then enters a breakpoint state on the statement following the function call If LabWindows CVI encounters a breakpoint within the function call Step Over pauses at the breakpoint Run Step Into The Step Into command is similar to the Step Over command except that after the program suspends operation at a function call Step Into enters the function and suspends at the first statement of the function Step Into can enter a function only if you define it in a source file Otherwise Step Into executes the entire function and suspends execution on the statement following the function call Run Finish Function The Finish Function command resumes execution through the end of the current function and breakpoints on the
388. t to use p files to document functions in your project When you do not provide a program file for the p file you cannot execute the function panels but you can insert code into Source windows from them If you try to execute an instrument driver function panel without an associated program LabWindows CVI reports a run time error You can attach a c file toa p file after you load the p file or run the program file search algorithm in the Edit Instrument dialog box by selecting Attach and Edit Source Modules That Contain Non Instrument Functions Although the LabWindows CVI instrument driver mechanism is primarily for program modules that control instruments you can use it for any module that contains a set of high level functions Suppose for instance you write a set of specialized analysis functions If you develop function panels and a h file for the module you can load the module from the Instrument menu or Instruments folder in the Library Tree and call the functions from the function panels LabWindows CVI User Manual 5 4 ni com Chapter 5 Using Instrument Drivers Modifying an Instrument Driver You might want to modify an instrument driver that you received from National Instruments or elsewhere If you want to modify the instrument driver program file you must have the c file for the instrument driver Before modifying an instrument driver familiarize yourself with the LabWindows CVI Instrument Driver De
389. te Inserts the label and value line contained in the clipboard below the selected line in the list box e OK Accepts the entries in the list box then removes the dialog box e Cancel Cancels changes and removes the current dialog box from the screen e Help Displays the help topic for the Edit Label Value Pairs dialog box LabWindows CVI User Manual 3 10 ni com Chapter 3 User Interface Editor Edit Tab Order Each control on a panel has a position in the tab order The tab order determines which control becomes the next active control when the user presses Tab or Shift Tab When you create a control it positions itself at the end of the tab order When you copy and paste a control the tab position of the pasted control is immediately before the control you copied Select Edit Tab Order to display the Edit Tabbing Order dialog box Click a control with the pointer cursor to change the tab position of a w control to the number in the Click to set to box You can change the cursor to the eyedropper cursor by holding down the vt Ctrl key Click a control with the eyedropper cursor to change the number in the Click To Set To box to the current tab position associated with the control Click the OK button to accept the new tab order Click the close button to erase the new tab order and restore the original tab order For each control the original tab order appears in dim display to the right of the new ta
390. te Release Executable menu item appears if you select Build Configuration Release and Build Target Type Executable Use this menu item to compile and build an executable without debugging information This command ignores the value of Debugging level in the Build Options dialog box You can specify the filename of the executable as well as other executable settings by selecting the Target Settings menu item You can set other creation and build options in the Build Options dialog box Build Create Release Dynamic Link Library The Create Release Dynamic Link Library menu item appears if you select Build Configuration Release and Build Target Type Dynamic Link Library Use this menu item to compile and build a DLL without debugging information This command ignores the value of Debugging level in the Build Options dialog box You can specify the filename of the DLL as well as other DLL settings by selecting the Target Settings menu item You can set other creation and build options in the Build Options dialog box This command also generates a DLL import library for the DLL LabWindows CVI User Manual 2 12 ni com Chapter 2 Workspace Window Build Create Static Library The Create Static Library menu item appears if you select Build Target Type Static Library When you do the Release item always is checked Use this menu item to compile and build a static library without debugging information This command ignores
391. tents of the Source Code Control Errors window to a text file e Release Confine Window Releases the window from the Output Window Region if confined Confines the window into the Output Window Region if released Hide Confined Error Windows Removes all windows from the Output Window Region To access the context menu right click an empty area of the Source Code Control Errors window Window Memory Display The Memory Display command opens the Memory Display window in which you can view and edit the memory of the program you are debugging Use this window to view and edit the data in hexadecimal byte word long decimal byte word long single precision floating point double precision floating point or ASCII representation You must enable the Edit National Instruments Corporation 2 59 LabWindows CVI User Manual Chapter 2 Workspace Window Mode option before you can modify the process memory To change the value of a memory location click that cell in the Memory Display window and type the new value You can drop variables onto the Memory Display window To drop variables onto the Memory Display window select the variable you want to view from the Source Interactive Execution Variables or Watch window and drop it onto the Memory Display window Window Variables Use this command to bring the Variables window to the front The Variables window shows the contents of all variables currently defined in the progr
392. tern in the Interactive Execution window To define a variable select Code Declare Variable in the Function Panel window You can select Code Select Variable to select a variable or expression that you have used before The type of value you enter whether it is a constant expression simple variable or array must agree with the data type of the control To determine the data type of the control press F1 or right click the control to view the Help window Specifying Numeric Control Parameters A numeric control behaves like an input control except that it accepts only numeric values If you want to type a variable name into a numeric control select Options Toggle Control Style Specifying Slide Control Parameters With a slide control you select one item from a list of options The position of the slider the cross bar on the slide control determines the value LabWindows CVI places in the function call As you move the slider on the control the corresponding argument in the function call in the generated code box changes If you want to type a variable name into a slide control select Options Toggle Control Style Specifying Binary Control Parameters This control is similar to the slide control but the binary control has only two positions If you want to type a variable name into a binary control select Options Toggle Control Style LabWindows CVI User Manual 6 4 ni com Chapter 6 Using Function Panels Sp
393. test portions of code before including them in the primary program You also can use the Interactive Execution window to execute functions exported by a loaded instrument or by a file in the project if the project has been linked The Interactive Execution window can access functions and data declared as global in a Source window but a Source window cannot access the functions and data declared in the Interactive Execution window LabWindows CVI does not disturb asynchronous I O RS 232 ports opened files and User Interface Library resources you use in the Interactive Execution window at the beginning or end of execution in the Interactive Execution window LabWindows CVI terminates closes or deletes these program elements only when you perform one of the following actions e Select Build Clear Interactive Declarations e Select Edit Clear Window Link a project e Runa project Run Time Error Reporting LabWindows CVI reports various run time errors during the execution of a program One example of a run time error is a call to a LabWindows CVI library function with an array or string that is too small to hold the output data When such errors occur a dialog box appears identifying the type of error and the location in the file where the error occurred LabWindows CVI then displays the error in the Run Time Errors window LabWindows CVI suspends the program so you can inspect the values of variables in the Variables window To ter
394. the Create Binary Control dialog box set the Default Value to 1 Edit On Off Settings National Instruments Corporation 8 15 LabWindows CVI User Manual Chapter 8 Function Panel Editor 10 Select Create Input and complete the Create Input Control dialog box as shown in the following figure Click OK and position the control on the panel Create Input Control Volts Div 11 Select Create Slide 12 Complete the Create Slide Control dialog box as shown in the following figure Create Slide Control LabWindows CVI User Manual 8 16 ni com Chapter 8 Function Panel Editor 13 Click Label Value Pairs and complete the Edit Label Value Pairs dialog box as shown in the following figure Click OK in both dialog boxes and position the control on the panel Edit Label alue Pairs 14 Select Create Binary and complete the Create Binary Control dialog box as shown in the following figure National Instruments Corporation 8 17 LabWindows CVI User Manual Chapter 8 Function Panel Editor 15 Click the On Off Settings button and complete the Edit On Off Settings dialog box as shown in the following figure Click OK in both dialog boxes and position the control on the panel cw Edit On Off Settings Changing Control Type In this example you change the type of the Volts Div control from an input control to a slide control Complete the following steps 1 Make sure the Function Panel window from th
395. the active project If you drop the p file onto a non active project LabWindows CVI adds the p to that project but does not load the p If you drop the p file onto the Library Tree LabWindows CVI loads the instrument driver but does not add it to any project The p file represents the instrument driver in the project If the p file is in the project when you open the project LabWindows CVI automatically loads the instrument driver and removes it when you unload or deactivate the project Precedence Rules for Loading the Instrument Driver Program File When you load a p file LabWindows CVI loads the instrument driver program file In some cases you might have an instrument driver program file in more than one format For instance you might have 18840a obj and 18840a c in the same directory which can occur when you obtain the source code for the instrument driver and then compile it into an object file LabWindows CVI chooses which file to load according to the following rules e Ifan instrument driver program file is in the project LabWindows CVI loads it There can be at most one unexcluded program file with the same base name as the fp file in the project list Thus x obj and x c cannot be in the project list at the same time unless you exclude one or both of them e fboth of the following conditions apply with VXIplug amp play instrument drivers the Lib file is associated with the fp file T
396. the files in the TIVI NLibWnsc and IVI Lib be subdirectories If you choose to create an import library for the current compiler only LabWindows CVI creates the file in the appropriate subdirectory National Instruments Corporation 2 21 LabWindows CVI User Manual Chapter 2 Workspace Window Type Library Choose whether to add a type library resource to your DLL Also you can choose to include links in the type library resource to a Windows help file LabWindows CVI generates the type library resource from a function panel p file You must specify the name of the p file You can generate a Windows help file from the p file by selecting the Options Generate Windows Help command in the Function Tree Editor window This feature is useful if you intend for your DLL to be used from Visual Basic LoadExternalModule Options The following options assist you in loading external modules Enable LoadExternalModule Select this option if your project uses LoadExternalModule This option is enabled by default If your project does not use LoadExternalModule disable this option to reduce the size of your DLL If you disable the option but still use LoadExternalModule LabWindows CVI prompts you to enable full support You must rebuild your project before the changes take effect Add Files to DLL Select additional module files that you want to link into the DLL These are modules that your project files do not directly refere
397. the panel is first displayed Displayed on the screen as a highlight on an item signifying that the item is active User input affects the item in the dialog box that has the input focus A set of high level functions for controlling an instrument It encapsulates many low level operations such as data formatting and GPIB RS 232 and VXI communication into intuitive high level functions An instrument driver can pertain to one particular instrument or to a group of related instruments An instrument driver consists of a program and a set of function panels The program contains the code for the high level functions Associated with the instrument program is an include file that declares the high level functions you can call the global variables you can access and the defined constants you can use A LabWindows CVI work area in which sections of code may be executed without creating an entire program An area in the Workspace window that contains a tree view of the LabWindows CVI libraries and instruments A dialog box item that displays a list of possible choices Megabytes of memory An area accessible from a menu bar that displays selectable menu items A function definition in which parameters are declared directly in the parameter list G 4 ni com 0 old style function definition output control Output Window Region P project Project Tree prompt command R return value control ring control
398. the remaining dimensions those dimensions not specified as either row or column remain constant at the specified value If you enter an invalid character such as a non alphanumeric character or any alphabetic character besides R r C or c an error message appears Likewise if you enter an index out of the range of a dimension an error message appears Press Enter to remove the error message If you want to close the Reset Indices dialog box without changing the indices click Cancel LabWindows CVI User Manual 11 2 ni com Chapter 11 Array and String Display Windows String Display Window Use the String Display window to view and edit the contents of a string variable or single dimensional or multidimensional string array during a breakpoint When strings appear in ASCII format there is no visual distinction between a space ASCII 32 and a NUL byte ASCII 0 You can see the difference by displaying the string in decimal format In the String Display select Options Display Entire Buffer to see beyond the NUL byte You can view the String Display window in the following ways e From the Variables window select View String Display to open the String Display window for the currently highlighted string variable e From the Variables window double click a string to open the String Display window e From the Source window select Run View Variable Value to open the String Display window when the name of a string variabl
399. this resource ID to LoadPanel to load the panel into memory The constant name is defined in the n file that LabWindows CVI generates when you save the uir file If you do not assign a constant name the User Interface Editor assigns a constant name when you save the uir file Callback Function Specifies the name of the function to call when an event is generated on the panel Naming a callback function is optional The Panel Settings section of the Edit Panel dialog box has the following options Panel Title Sets the title of the panel Menu Bar Sets the name of the menu bar Close Control Designates which control on your panel causes the panel to close Top Sets the barrier for the top edge of the panel in pixels Left Sets the barrier for the left edge of the panel in pixels Height Sets the barrier for the height of the panel in pixels Width Sets the barrier for the width of the panel in pixels Scroll Bars Enables or disables scroll bars on the panel Auto Center Vertically when loaded Automatically centers the panel in the vertical center of your monitor Auto Center Horizontally when loaded Automatically centers the panel in the horizontal center of your monitor Other Attributes Sets behavior and feature attributes of the panel LabWindows CVI User Manual 3 8 ni com Chapter 3 User Interface Editor From the Quick Edit Window you can perform high level edits on the panel The mode to
400. tion they perform as opposed to a single linear listing of all available functions The window in which you build the skeleton of a function panel file A text box located at the bottom of the function panel window that displays the function call that corresponds to the current state of the function panel controls A function panel control that displays the contents of global variables in a library function Global controls allow you to monitor global variables in a function that the function does not specifically return as results These are read only controls that the user cannot alter and do not contribute a parameter to the generated code A window in which you can view the values of arrays in a graph Hexadecimal The way in which input focus is displayed on a LabWindows CVI screen to move the input focus onto an item A menu that has no menu items associated with it and causes a command to execute immediately An immediate action command is suffixed with an exclamation point National Instruments Corporation G 3 LabWindows CVI User Manual Glossary input control input focus instrument driver Interactive Execution window L Library Tree list box M MB menu new style function definition LabWindows CVI User Manual A function panel control that accepts a value typed in from the keyboard An input control can have a default value associated with it This value appears in the control when
401. tion to generate and a target directory When you have created a sequence and configured each step click OK in the Instrument I O Assistant LabWindows CVI generates three files and adds the files to your project Once you create an Instrument I O Assistant task you can use it in your project Editing the Instrument 1 0 Task You can double click the mxb file in the Project Tree to open the Instrument I O Assistant and edit the task If you make changes directly to the generated files those changes are lost when you edit the task and regenerate the files Using an Instrument I 0 Assistant Task To use your newly created task in a program call the Run Task function declared in the header file as shown in the following code include MyIOTask h double data 0 RunMyIOTask amp data Analyze log or display your data free data Tools Create Edit DAQmx Tasks This command opens the Create Edit DAQ Tasks dialog box Use this dialog box to start creating a new DAQmx task or to launch the NI DAQ Assistant to edit an existing task Creating a DAQmx Task For new tasks you must select whether to store the task in the project or in MAX Tasks stored in MAX are global to the machine on which they are created and can be used by other programs on the same machine Tasks stored in the project are local to that project Project based tasks can be more convenient if you need to share a task definition among multiple develo
402. tly closed files list 2 7 New command 2 5 Open command 2 6 Save All command 2 6 LabWindows CVI User Manual I 12 Save Project As command 2 7 Save Project command 2 7 Save Workspace command 2 7 Set Active Project command 2 6 lt filename gt startup option table A 1 files See also project files adding to project 2 9 browsing source code files 2 53 format conversion when loading 2 43 instrument driver files 5 1 Find command 10 4 Find command for Function Panel Editor 8 4 Find command for Function Tree Editor 7 3 Find command for Help Editor 9 5 Find command for Source and Interactive Execution windows 4 12 Find dialog box Source and Interactive Execution windows 4 12 Variables and Watch windows 10 4 Find Function Panel command 4 19 6 12 Find Next button Find UIR Objects dialog box 3 14 Find Next option Find command Source and Interactive Execution windows 4 13 Variables and Watch windows 10 4 Find Prev button Find UIR Objects dialog box 3 14 Find Prev option Find command Source and Interactive Execution windows 4 13 Variables and Watch windows 10 4 Find Results command 2 58 Find UI Object command 4 19 Find UIR Objects command 3 13 Find UIR Objects dialog box Case Sensitive option 3 13 Edit button 3 14 Find button 3 14 ni com Find Next button 3 14 Find option 3 13 Find Prev button 3 14 Regular Expression option 3 14 search criteria in Search By ring control 3 13 Stop button
403. trol When either of these two controls are active the Select Attribute Constant command appears in the Code menu The action of the command differs based on whether the Attribute or Value control is active Code Select Variable or Expression This command opens the Select Variable or Expression dialog box which provides a list of previously used variables or expressions that have data types that are compatible with the currently active function panel control LabWindows CVI enables the command only when the currently active function panel control is one that accepts text entry When you select a variable or expression from the list LabWindows CVI copies it into the function panel control The Select Variable command can significantly reduce the amount of keyboard entry necessary when using function panels LabWindows CVI User Manual 6 8 ni com Chapter 6 Using Function Panels The Select Variable or Expression dialog box contains the following information Data Type of Control Indicates the data type of the currently active function panel control e Variable or Expression Contains the variables and expressions that have data types compatible with the data type of the control e Data Type Indicates the data type of each variable and expression e Show Project Variables Adds to the list global variables static and non static defined in project files that have been successfully compiled If source code browse information is
404. trols eese eene 3 11 View Menu for the User Interface Editor sss 3 13 View Find UIR Objets nian a enne ins 3 13 View Show Hide Panels e e ear n N eN nE aR EEEREN 3 14 View Bring Panel to Front eeessesseeeeseeeeeeeene enne nnne nnne enne 3 14 LabWindows CVI User Manual viii ni com Contents Niew Next Panel Sucaucotto alte dede nte eon detntietas em 3 14 View Previous Panel eiie iere ey b dere en tee ERR de 3 14 View Preview User Interface Header File esee 3 15 Create Menu for the User Interface Editor sese 3 15 Arrange Menu for the User Interface Editor see 3 15 Arrange Alignment e dese oseseeleaseceeseliecssadevvi cvona coves dE erobern e enhn 3 15 Arranges ATE uec Se cett e ter ei deser ree ee RES een 3 16 Arranges Dist butoi sen eerte ren et renes e Urea deae en a eae enge Ra co 3 16 Arrange Distrib te zie de rettet er eere RO a cere ete seen 3 17 Arrange Control ZPlane Order eese 3 17 Arrange Center Label A ette tt teh eoe YI HERE Nn V Te nube neo 3 17 Arrange Control Coordinates essen ener 3 17 Code Menu for the User Interface Editor sssesseeeeeene 3 17 Code Set Target File essent 3 17 Code Generate erg E RII 3 18 Generating All Code cete eee sert 3 19 Gener
405. ts be liable for any damages arising out of or related to this document or the information contained in it EXCEPT AS SPECIFIED HEREIN NATIONAL INSTRUMENTS MAKES NO WARRANTIES EXPRESS OR IMPLIED AND SPECIFICALLY DISCLAIMS ANY WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE CUSTOMER S RIGHT TO RECOVER DAMAGES CAUSED BY FAULT OR NEGLIGENCE ON THE PART OF NATIONAL INSTRUMENTS SHALL BE LIMITED TO THE AMOUNT THERETOFORE PAID BY THE CUSTOMER NATIONAL INSTRUMENTS WILL NOT BE LIABLE FOR DAMAGES RESULTING FROM LOSS OF DATA PROFITS USE OF PRODUCTS OR INCIDENTAL OR CONSEQUENTIAL DAMAGES EVEN IF ADVISED OF THE POSSIBILITY THEREOF This limitation of the liability of National Instruments will apply regardless of the form of action whether in contract or tort including negligence Any action against National Instruments must be brought within one year after the cause of action accrues National Instruments shall not be liable for any delay in performance due to causes beyond its reasonable control The warranty provided herein does not cover damages defects malfunctions or service failures caused by owner s failure to follow the National Instruments installation operation or maintenance instructions owner s modification of the product owner s abuse misuse or negligent acts and power failure or surges fire flood accident actions of third parties or other events outside reasonable control Copyright Under the copyright laws this publ
406. ts functions with the std cal1 calling convention it is a good idea to explicitly declare the functions LabWindows CVI User Manual 2 64 ni com Chapter 2 Workspace Window as stdcall in the include h file and the source c file rather than relying on the Default calling convention option If you do not explicitly declare the functions as Stdcall in the include file and if another developer uses the object file library file or DLL in LabWindows CVI or an external compiler without setting the default calling convention to stdcal11 the functions do not work correctly e Maximum stack size bytes Your program uses the stack for passing function parameters and storing automatic local variables By setting a stack limit LabWindows CVI can catch infinitely recursive functions and report a stack overflow If you enable the Detect uninitialized local variables at run time option LabWindows CVI uses extra stack space You can adjust your maximum stack size to avoid a stack overflow e Image base address This option specifies the address where LabWindows CVI loads a DLL or executable into memory By specifying the image base address you can avoid relocating DLLs which can slow down the load time of DLLs You also can avoid collisions which occur when LabWindows CVI attempts to load more than one DLL with the same address You can specify any value or you can select the following default values x00400000 for executabl
407. ts in a workspace When you create a new project a dialog box prompts you to add the new project in the existing workspace or to create a new workspace for the project The Edit Workspace dialog box displays the project files you included in your workspace The Edit Workspace dialog box has the following options Project Files Displays a list of projects contained in the workspace Add Adds a project to the workspace You can browse to the project you want to add Remove Removes a project from the workspace Move Up Moves the selected project up one line This list determines the order in which projects appear in the Project Tree Move Down Moves the selected project down one line OK Accepts your changes and closes the dialog box Cancel Closes the dialog box without accepting any changes Edit Project Use the Edit Project dialog box to make changes to projects The Edit Project dialog box has the following options Project Label Contains the name of the project You can type a new name for the project This name identifies the project in the Project Tree Project Files Contains a tree view of the files in the project Use Absolute Path for File Forces LabWindows CVI to store the file path as an absolute path in the project file rather than a path relative to the project when you load this project file from a different location Add Opens the Add Files to Project dialog box where you can select one or
408. u can manually exclude and include lines with the Edit Toggle Exclusion command National Instruments Corporation 4 8 LabWindows CVI User Manual Chapter 4 Source and Interactive Execution Windows Declarations in the Interactive Execution window remain in effect until you select Build Clear Interactive Declarations or Edit Clear Window Use the following rules for executing code in the Interactive Execution window e Make sure that data declarations precede any program statements Function declarations also are necessary unless you disable the Require function prototypes option in the Build Options dialog box in the Workspace window e You cannot include function definitions in the Interactive Execution window LabWindows CVI treats the following statements the same extern int fn void int fn void LabWindows CVI treats the following statements as errors static int fn void static int fn e LabWindows CVI treats all global data declarations in the Interactive Execution window as if they are declared as static unless the extern keyword precedes them If the extern keyword precedes them the global declaration must exist in a loaded instrument or in a file in the project The following data declaration is invalid in the Interactive Execution window extern int x 6 You can drag text from the Interactive Execution window into different LabWindows CVI environment windows Drag code into a Watch window to a
409. uild Errors in Next File command 4 21 Clear Interactive Declarations command 4 21 Compile File command 4 20 Generate Prototypes command 4 21 ni com Insert Include Statements command 4 21 Mark File for Compilation command 4 20 Next Error Item command 4 21 Previous Error Item command 4 21 Workspace window Batch Build command 2 13 Configuration command 2 11 Create Debuggable Dynamic Link Library command 2 11 Create Debuggable Executable command 2 11 Create Distribution Kit command 2 25 Create Release Dynamic Link Library command 2 12 Create Release Executable command 2 12 Create Static Library command 2 13 External Compiler Support command 2 23 Mark Project for Compilation command 2 13 Target Settings command 2 14 Target Type command 2 14 Build Options command 2 64 Button Bar option Find command 4 12 10 4 buttons adding and positioning on toolbar 2 72 C Callback Function option Edit Control dialog box 3 9 Edit Menu Bar dialog box 3 7 Edit Panel dialog box 3 8 callback functions associated with close controls note 3 19 National Instruments Corporation Index generating code for All Callbacks command 3 20 Control Callbacks command 3 21 Main Function command 3 20 Menu Callbacks command 3 21 Panel Callbacks command 3 21 calling convention default 2 64 Cascade Windows command 2 56 Case Sensitive option Find dialog box 4 12 10 4 Case Sensitive option Find UIR Objects di
410. uld contain the Microsoft Visual C import library for your DLL instr lib nstall to application directory Set the relative path to lsib msc Advanced Distribution Kit Options The Advanced Distribution Kit Options dialog box has the following options Executable Filename The name of an executable file to run after the user installation is complete Use the Select button to select a file that you have already added to one of the file groups If you want to run an application that already exists on the target system create and include in one of your file groups a bat batch file that specifies the application you want to run You can use the Windows START utility in the batch file before the application name if you do not want the installer to wait on the launched application to exit Choose this batch file as the executable file to run after installation Command Line Arguments The command line arguments to pass to the executable to run after the installation is complete Use the this option to specify parameters to pass to the program to run after setup The following special variables are available amp dest The application installation directory chosen by the user src The directory that contains setup exe S amp group The installation program group name name The installation name compiler The compiler chosen by the user if you enable the Distribute Objects
411. uments for your program When you run your program in the LabWindows CVI environment LabWindows CVI passes the command line arguments to your main function in the argc and argv parameters If your project makes a DLL you can pass command line arguments to an external program that you run to debug the DLL Specify the external program pathname and command line arguments using Run Specify External Process LabWindows CVI User Manual 2 42 ni com Chapter 2 Workspace Window Run Threads The Threads command opens a dialog box listing the threads in the program you are debugging Use this dialog box to select the threads whose local variables and call stack you want to view When you select a thread from this dialog box and click OK to close the dialog box LabWindows CVI displays the local variables for the selected thread in the variable display and displays the current source position of the thread in a Source window The Stack Trace Up Call Stack and Down Call Stack commands display information about the currently selected thread The watch display shows the thread specific values of the expressions in the Watch window Run Loaded Modules Use this command to open the Loaded Modules dialog box which displays the loaded executables DLLs and drivers used by the process that you are debugging The address range and path of the executable DLL or driver also are shown Instrument Menu for the Workspace Window The Instrument menu is
412. unction panels to call into instrument drivers and libraries in the Library Tree Also you can use function panels to call functions in the project as long as the functions are declared in the Interactive Execution window Thus you can create function panels for functions that you call frequently even if you do not keep the functions in a separate file Accessing Function Panels You can access a function panel for an instrument driver from the Instrument menu or the Instruments folder or for a library from the Library Tree or the Library menu After you select an instrument or library name choose a function panel by making a selection from the Select Function Panel dialog box or from the Library Tree Functions are organized in a multi level structure called a function tree The function tree groups functions into various classes according to the operation they perform When the Select Function Panel dialog box contains class names you can select a class name to view the next level of the function tree until you reach a list of function panels You also can move through the list of functions without using the tree structure Use the Flatten or Flatten Libraries option to replace the function class hierarchy with a list of all National Instruments Corporation 6 1 LabWindows CVI User Manual Chapter 6 Using Function Panels function panels at or below the current level Once you select a function panel the function panel commands Prev
413. up to date by tracking the dependencies between source files and include files Whenever you modify a file LabWindows CVI marks for compilation all source files that include the modified file Prompt for include file paths This option sets LabWindows CVI to prompt you to make a manual search for any header files listed in the include lines that the compiler cannot find When you find them you can automatically insert the appropriate path into the Include Paths list for the project Display status dialog during build This option displays a status dialog box during the build that shows the name of the file being compiled the number of errors and warnings encountered and a percent completed value The project compiles faster when you disable this feature Make O option compatible with CVI 5 0 1 When you enable this option the O option performs as it did in LabWindows CVI 5 0 1 LabWindows CVI compiles the source file without debugging information and writes the obj file to disk in the same directory as the source file To set a file with the O option right click a file in the Project Tree and select Enable O Option from the context menu Uninitialized local variables detection This option generates error messages when you access variables that do not have values assigned to them You can select the following levels Disabled This mode disables uninitialized local variable warnings and errors Co
414. use these breakpoints to interrupt program execution for debugging Breakpoints can be either conditional or unconditional Breakpoints apply to specific lines of code but LabWindows CVI maintains them separately from the source file If you modify the source code outside of the LabWindows CVI environment you might invalidate breakpoint position information If you set a breakpoint on a line that contains no executable code a dialog box appears when you attempt to debug the project This dialog box contains options to delete the breakpoint disable the breakpoint terminate debugging or move the breakpoint to the next line that contains code You can use the Breakpoint function to insert a breakpoint directly in the source file You also can use watch expressions for debugging With watch expressions you can specify that LabWindows CVI suspend execution conditionally without regard to a specific line of code Note Breakpoints and watch expressions apply only to source code modules You cannot set breakpoints in include files eo Note Some system functions on some systems might break execution when called with invalid arguments For example CA FreeMemory might break execution when called with a pointer that was not allocated Breakpoint State When a program reaches a breakpoint LabWindows CVI positions the keyboard cursor at the next program statement to execute and outlines the statement You cannot edit the source code in the window wh
415. user can select the control by pressing Alt and the underlined letter provided that no accessible menu bars contain a menu with the same underlined letter Edit Label Value Pairs Use the Edit Label Value Pairs dialog box to create and edit the contents of ring and list box controls The following items appear in this dialog box e Data Type Selects the data type of the values in the control e Precision Selects how many digits the control displays to the right of the decimal point e Label Specifies a label that appears on the ring or slide control To add a label to a ring or list box control list type the label in the text box and press Enter The highlight moves to Value e Value Specifies the value constant name or expression associated with the label entered in Label To add a value to a ring or list box control list type the value in the text box You can use a constant name or any other valid C expression Press Enter to add the label and value to the ring or list box control list Below Inserts a blank line below the selected line in the list box Above Inserts a blank line above the selected line in the list box e The list box below the Label and Value text boxes displays the labels and the values of items that appear on the ring or list box control e Cut Removes the selected line from the list and places it in the clipboard e Copy Copies the selected line to the clipboard e Pas
416. uses in dialog box labels and for function panels as shown in the following example AppFontSize 30 AppFontBold AppFontBold specifies whether the font that LabWindows CVI uses in dialog box labels and for function panels is bold as shown in the following example AppFontBold Yes National Instruments Corporation A 7 LabWindows CVI User Manual Technical Support and Professional Services Visit the following sections of the National Instruments Web site at ni com for technical support and professional services e Support Online technical support resources include the following Self Help Resources For immediate answers and solutions visit our extensive library of technical support resources available in English Japanese and Spanish at ni com support These resources are available for most products at no cost to registered users and include software drivers and updates a KnowledgeBase product manuals step by step troubleshooting wizards conformity documentation example code tutorials and application notes instrument drivers discussion forums a measurement glossary and so on Assisted Support Options Contact NI engineers and other measurement and automation professionals by visiting ni com support Our online system helps you define your question and connects you to the experts by phone discussion forum or email e Training Visit ni com training for self paced tutorials videos and interactive CDs
417. uses the following factors to determine whether the variable is type compatible with a function panel control e LabWindows CVI reduces data types you declare with the typedef keyword to their most intrinsic type as long as the typedef is known to the compiler For example assume the compiler has processed the following declarations typedef int typeA typedef int typeB typedef typeB typeC A variable of type typea is an exact match for a function panel control that has type typeC e LabWindows CVI considers all numeric types compatible with each other except that floating point variables or expressions are not considered compatible with integer function panel controls e LabWindows CVI considers types that have the same base type but differ in levels of indirection to be compatible For example the following types are all compatible int int int int To be included in the Select Variable or Expression dialog box an expression or a variable name that the compiler does not know must match exactly the data type of the function panel control An example of a variable name not known to the compiler is one used in a function panel from which you insert code into a Source window LabWindows CVI User Manual 6 10 ni com Chapter 6 Using Function Panels B Note An expression or variable name that the compiler does not know can be associated with multiple data types For instance you might use the same variable name in an int cont
418. ut command 3 5 Cut Panel command 3 6 Delete command 3 6 Edit Custom Controls command 3 11 Menu Bars command 3 6 Panel command 3 8 Paste command 3 6 Redo command 3 5 Set Default Font command 3 11 Tab Order command 3 11 Undo command 3 5 LabWindows CVI User Manual when commands are enabled note 3 5 Variables window Edit Value command 10 3 Find command 10 4 Next Scope command 10 4 Previous Scope command 10 5 Watch window Add Edit Watch Expression command 10 5 Delete Watch Expression command 10 6 Edit Value command 10 3 Find command 10 4 Workspace window Add Files to Project command 2 9 Project command 2 8 Workspace command 2 8 Edit Menu Bar dialog box 3 7 Edit Mode command 11 4 Edit Node command 7 2 Edit Panel dialog box Attributes for Child Panels section 3 9 Panel Settings section 3 8 Quick Edit Window 3 9 Source Code Connection section 3 8 Edit Project dialog box Add button 2 8 Include Paths button 2 8 Project Files control 2 8 Project Label control 2 8 Remove button 2 8 Replace button 2 8 Source Code Control button 2 9 Use Absolute Path for File option 2 8 Edit Tabbing Order dialog box 3 11 Edit Value command 10 3 11 4 Edit Watch Expression command 10 5 Edit Workspace dialog box 2 8 Add button 2 8 Move Down button 2 8 I 10 ni com Move Up button 2 8 Project Files control 2 8 Remove button 2 8 editing tool 3 2 Editor Preferences command 4 27 EditorFo
419. ut keys for a specified string Expand All Opens all items and subitems in the shortcut key list Collapse All Closes all items and subitems in the shortcut key list Options Colors Use the Colors menu item to select colors for the Workspace window Source window Interactive Execution window Standard I O window Watch window Variables window String Display window and Array Display window The Colors menu item does not affect dialog boxes function panels and the User Interface Editor LabWindows CVI User Manual 2 70 ni com Chapter 2 Workspace Window The Colors menu item opens the Environment Color Preferences dialog box The dialog box contains the purpose of the color and shows its current color state To change the color select an item in the list and click the colored box next to Color A color pop up palette appears Move the mouse pointer over the color you want and click the color The color change takes effect immediately in all LabWindows CVI windows that are currently visible To change all the colors to their default state click Default All currently visible LabWindows CVI windows immediately reflect the color changes If you want to accept changes you made click OK If you want to revert to the state before the dialog box appeared click Cancel The Environment Color Preferences dialog box also contains eight color types for syntax coloring When you enable the Use System Colors option several color types ass
420. utable DLL or static library LabWindows CVI uses the base filename of the target Otherwise LabWindows CVI uses the base name of the project file Installation Name The installation window title and the text displayed in the upper part of the installation window If you select the Use Default option LabWindows CVI sets the name using the same priority as for the Start Programs Sub Folder e Installer GUID The Globally Unique Identifier GUID used to identify this installer to the Windows Installer MSI engine on the target computer Changing the GUID allows another version of the distribution kit to be installed on the same computer at the same time Keep the following points in mind when you change the GUID of the distribution kit A GUID change does not cause an already installed version of your distribution kit to be removed automatically during the installation on the target machine Instead changing the GUID allows your project to be installed side by side with a previously installed version of your program For example after completing the 1 0 version of your project you can generate a new GUID which would allow the 2 0 version of your project to be installed on the target computer at the same time When you change the GUID the installer adds an additional entry in the Add Remove Programs dialog box in the Windows Control Panel If you change the GUID National Instruments recommends that you also change the Insta
421. velopers Guide You can modify the following four parts of an instrument driver e You can modify the function tree by selecting the p file using the File Open Function Tree fp command selecting Instrument Edit right clicking the Instruments folder and selecting Edit Instrument or selecting Tools Edit Function Tree from a Source window that contains the instrument driver source or include file Youcan modify the function panels by selecting Options Edit Function Panel from a Function Panel window selecting Edit Edit Function Panel Window from a Function Tree Editor window or selecting Tools Edit Function Panel from a Source window that contains the instrument driver source or include file when the text cursor is over the name of the function in the driver Youcan modify the instrument driver program file by selecting Instrument Edit in a Function Panel window selecting Tools Go to Definition from a Function Panel Editor window or selecting Go to Definition from the context menu in the Function Tree Editor e You can modify the instrument driver include file by selecting the h file using the File Open Include h command by selecting Tools Go to Declaration from a Function Panel Editor window or by selecting Go to Declaration from the context menu of the Function Tree Editor Building IVI Instrument Drivers For information about creating an IVI instrument driver refer to the LabWindows CVI Instrument Dr
422. ves the workspace file whenever the workspace contains significant new or modified information If you disable this command the workspace file is saved only in the following cases When you select the Save Save As or Save All command from the File menu e When you unload the workspace or exit LabWindows CVI LabWindows CVI prompts you to save the file in this case Notice that if you disable the Auto Save Workspace command LabWindows CVI does not save the workspace file when you start debugging or running a program even if you set the Save Changes before Debugging option in the Environment dialog box to Always or Ask File Most Recently Closed Files For your reference two lists appear in the File menu Alistof the four most recently closed files other than workspace and project files Alist of the four most recently closed workspace or project files File Exit LabWindows CVI Use the Exit LabWindows CVI command to close the current LabWindows CVI session If you have modified any open files since you last saved them LabWindows CVI prompts you to save them National Instruments Corporation 2 7 LabWindows CVI User Manual Chapter 2 Workspace Window Edit Menu for the Workspace Window This section explains how to use the commands in the Workspace window Edit menu Edit Workspace LabWindows CVI stores in the workspace the settings that do not affect the way your project builds You can include multiple projec
423. while it is disabled nothing happens The Undo command reverses your last edit action and the screen returns to its previous state Edit actions are stored on a stack so that you can undo a series of your edit actions The stack can store up to 100 edit actions To set the size of the undo stack select Options Preferences and click More The Redo command reverses your last Undo command restoring the screen to its previous state Redo is helpful when you use the Undo command to reverse a series of your edit actions and accidentally go too far The Redo command is enabled only when your previous action was the Undo command Any other action disables the Redo command Actions that you can undo and redo appear dynamically in the menu For example when you move a control the menu presents the Undo Move Control option Edit Cut and Copy To cut or copy controls to the clipboard select the control you want to place on the clipboard and then select Edit Cut or Copy LabWindows CVI places the selected control and its associated help on the clipboard If you used the Copy command the control remains in the window Use the Cut command to delete controls from the window Controls you cut or copy do not accumulate on the clipboard LabWindows CVI replaces a control every time you cut or copy a control to the clipboard To use the Cut or Copy commands complete the following steps 1 Select the control you want to place on the clipboard by click
424. windows works in the same way as the Colors command for the Workspace window Refer to the Options Menu for the Workspace Window section of Chapter 2 Workspace Window for more information LabWindows CVI User Manual 4 28 ni com Chapter 4 Source and Interactive Execution Windows Options Syntax Coloring When you enable the Syntax Coloring command LabWindows CVI color codes the various types of tokens in your source and include files LabWindows CVI can color code the following types of tokens e C keywords e Identifiers e Comments e Integers e Real numbers e Strings e Preprocessor directives e User defined tokens To set the color for a token type select Options Colors To create the list of user defined tokens select Options User Defined Tokens for Coloring Options User Defined Tokens for Coloring The User Defined Tokens for Coloring command opens a dialog box in which you can define tokens for display in a unique color when you enable the Syntax Coloring command Use the Colors command to set the color Each token must be in the form of a valid C identifier For each token you can choose whether to save it in the workspace file or from one LabWindows CVI session to another Options Translate LW DOS Program Use the Translate LW DOS Program command to convert a source file written in LabWindows for DOS so that it can run in LabWindows CVI Options Generate DLL Import Source This command generates source co
425. x and typing errors and maintain an organized source code file with a consistent programming style Because a CodeBuilder program compiles and runs immediately you can develop and test the project you create concentrating on one function at a time When you choose Code Generate All Code LabWindows CVI places the include statements variable declarations callback function skeletons and main function in the source code file you specify as the target file Each function skeleton contains a switch construct with a case statement for every default event you specify You can set default events for control callback functions and panel callback functions by choosing Code Preferences Although skeleton code runs you must customize it to implement the actions you want to take place for each event When you generate code for a specific control or panel callback function LabWindows CVI places the skeleton code for that function in the target file in the same complete format used for the Code Generate All Code command However this code might not run In order for a project to run a main function must exist If you lack the main function or any of the callback functions you reference in the uir file the code is incomplete It is good practice to use the Code Generate All Code option first to produce a running project from the current state of the uir file Then after adding panels controls or menu items to the uir file select Code Generat
426. x the other dimensions Use the Options Reset Indices command to specify which plane of the array to display The following figure shows the Array Display for a three dimensional array cv Array Display data File Edit View Format Run Window Options Help double data 4 10 3 Slice 0 R C Index 0 4 1 0 1 2 711453264 642275207 E 643073078 656982955 055561444 313131297 271076430 160075168 642275207 643904900 790650392 711469246 313091772 668027749 642275208 152026372 118307300 693406818 642275208 642275207 642275207 2461146938 642276201 643073078 711469246 642275208 642275208 159903868 642275208 055561444 0 1 2 3 4 5 6 7 8 9 NNN D OS PO PO OS P9 ER D n3 co ro ro Bro ro EP no hJ h2 CO C C D P2 P9 P9 hO The Array Display window shows a two dimensional view By default the next to last dimension appears as rows the last dimension appears as columns and the indices of the other dimensions remain constant at 0 Select Options Reset Indices to specify the dimensions you want to display as rows and columns and set the other dimensions to constant values When you select Reset Indices for a three dimensional array the Reset Indices dialog box appears The dialog box shows the size and display index for each array dimension The letter R indicates the dimension displayed as rows and the letter C indicates the dimension displayed as columns The indices for
427. xpression Uses certain characters in Find What as regular expression characters instead of literal characters Refer to the table in the Regular Expression Characters section for a list of regular expression characters Multiple Files Includes multiple files in the search To search multiple files specify the following options File Types Enter the file extension s of the file types you want to search LabWindows CVI keeps a history of the files types you select To access the history click the arrow to the right of File Types or use the keyboard arrow keys Directory Browse to or enter the directory to search The search includes all files with the specified extension in this directory and its subfolders LabWindows CVI keeps a history of selected directories To access the history use the keyboard arrow keys Don t Search Subfolders Enable to search only the top level folder you have specified By default the multiple files search includes subfolders A Additional Files Select other files you want to include in the search Additional Files lists files related to the current workspace Use the buttons to the right of Additional Files to select or deselect files quickly Selected Text Only Searches only within the region of highlighted text in the Source window when the highlighted text extends beyond one line LabWindows CVI automatically enables this option when you open the Find dialog box after selecti
428. xpression that appears in a function panel Highlight the expression you want to see and select Code Add Watch Expression The Watch window appears with the expression highlighted View Menu for Function Panel Windows This section contains detailed descriptions of the View menu options for Function Panel windows View Toolbar Use the Toolbar command to toggle between viewing or not viewing the Function Panel window toolbar National Instruments Corporation 6 11 LabWindows CVI User Manual Chapter 6 Using Function Panels View Error If an error occurs during the execution of a function panel you can use the Error command to toggle between the error message and the code in the generated code box View Include File The Include File command displays the include file associated with the library or instrument driver in a Source window The include file contains all the function prototypes for the library or instrument driver View Current Tree The Current Tree command displays the Select Function Panel dialog box for the most recently used function panel making it easy for you to return to the location of the current panel in the function tree View Function Panel History The Function Panel History command displays a scrollable list of the function panels you have used during the current LabWindows CVI session You can display function panels from the list as new windows or you can overwrite the current Function Pan
429. y real arrays in either floating point or scientific notation Run Menu for Array and String Display Windows The commands in the Run menu work in the same way as the commands for the Run menu for the Workspace window Refer to the Run Menu for the Workspace Window section of Chapter 2 Workspace Window for more information National Instruments Corporation 11 5 LabWindows CVI User Manual Chapter 11 Array and String Display Windows Window Menu for Array and String Display Windows The commands in the Window menu work in the same way as the commands for the Window menu for the Workspace window Refer to the Window Menu for the Workspace Window section of Chapter 2 Workspace Window for more information Options Menu for Array and String Display Windows This section contains a detailed description of the Options menu for the Array and String Display windows Options Reset Indices Use Reset Indices in the Array Display window to set which array dimension appears as rows and which array dimension appears as columns Use Reset Indices in the String Display window to set which string array dimension appears as rows Options Display Entire Buffer This command is valid only in the String Display window By default the String Display window displays only the characters preceding the first ASCII NUL To see characters beyond the NUL select Options Display Entire Buffer Help Menu for Array and String Display Windows
430. you want to load the file into another editor use the Line Terminator option as follows Ifyou want to load a text file into DOS Windows editors select CR LF termination Ifyou want to load a text file into a Macintosh editor select CR termination Show function prototypes and struct union fields while typing Select whether LabWindows CVI shows the prototype of the function when you type the open parenthesis after a function name Move cursor to end of pasted text Put the cursor at the end of the pasted text Leave this option blank to put the cursor at the beginning of the pasted text Options Toobar Use this option to open the Customize Toolbars dialog box For more information about customizing the toolbar refer to the Toolbars in LabWindows CVI section of Chapters 2 Workspace Window Options Bracket Styles Use the Bracket Styles command to set the location of curly brackets when the following commands generate them in programs Edit Insert Construct in a Source window Code Generate in the User Interface Editor You can specify two bracket styles one for functions and another for statements such as if and switch statements Options Font Use the Font command to select the font and font size for text in Source windows Interactive Execution windows and Variables windows You can select from a list of monospace fonts Options Colors The Colors command in the Source and Interactive Execution
431. ypes of help information that you can enter instrument class function and control You can edit instrument and class help from the Function Tree Editor and edit function and control help from the Function Panel Editor Each of the editors has an Edit menu Select Edit Edit Help in the Function Tree Editor to add instrument and class help Select Edit Function Help and Edit Control Help in the Function Panel Editor to add function panel and control help Complete the following steps to add help 1 From either the Function Tree Editor or the Function Panel Editor select the instrument driver class function or control that you want to add help to 2 Select Edit Edit Help Edit Node Edit Function Help or Edit Control Help The Help Editor window appears You also can right click the instrument driver or class in the Function Tree Editor and select Edit Help from the context menu You can right click the panel in the Function LabWindows CVI User Manual 9 2 ni com Chapter 9 Adding Help to Instrument Drivers Panel Editor and select Function Help In the Function Panel Editor right click the control and select Control Help to edit help for individual controls 3 Enter help in the text box Viewing Instrument Driver Help You can access help for instrument drivers in the following ways e To view instrument driver help select Instrument Help in the Class Help panel accessible through the Select Function P
432. ystem project After you attach a source code control provider this button changes to Change Use Change to change source code control system projects e Create Create a new source code control system project National Instruments Corporation 2 63 LabWindows CVI User Manual Chapter 2 Workspace Window Perform same actions for h file as for uir file Because LabWindows CVI generates a header file for the uir file each time you save the uir file it is a good idea to perform the same source code actions on the header file as you perform on the uir file Never When you perform a source code control action LabWindows CVI does not perform the same action on the header file and on the associated uir file Ask When you perform a source code control action LabWindows CVI asks if you want to perform the same action on the header file and on the associated uir file Always When you perform a source code control action LabWindows CVI automatically performs the same action on the header file and on the associated uir file Suppress CVI Error Message dialog Some source code control systems display their own dialog boxes when errors occur during a source code control operation Enabling this option suppresses all LabWindows CVI error dialog boxes displayed when an error is reported by the source code control system Always show confirmation dialog Displays a dialog box where you can confirm your source
433. zard when you generate all code When you choose Code Generate All Code LabWindows CVI produces the include statements the variable declarations the function skeletons and the main function and places them in the target file The callback functions you selected to terminate program execution include a call to the User Interface Library QuitUserInterface function Unless you selected the Code Preferences Always Append Code to End option LabWindows CVI places the skeleton code for each callback function at the cursor position in the target file If the cursor is inside an existing function LabWindows CVI repositions the cursor at the end of that function before inserting the new function CodeBuilder places all functions of one type panel callback control callback or menu callback together in the source file Any panel callbacks are placed first in the source file control callbacks are placed next and menu callbacks are placed last You can set the default settings of generated code by selecting Code Preferences Function skeletons for control and panel callbacks include the complete prototype the proper syntax a return value and a switch construct containing a case for each default control or panel event Function skeletons for menu callbacks include the complete prototype and open and close brackets You can set the default events by selecting Code Preferences You can set the location of the open and close brackets by selecting O
434. ze command 2 45 Flatten checkbox 2 45 6 1 Function Names option 2 45 New Window option 2 45 Select UIR Constant command 6 7 Select UIR Constant dialog box 6 7 Select Value command 6 7 Select Variable or Expression command 6 8 Select Variable or Expression dialog box Build The Project 6 9 Data Type 6 9 data type compatibility 6 10 Data Type of Control 6 9 items included in list box 6 9 Show Project Variables option 6 9 sorting of list box entries 6 9 Variable or Expression list box 6 9 Selected Text Only option Find command 4 12 separators adding and positioning on toolbar 72 Set Active Project command 2 6 Set Default Font command 3 11 Set Target File command 3 17 6 11 Set Target File dialog box 3 17 Shortcut Key Edit Menu Bar dialog box 3 7 shortcut options Create Distribution Kit dialog box 2 31 Show build error window for warnings option 68 Show Completions command 4 11 Show Differences command Source Code Control submenu 2 53 Show History command Source Code Control submenu 2 53 LabWindows CVI User Manual Index Show Info command Edit Instrument dialog box Workspace window 2 44 Show Prototype command 4 11 Show Hide Panels command 3 14 signed unsigned pointer mismatches detecting 2 66 single dimensional array displaying in Array Display window figure 11 1 skeleton code definition 1 4 3 3 function skeletons 3 19 placement in target file 3 19 Sleep Policy CVI Environmen
Download Pdf Manuals
Related Search
Related Contents
"user manual" MX7 User's Guide - Honeywell Scanning and Mobility Copyright © All rights reserved.
Failed to retrieve file