Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

DELETE STRUCTURE NETWORK(3P)  —  Kubota Pacfic Computer Inc. (29 February 1991)

NAME

DELETE STRUCTURE NETWORK − delete network of structures from central structure store

SYNOPSIS

C Syntax

void
pdel_struct_net ( struct_id, ref_flag )
Pintstruct_id;structure identifier
Pref_flagref_flag;reference handling flag

Required PHIGS Operating States

(PHOP, ∗, ∗, ∗)

DESCRIPTION

Purpose

Use DELETE STRUCTURE NETWORK to remove from the Central Structure Store a specified structure and all structures referenced directly or indirectly by that structure. 

A structure is referenced from within another structure by an EXECUTE STRUCTURE element created by the EXECUTE STRUCTURE subroutine. A structure network is a hierarchical arrangement of structures in which the original structure references subordinate structures which, in turn, reference other structures, and so on. 

More than one EXECUTE STRUCTURE element can refer to the same structure, so that a structure referenced in the network to be deleted can also be referenced by structures in other networks.  DELETE STRUCTURE NETWORK includes a reference handling flag parameter which controls whether to delete or keep these structures. 

C Input Parameters

struct_id
Specifies the structure which is the beginning of the structure network to be deleted.

ref_flag
Controls how structures in the selected network that are also referenced by other structures outside the network are to be handled. This is an enumerated type defined in phigs.h as follows:

PFLAG_DELDelete all structures
PFLAG_KEEPKeep structures referenced outside the network

The use of these values is described in the Execution section below. 

Execution

The DELETE STRUCTURE NETWORK subroutine deletes the structure specified by struct_id and the structure network beginning with that structure.  The structure network is the chain of structures referenced by EXECUTE STRUCTURE elements in struct_id and its descendent structures.  If struct_id does not exist, the subroutine takes no action and does not return an error.  The reference handling flag parameter controls how structures that are referenced both by this structure network and by another structure outside the network are handled.

•    If reference handling flag is PFLAG_DEL, DELETE STRUCTURE NETWORK removes all structures referenced in the structure network beginning with structure identifier even if those structures are also referenced by another structure outside this network. 

•    If reference handling flag is PFLAG_KEEP, DELETE STRUCTURE NETWORK will not remove structures referenced in this network which are also referenced by another structure outside this network.  However, the structure specified by struct_id identifier is always deleted. 

All structures that are actually deleted are deleted as if DELETE STRUCTURE were called for each individual structure; that is, the structure identifier, its contents, and all references to it are removed. 

ERRORS

002Ignoring function, function requires state (PHOP, ∗, ∗, ∗)

SEE ALSO

DELETE ALL STRUCTURES (3P)
DELETE STRUCTURE (3P)
DELETE STRUCTURE NETWORKS FROM ARCHIVE (3P)

September 02, 1992

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026