Creates an iterator to (traverse over the list of)/(return pointers to)
aggregate objects that meet the following conditions:
To get the next object from an iterator, call SE_GetNextObject().
To find out the remaining length of an iterator (the number of objects remaining inside the iterator), call SE_GetIterationLengthRemaining().
When finished with an iterator, free it with a call to the
SE_FreeIterator() function.
Iterators can be freed at any time
(they can be freed before all of their objects have been returned,
that is, before their remaining length == 0, if the user so desires).
SE_NULL_REQUIRED_PARAMETER - and *iterator_out_ptr is left unaltered, if iterator_out_ptr was NULL.
SE_INVALID_OR_NULL_OBJECT - and *iterator_out_ptr is set to NULL, if start_object is not a handle to a valid, active (i.e., unfreed) SEDRIS object.
SE_UNRESOLVED_START_OBJECT - and *iterator_out_ptr is set to NULL, if start_object is currently unresolved.
SE_OUT_OF_MEMORY - and *iterator_out_ptr is set to NULL, if memory allocation failed.
SE_FAILURE - and *iterator_out_ptr is set to NULL, if
| extern SE_STATUS_CODE_ENUM | |||
| SE_InitializeAggregateIterator | |||
| ( | |||
| SE_OBJECT | start_object, | (notes) | |
| SE_SEARCH_FILTER | filter, | (notes) | |
| SE_ITR_TRAVERSAL_ENUM | inter_transmittal_referencing_traversal, | (notes) | |
| SE_ITERATOR | * | iterator_out_ptr | (notes) |
| ); | |||
the component object for which the user wants a list of
the aggregate objects that contain this component object.
a search filter that will be used to filter
the output of this iterator.
the user must choose how
the iterator will behave when it encounters an Inter-Transmittal
Reference (ITR). The iterator could automatically resolve such
references and continue the search within the new transmittal;
report all ITR references without resolving them; or just ignore
them completely and continue to search within the current
transmittal.
a pointer to the freshly created
iterator that will iterate over the aggregate objects that
(1) contain the given component start_object via a 2-way aggregation
and (2) pass the criteria defined in the search filter (if one was
was provided).