Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

INQUIRE ELEMENT TYPE AND SIZE(3P)  —  Kubota Pacfic Computer Inc. (29 February 1991)

NAME

INQUIRE ELEMENT TYPE AND SIZE − inquire the type and size of a specified element

SYNOPSIS

C Syntax

void
pinq_elem_type_size ( struct_id, element, error_ind, type, size )
Pintstruct_id;structure identifier
Pintelement;element number
Pint∗error_ind;OUT error indicator
Pelem_type∗type;OUT element type
size_t∗size;OUT element size

Required PHIGS Operating States

(PHOP, ∗, ∗, ∗)

DESCRIPTION

Purpose

INQUIRE ELEMENT TYPE AND SIZE returns the type and size of the specified element in the specified structure. 

C Input Parameters

struct_id
Identifier of the structure containing the element for which to return a type and size.

element
Sequence number in the specified structure of the element for which to return a type and size.

C Output Parameters

error_ind
A pointer to the location to store the error number of any error detected by this function.

typeReturns element type.  For example, a polyline primitive element would be returned as PELEM_POLYLINE, a character height attribute as PEL_CHARACTER_HEIGHT, a modelling transformation as PEL_LOCAL_MODELLING_TRANSFORMATION3, and so forth.  The Pelem_type enumerated type is defined in phigs.h as follows:

typedef enum {
PELEM_ALL,
PELEM_NIL,
PELEM_POLYLINE3,
PELEM_POLYLINE,
PELEM_POLYMARKER3,
PELEM_POLYMARKER,
PELEM_TEXT3,
PELEM_TEXT,
PELEM_ANNO_TEXT_REL3,
PELEM_ANNO_TEXT_REL,
PELEM_FILL_AREA3,
PELEM_FILL_AREA,
PELEM_FILL_AREA_SET3,
PELEM_FILL_AREA_SET,
PELEM_CELL_ARRAY3,
PELEM_CELL_ARRAY,
PELEM_GDP3,
PELEM_GDP,
PELEM_LINE_IND,
PELEM_MARKER_IND,
PELEM_TEXT_IND,
PELEM_INT_IND,
PELEM_EDGE_IND,
PELEM_LINETYPE,
PELEM_LINEWIDTH,
PELEM_LINE_COLR_IND,
PELEM_MARKER_TYPE,
PELEM_MARKER_SIZE,
PELEM_MARKER_COLR_IND,
PELEM_TEXT_FONT,
PELEM_TEXT_PREC,
PELEM_CHAR_EXPAN,
PELEM_CHAR_SPACE,
PELEM_TEXT_COLR_IND,
PELEM_CHAR_HT,
PELEM_CHAR_UP_VEC,
PELEM_TEXT_PATH,
PELEM_TEXT_ALIGN,
PELEM_ANNO_CHAR_HT,
PELEM_ANNO_CHAR_UP_VEC,
PELEM_ANNO_PATH,
PELEM_ANNO_ALIGN,
PELEM_ANNO_STYLE,
PELEM_INT_STYLE,
PELEM_INT_STYLE_IND,
PELEM_INT_COLR_IND,
PELEM_EDGE_FLAG,
PELEM_EDGETYPE,
PELEM_EDGEWIDTH,
PELEM_EDGE_COLR_IND,
PELEM_PAT_SIZE,
PELEM_PAT_REF_POINT_VECS,
PELEM_PAT_REF_POINT,
PELEM_ADD_NAMES_SET,
PELEM_REMOVE_NAMES_SET,
PELEM_INDIV_ASF,
PELEM_HLHSR_ID,
PELEM_LOCAL_MODEL_TRAN3,
PELEM_LOCAL_MODEL_TRAN,
PELEM_GLOBAL_MODEL_TRAN3,
PELEM_GLOBAL_MODEL_TRAN,
PELEM_MODEL_CLIP_VOL3,
PELEM_MODEL_CLIP_VOL,
PELEM_MODEL_CLIP_IND,
PELEM_RESTORE_MODEL_CLIP_VOL,
PELEM_VIEW_IND,
PELEM_EXEC_STRUCT,
PELEM_LABEL,
PELEM_APPL_DATA,
PELEM_GSE,
PELEM_PICK_ID,
PELEM_POLYLINE_SET3_DATA,
PELEM_FILL_AREA_SET3_DATA,
PELEM_TRI_STRIP3_DATA,
PELEM_QUAD_MESH3_DATA,
PELEM_SET_OF_FILL_AREA_SET3_DATA,
PELEM_NUNI_BSP_CURVE,
PELEM_NUNI_BSP_SURF,
PELEM_CELL_ARRAY3_PLUS,
PELEM_TEXT_COLR,
PELEM_MARKER_COLR,
PELEM_EDGE_COLR,
PELEM_LINE_COLR,
PELEM_CURVE_APPROX_CRIT,
PELEM_LINE_SHAD_METH,
PELEM_INT_COLR,
PELEM_BACK_INT_COLR,
PELEM_BACK_INT_STYLE,
PELEM_BACK_INT_STYLE_IND,
PELEM_REFL_PROPS,
PELEM_BACK_REFL_PROPS,
PELEM_INT_SHAD_METH,
PELEM_BACK_INT_SHAD_METH,
PELEM_INT_REFL_EQN,
PELEM_BACK_INT_REFL_EQN,
PELEM_SURF_APPROX_CRIT,
PELEM_PARA_SURF_CHARACS,
PELEM_FACE_DISTING_MODE,
PELEM_FACE_CULL_MODE,
PELEM_LIGHT_SRC_STATE,
PELEM_DCUE_IND,
PELEM_COLR_MAP_IND,
PELEM_RENDERING_COLR_MODEL,
PELEM_NUM_EL_TYPES
} Pelem_type;

sizeReturns the size, in bytes, that the application will have to allocate in order to call INQUIRE ELEMENT CONTENT to retrieve the contents of the specified element from the specified structure.  If the element type is such that it is not necessary to allocate any dynamic memory to retrieve its contents, a value of zero is returned. 

ERRORS

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

201Ignoring function, the specified structure does not exist

202Ignoring function, the specified element does not exist

SEE ALSO

INQUIRE ELEMENT POINTER (3P)
INQUIRE ELEMENT CONTENT (3P)
ELEMENT SEARCH (3P)

September 02, 1992

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