SEDRIS Reference Manual
APPENDIX B - LEVEL 1 READ and WRITE API
Functions
SE SimpleCreateComponentIterator
extern SE_Status_Code
SE_SimpleCreateComponentIterator
(
SE_Object start_object, (notes)
SE_DRM_Class drm_class, (notes)
SE_ITR_Behaviour itr_traversal, (notes)
SE_Iterator *iterator_out_ptr (notes)
);

Definition

Creates a simplified component iterator that retrieves component objects meeting the user-specified conditions. This iterator starts at start_object, the 'root' or 'top' of an 'aggregation tree'. All components below the start_object will be searched to a depth of 1. The iterator returns all components that match the DRM class specified by 'drm_class'.

If 'drm_class' is SE_DRM_CLS_NULL, then the iterator returns all components, regardless of DRM class.

Inherited components will not be inherited, locations will not be transformed, model instances will not be followed, static control links will not be evaluated. Breadth-first traversal is used.


Returns

SE_STAT_CODE_SUCCESS and an SE_Iterator for the newly created component iterator is copied into *iterator_out_ptr, if valid parameters were passed in and all operations succeeded.
SE_STAT_CODE_NULL_REQUIRED_PARAMETER and no changes are made, if iterator_out_ptr was NULL.
SE_STAT_CODE_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_STAT_CODE_UNRESOLVED_START_OBJECT and *iterator_out_ptr is set to NULL, if start_object is currently unresolved.
SE_STAT_CODE_OUT_OF_MEMORY and *iterator_out_ptr is set to NULL, if memory cannot be allocated.
SE_STAT_CODE_FAILURE and *iterator_out_ptr is set to NULL, if
  1. drm_class is provided, but invalid, or
  2. the API implementation specified does not provide the necessary underlying functions in its shared library, and dynamic binding is specified at compile time.


Parameters Notes


start_object

 the object whose components will be traversed.

drm_class

 specifies the DRM class of component being
    searched for; if SE_DRM_CLS_NULL, all DRM classes are returned

itr_traversal

 the user must choose how the function will behave
    when it encounters an Inter-Transmittal Reference (ITR).

iterator_out_ptr

 a pointer to the freshly created component iterator
    that will iterate over the objects meeting the conditions
    described above.


Prev: SE_SetErrorHandlers. Next: SE_SoundNameFromSoundInstance. Up:Index.

Last updated: May 15, 2003 Copyright © 2003 SEDRIS™