int PlotDigitalLinesMultiBus (int panelHandle, int controlID, void *dataArray, int numberOfPoints, int numBuses, int dataType, int dataSequence, unsigned char *numPlotLinesArray);
Plots data for multiple buses to a digital graph.
Use PlotDigitalLinesMultiBus to send in each data sample from each line as a separate value of the data array. Call PlotPackedDigitalLinesMultiBus to send packed data in which each data array element contains data values for multiple lines within a bus.
If you use NI-DAQmx to acquire the data you plot with PlotDigitalLinesMultiBus, you must call DAQmxReadDigitalLines as the read function. You also must group the lines from each bus into a channel to ensure that PlotDigitalLinesMultiBus can plot the data correctly.
Input | ||||||||||||||
Name | Type | Description | ||||||||||||
panelHandle | integer | Specifier for a particular panel that is currently in memory. You obtain this handle from LoadPanel, NewPanel, or DuplicatePanel. | ||||||||||||
controlID | integer | The defined constant, located in the .uir header file, that you assigned to the control in the User Interface Editor, or the ID returned by NewCtrl or DuplicateCtrl. | ||||||||||||
dataArray | void * | Array that contains the values to plot on the digital graph. The data type must be of the type specified by dataType. If the value of a data item is non-zero, then the line is high; if the value is 0, then the line is low. You can group the data into multiple buses, as specified in numBuses. If you plot data for more than one bus, all of the buses must have the same number of samples. Otherwise, the displayed data will be incorrect. |
||||||||||||
numPoints | integer | The number of points to plot. This value controls the number of points to plot even if the number of elements in dataArray is greater than the numPoints. numPoints must be greater than zero. |
||||||||||||
numBuses | integer | The number of data buses to plot. If you specify more than one bus in numBuses, all of the buses must contain the same number of lines. However, some of the lines can be invalid. You must pad the data in dataArray to ensure the buses have the same total number of lines, even if you want to plot only some of the lines for a particular bus. Use the numPlotLinesArray parameter to specify which lines to plot for each bus. | ||||||||||||
dataType | integer | The data type of dataArray. The data must be one of the following valid integer data types:
|
||||||||||||
dataSequence | integer | Determines the order in which LabWindows/CVI plots the dataArray values. If numBuses is 1, LabWindows/CVI ignores this value. The data within an individual bus is always interleaved. VAL_INTERLEAVED—LabWindows/CVI plots the data values for the first sample of the first bus, then the data values for the first sample of the second bus, and so on. VAL_NON_INTERLEAVED—LabWindows/CVI plots all of the data values for the first bus, then all of the data values for the second bus, and so on. If you use NI-DAQmx to acquire the data array, you must use the appropriate dataSequence. |
||||||||||||
numPlotLinesArray | unsigned char * | Array that contains the number of lines to plot per bus. Because each bus must have the same total number of lines, you can use numPlotLinesArray to specify how many lines are valid. For example, if you pass in a dataArray that has three buses, a numPlotLinesArray value of {8, 1, 1} would indicate that the first bus contains eight valid lines, and the second and third buses contain one valid line each. Because all three buses must contain the same total number of lines, you must pad the second and third buses with seven invalid lines each. LabWindows/CVI would divide the dataArray values evenly among the 24 total lines but would plot only the 10 valid lines. |
Name | Type | Description | ||||
status | integer | Return value indicating whether the function was successful. A negative number indicates that an error occurred.
|