Reads an element from a Lossy Stream channel or signals the channel to abort. This endpoint is the same as the Read endpoint except that it has an abort input and an aborted? output. You can use the abort capability of the Lossy Stream channel to close a channel abruptly, ignoring any data left in the channel buffer. You must use this endpoint together with the Write With Abort endpoint.


icon

Inputs/Outputs

  • ci32.png timeout in ms (-1)

    timeout in ms is the time, in milliseconds, that this endpoint has to read the elements from the channel. The default value is -1, which means there is no time limit.

  • cqueuern.png channel

    channel is the channel wire that connects this endpoint to a writer endpoint.

  • cbool.png abort

    abort specifies whether to abort this channel. If abort is TRUE, this endpoint marks the channel as closed and ignores further calls to read. Meanwhile, the aborted? output returns TRUE on the next call of this endpoint.

  • ibool.png timed out?

    timed out? returns TRUE if the amount of time specified by timeout in ms elapses before the endpoint reads the data specified in element from the channel. This output returns FALSE if aborted? is TRUE. If timed out? is TRUE, element valid? and last element? will be FALSE.

  • ibool.png gap?

    gap? returns TRUE if any data was lost because an endpoint attempted to write to a full channel between the previous read operation and this one.

  • ibool.png element valid?

    element valid? returns TRUE if the element was read successfully. This output returns FALSE if a timeout occurs, if the channel closes without a valid last element, or if the channel aborts.

  • isgl.png element

    element returns the data that this endpoint reads from the channel. This output returns the default value of the transmission data type if a timeout occurs, if the channel closes without a valid last element, or if the channel aborts.

  • ibool.png last element?

    last element? returns whether this is the last element that the endpoint reads from the channel. last element? can be TRUE even if element valid? is FALSE, which means that the last element was already written to the channel during the previous iteration or the channel closes without a valid last element. This output returns FALSE if a timeout occurs or if the channel aborts.

  • ibool.png aborted?

    aborted? returns TRUE if abort occurred on this endpoint or the writer endpoint connected to the channel. If aborted? is TRUE, further calls to this endpoint will do nothing except returning aborted? TRUE again.

  • ii32.png count

    count returns the number of elements in the channel after this endpoint updates the channel. Use this output to monitor the relative writing and reading speed of the channel endpoints and make adjustments, if necessary.

  • FPGA Module Details

    The following details apply when you use this object in an FPGA VI.

    Note The following details are subject to change with each version of the LabVIEW FPGA Module.
    Single-Cycle Timed Loop Not supported.
    Usage

    For arrays, this endpoint supports only fixed-sized one-dimensional arrays of supported data types. This endpoint does not support variable-sized arrays even if the array resolves to a single size at compile time.

    This endpoint does not support LabVIEW classes.

    If you use this endpoint with the single-precision floating-point data type, refer to the following topics for resource use, latency, and single-cycle Timed Loop support implications.
    Resources This endpoint shares resources with the writer endpoint used together in the channel instance. The writer endpoint requires FPGA resources proportional to the number you specified in size.
    Notes A channel terminal of a non-reentrant subVI can be connected to only one channel. If a non-reentrant subVI is called from multiple locations, the channel wires connected to a given terminal must resolve to the same channel at compile time.