CORBA 2.6.1 Programmer's Reference

Saves an Fw_MD and its buffer for later reuse. This is the preferred method for disposing of an
Fw_MD.
static Fw_MD *get_3_tuple( const unsigned long pv_buffer_length );
Returns a new or recycled Fw_MD that is associated with a new or recycled buffer of the size
indicated by pv_buffer_length. The default size
(Fw_Message::DEFAULT_BUFFER_SIZE) should be passed as pv_buffer_length
unless a larger buffer is desired for efficiency reasons.
Note:
Because NSDEFw_GFS::Receive_EH uses the default buffer size for all
READUPDATEX calls, you should not use buffers larger than
default@ORB{io_size} with Guardian file system or Pathway I/O to NonStop
CORBA processes.
char *get_ip_base( void );
Returns a pointer to the first byte in the physical buffer associated with the target object.
char *get_ip_user_read( void );
Returns a pointer to the next byte in the physical buffer where the Fw_MD will next read or
skip_read. The original value is ip_base. ip_user_read is incremented during read and
skip_read operations.
char *get_ip_user_write( void );
Returns a pointer to the next byte in the physical buffer that the Fw_MD will write to. The original
value is ip_base. ip_user_write is incremented during write and skip_write
operations.
unsigned long get_iv_data_bytes( void );
Running total of data bytes available for consumption in the physical buffer. The original value is
zero. This value is incremented during write and skip_write operations, and decremented
during read and skip_read operations.
unsigned long get_iv_free_bytes( void );
Running count of how many bytes remain for writing in the physical buffer. The original value is
the size of the physical buffer. This value is decremented during write and skip_write
operations.
unsigned long get_iv_size( void );
The size of the physical buffer.
unsigned long read( char *pp_sink, const unsigned long pv_count );
Attempts to copy pv_count bytes from the physical buffer, starting from ip_user_read, to
the location pointed to by pp_sink. The result is the number of bytes actually transferred, which
will be lesser of pv_count and iv_data_bytes. iv_data_bytes is decremented by the
count actually transferred, and ip_user_read is incremented by pv_count.
void reset( void );