Street, segment, and range handles

Because of the hierarchical nature of the GSD data, Precisely can create handles to any of the Street, Segment, and Range Object types. These objects must contain the reference to the higher object in order for GeoStan to create the handle. For example, a range handle must contain a segment handle, which in turn must contain a street handle.

A handle can be promoted to either predecessor. For example,

hStreet = hSegment.hStreet;
hStreet = hRange.hSegment.hStreet;

are acceptable, but

hSegment = hStreet;

is undefined.

However, the statement

hSegment.hStreet = hMyStreet;

is valid and is used to promote a street handle to a segment handle for entry into the Find routine. The segment handle osoundexf hSegment is still undefined, but that hSegment.hStreet can be used as a valid street handle (assuming hMyStreet was a valid handle to begin with).

Note: All handles are invalid after a call to GSCLEAR.