OMFret_name_array_ptr


Synopsis


       INTEGER FUNCTION OMFret_name_array_ptr(parent_id,
      . name,
      . mode,
      . size,
      . type)
#include <avs/omf.inc>
       INTEGER parent_id(OIDSIZ)
       INTEGER name, mode
       INTEGER size, type

Description

For a complete description of this function, see .

Arguments

parent_id

The id of an object, expressed as an integer.

name

The name of one of parent_id's immediate subobjects, expressed as an integer.

mode

An integer specifying the mode in which to retrieve the the value for the array. The following constants are predefined in the include file omf.inc :

•      OM_GET_ARRAY_RD

•      OM_GET_ARRAY_RD_COPY

•      OM_GET_ARRAY_RW

•      OM_GET_ARRAY_WR

size

The total number of values in the array, expressed as an integer. In order to pass the NULL reference, set the value to FPNULL (defined in the include file omf.inc ).

type

Integer code for the array's data type. In order to pass the NULL reference, set the value to FPNULL (defined in the include file omf.inc ).

Returned value

The memory location of the returned array. On failure, 0 is returned.

Example


C return the array value of object array for RD access
#include <avs/omf.inc>
       INTEGER parent_id(OIDSIZ)
       INTEGER type, iaddr, offset, size
       REAL base(1)
       ...
       iaddr = OMFret_name_array_ptr(parent_id,
      . OMFstr_to_name('array'),
      . OM_GET_ARRAY_RD,
      . size,
      . type)
       IF (iaddr .EQ. 0) THEN
PRINT*,'Error getting array value of object array'
        ...
       ENDIF
C
C continue only for iaddr .ne. 0
       offset = ARRFoffset(iaddr,base,DTYPE_FLOAT)
C
C use the values of the array
       ...
       CALL ARRFfree(iaddr)