HELP
An object that creates and uses named pipes
for I/O.  To/From Named Pipe is available
only in HP VEE-Test.

USE
Named pipes are tools for programmers who
wish to implement interprocess communication.

You must add one or more transactions to
To/From Named Pipe to read or write data.  To
do this, click on Add Trans in the object
menu.

LOCATION
I/O ==> To/From Named Pipe

OPEN VIEW PARAMETERS
The open view shows the list of transactions
to be executed.

The Write Pipe and Read Pipe fields can be
added as control inputs.

OBJECT MENU

* Config - Allows you to view and edit the
configuration that determines the end-of-line
character and formatting for arrays.

* Add Trans - Adds a transaction to the end
of the list.

* Insert Trans - Inserts a transaction before
the currently highlighted transaction.

* Cut Trans - Cuts (deletes) the currently
highlighted transaction, but saves it in the
transaction "cut-and-paste" buffer.

* Copy Trans - Copies the currently
highlighted transaction to the transaction
"cut-and-paste" buffer.

* Paste Trans - Pastes a transaction,
previously "cut" or "copied" to the buffer,
in the position before the currently
highlighted transaction.

NOTES
All To/From Named Pipe objects contain the
same default names for read and write pipes.
Be certain that you know which pipe you
really want to read or write.

If the pipes do not exist before To/From
Named Pipe operates, then they are created.
However, there are some overhead costs; if
the pipes exist beforehand, the model runs
quicker.  These pipes are created for you
automatically if they do not already exist:
* /tmp/read_pipe
* /tmp/write_pipe

To create additional pipes, use the
operating system command mknod.

Named pipes are opened when the first Read
or Write transaction to that pipe operates
after PreRun.  All named pipes are closed at
PostRun.  The EXECUTE CLOSE READ PIPE and
EXECUTE CLOSE WRITE PIPE transactions allow
the named pipes to be closed at any time.

Because of the behavior of named pipes, it
is easiest to structure your ToFrom Named
Pipe transactions to transmit known or easily
parsed data blocks.  For example, if you are
transmitting strings, determine the maximum
length block you wish to transmit and pad
shorter strings with blanks.  This avoids the
problems of trying to read more data from a
pipe than is available and of leaving
unwanted data in a pipe.

To help prevent a READ transaction from
hanging until data is available, use a READ
IOSTATUS DATA READY transaction in a separate
To/From Named Pipe object.  This transaction
returns a 1 if there is at least one byte to
read, and a 0 if there are no bytes to read.

To read all the data available on the read
pipe until the read pipe is closed, use a
READ ...  ARRAY TO END transaction.

If you are running diskless, be certain
you Read and Write to uniquely named pipes.
Otherwise several workstations on the same
diskless cluster may attempt to read/write to
the same named pipe, which will cause
contention problems.

SHORT CUTS
To quickly insert a transaction, place the
cursor on a transaction.  Press [CTRL-O] to
insert a transaction over the transaction
where you placed the cursor.

To quickly delete ("kill") a transaction,
place the cursor on that transaction and
press [CTRL-K].

To paste a transaction from the "kill"
buffer press [CTRL-Y].

To quickly move to the next or previous
transaction, press [CTRL-N] or [CTRL-P]
respectively.

SEE ALSO
From, From File, FromStdIn, To File, ToStdIn,
and To.

"Using Transaction I/O" in Using HP VEE,
chapter 12.
