Find topological relations¶
saf_find_topo_relations
is a function defined in rel.c.
Synopsis:
-
int
saf_find_topo_relations
(SAF_ParMode pmode, SAF_Db *db, SAF_Set *set, SAF_Set *topo_ancestor, int *num, SAF_Rel **found)¶
Formal Arguments:
pmode
: The parallel mode.db
: The database in which to search for topology relations.set
: The set whose topology is sought.topo_ancestor
: [OUT
] In many cases, the topology for a given set is known only on some ancestor of the set. This return value indicates that ancestor. IfSAF__EQUIV
forset
andtopo_ancestor
is true, then the topology relations found by this call are indeed those defined on the specified set. Otherwise, they are defined on thetopo_ancestor
.num
: For this and the succeeding argument, (see *Returned Handles*).found
: For this and the preceding argument, (see *Returned Handles*).
Description: This function will find the topological relations governing a given set. Note that if the given set is one that is the subset of where the topological relations are actually declared, this call will return that set and the topological relation(s) defined on that set.
Preconditions:
pmode
must be valid. (low-cost)set
must be a valid handle. (low-cost)topo_ancestor
must be non-null. (low-cost)num
andfound
must be compatible for return value allocation. (low-cost)
Return Value: The constant SAF__SUCCESS
is returned when this function is successful. Otherwise this function either returns
an error number or throws an exception, depending on the value of the library’s error handling property.
Issues: What if there are multiple topological relations governing a given set which are declared on different sets?
The topo_ancestor
argument needs to be of length *Pnum_rels
.
The topo_ancestor
argument is not actually referenced or returned by this function.
See Also:
- Topology Relations: Introduction for current chapter