# Synopsis

PDX_MSGT gdx_UserAttributeDefine(long option, char *attribute_name, MDA_COUNT nfields, char *field_names[], char field_types[])

# Purpose

Define user attribute.

# Description

Define a new user attribute using the specified name and field definitions. If a user attribute with the specified name is already defined, the field definitions will be compared. If the field definitions are different an error will be returned, otherwise processing will continue.

# Input

## option

Not used

## attribute_name

Name of user attribute

## nfields

Number of fields in user attribute

## field_names

Array of field names

## field_types

Array of field types (GDX_USER_ATTRIBUTE_INTEGER_FIELD, GDX_USER_ATTRIBUTE_REAL_FIELD, GDX_USER_ATTRIBUTE_STRING_FIELD, GDX_USER_ATTRIBUTE_POINTER_FIELD, GDX_USER_ATTRIBUTE_ARRAY_FIELD)

# Return

          GDX_NOERR
          GDX_INVALID_USER_ATTRIBUTE
          GDX_INVALID_FIELD_TYPE
          GDX_DUPLICATE_USER_ATTRIBUTE
          .fi