Function Name: Initialize Inherited Component Iterator

Definition

Creates an iterator to (traverse over the list of)/(return pointers to) component objects that were inherited.

If you just want the inherited components of an object, then use this function call.

If you just want the directly aggregated components of an object, then use the SE_InitializeComponentIterator() function with the process_inheritance parameter set to SE_FALSE.

If you want both the inherited components and the directly aggregated components of an object (and don't care to distinguish between the two sets) then use the SE_InitializeComponentIterator() function with the process_inheritance parameter set to SE_TRUE.

Returns

SE_SUCCESS - and a handle for the newly created inherited component iterator is copied into *iterator_out_ptr, if valid parameters were passed in and all operations succeeded.

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 (see SE_OBJECT's comments for details on how this condition occurs).

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

  1. inter_transmittal_referencing_traversal is set to an illegal value,
  2. a search filter is provided, but is not a handle to a valid, active (i.e., unfreed) search filter,
  3. the start_object and search filter came from different API implementations, or
  4. the API implementation specified does not provide this function in its shared library, and dynamic binding is specified at compile time.

Prototype


extern SE_STATUS_CODE_ENUM
SE_InitializeInheritedComponentIterator
(
SE_OBJECT start_object, (notes)
SE_SEARCH_FILTER filter, (notes)
SE_BOOLEAN directly_attach_table_components, (notes)
SE_ITR_TRAVERSAL_ENUM inter_transmittal_referencing_traversal, (notes)
SE_ITERATOR *iterator_out_ptr (notes)
);

Parameters Notes

start_object

 object whose list of inherited components will be returned.

filter

 a search filter that will be used to filter
    the output of this iterator.

directly_attach_table_components

 see comments in
    SE_InitializeComponentIterator().

inter_transmittal_referencing_traversal

 see comments in
    SE_InitializeComponentIterator().

iterator_out_ptr

 a pointer to the freshly created iterator that will
    iterate over the inherited components of the start_object.  If a
    search filter was provided, then only the inherited components that
    pass that search filter will be included in the list.

Prev: Initialize Component Iterator. Next: Object ID To String. Up:Index.