m_getvalues_layout() — Query layout values of a layout object (bidi data)

Standards

Standards / Extensions C or C++ Dependencies

ISO C
XPG4
C99

both z/OS V1R2

Format

#include <sys/layout.h>

int m_getvalues_layout(const LayoutObject layout_object, LayoutValues values,
                       int *index_returned);

General description

The m_getvalues_layout() function is part of the support for handling of bidirectional (Bidi) conversion of data between Visual (MVS™) and Implicit (z/OS® UNIX) formats. Initial support is for Arabic and Hebrew data.

The m_getvalues_layout() function is used to query the current setting of layout values within a LayoutObject. The layout_object argument specifies a LayoutObject returned by the m_create_layout() function. The values argument specifies the list of layout values which are to be queried.

Each value element of a LayoutValueRec must point to a location where the layout value is stored. For example, if a layout value is of type T, the argument must be of type T*. The values are queried from the LayoutObject and represent its current state.

If the layout value name has QueryValueSize OR-ed to it, instead of the value of the layout value, only its size is returned. This option can be used by the caller to determine the amount of memory needed to be allocated for the layout values queried.

It is the user's responsibility to manage the space allocation for the layout values queried.

For a detailed description of bidirectional layout transformation, see Bidirectional Language Support in z/OS XL C/C++ Programming Guide.

Returned value

If successful, m_getvalues_layout() returns 0.

If any value cannot be queried, m_getvalues_layout() stores into index_returned the (zero-based) index of the value causing the error. It returns -1 and sets errno to one of the following values:

Error Code
Description
EINVAL
The layout value specified by index_returned is unknown or its value is invalid or the argument layout_object is invalid.

Related information