# Synopsis

PDX_MSGT gcr_Loop(long option, MDA_PTR orig_db_ptr, MDA_COUNT num_of_edges, struct t_gdx_loop_edges *edges, int gdx_model, MDA_PTR *gdx_loop_ptr)

# Purpose

Create a GDX Loop.

# Description

Given the number of edges, and the structure of senses and edges create a GDX Loop. The sense flags indicates the senses of the edges with respect to the loop, PDX_TRUE means the sense agrees.

The orig_db_ptr argument should contain the database pointer of the entity that the new entity was created from (usually this should be obtained by the calling routine via mda_GetOrigDbptr) or MDA_NULL_PTR. See the mda_intro man page for more information about predecessor entities.

# Input

## option

### GCR_NOVALIDATE

No validation will occur on the input data.

## orig_db_ptr

The original entities orig_db_ptr as obtained from the mda_GetOrigDbptr call, or MDA_NULL_PTR

## num_of_edges

Number of edges that make up the Loop, must be > 0.

## edges

MDA memory contaings structures of the senses and database pointers of edges that make up the loop. Always consumed by this function even on error.

## gdx_model

The GDX model for entity creation

# Output

## gdx_loop_ptr

Entity database pointer of the GDX Loop

# Tolerances

          .fi

# Return

          GCR_NOERR
          GCR_INVALID_MODEL
          Low level error return
          .fi