As a broad outline, applications use the NDG_ package as follows:
This is a complicated example, probably more complicated than would be used in practice,
but it highlights the facilities of the GRP and NDG packages, e.g. wild cards (“?”,
“”
or “[..]” ), lists of files, or indirection through a text file (“^
”).
The NDG_ASSOC routine produces a list of explicit NDF names, which are stored internally within the GRP system.
The routine NDG_CREAT produces a group containing the names of NDFs which are to be created by the application. The routine NDG_NDFCR will create a new NDF with a name given by a group member, and returns an NDF identifier to it. Routine NDG_NDFPR creates a new NDF by propagation from a previously existing NDF, in a similar manner to the NDF routine NDF_PROP (see SUN/33).
The names of output NDFs given by users usually relate to the input NDF names. When NDG_CREAT is called, it creates a group of NDF names either by modifying all the names in a specified input group using a “modification element” (see SUN/150), or by getting a list of new names from the user.
See the detailed descriptions of NDG_ASSOC and NDG_CREAT below for details of the processing of existing and new NDF names.
1The routine NDG_ASEXP performs the same function but does not use the parameter system - it expects the group expression to be supplied by the calling routine.