bsp_hpmove(3)

NAME
bsp_hpmove - a lean method for moving a BSMP packet from the system queue.

C SYNOPSIS
#include "bsp.h"

int bsp_hpmove(void **tag_ptr_buf,void **payload_ptr_buf);

DESCRIPTION
The operation bsp_hpmove is a non-copying method of receiving messages that is available in languages with pointers such as C, but not vanilla Fortran. bsp_hpmove is a function which returns -1, if the system buffer is empty. Otherwise it returns the length of the payload of the first message in the buffer and:

a)  places a pointer to the tag in tag_ptr_buf ;

b)  places a pointer to the payload in payload_ptr_buf ;

c)  removes the message from from the incoming system buffer.

SEE ALSO
bsmp(3) ,bsp_send(3), bsp_set_tagsize(3), bsp_qsize(3), bsp_get_tag(3), bsp_move(3) ``A proposal for the BSP Worldwide Standard Library (preliminary version)'' Mark W. Goudreau, Jonathan M. D. Hill, Kevin Lang, Bill McColl, Satish B. Rao, Dan C. Stefanescu, Torsten Suel, Thanasis Tsantilas. Oxford University Computing Laboratory, April 1996. See http://www.bsp-worldwide.org for more details.

BUGS
Problems and bug reports should be mailed to bsplib-bugs@comlab.ox.ac.uk

AUTHORS
The Oxford BSP Toolset implementation of BSPlib was written by Jonathan.Hill@comlab.ox.ac.uk
http://www.comlab.ox.ac.uk/oucl/people/jonathan.hill.html