SEDRIS Reference Manual
APPENDIX A - LEVEL 0 READ and WRITE API Functions SE GetNthComponentOfDRMClass |
---|
extern SE_Status_Code | |||
SE_GetNthComponentOfDRMClass | |||
( | |||
SE_Object | aggregate_object, | (notes) | |
SE_DRM_Class | desired_component_class, | (notes) | |
SE_Integer_Positive | n, | (notes) | |
SE_Object | * | component_object_out_ptr, | (notes) |
SE_Object | * | link_class_object_out_ptr | (notes) |
); |
Given an object that has multiple, ordered components of a certain DRM class, returns an SE_Object for the Nth component of that class. ITR components will be automatically resolved and if an ITR component is encountered that cannot be resolved, the call will return SE_STAT_CODE_UNRESOLVED_OBJECT for the n value passed in and any higher n values.
SE_STAT_CODE_SUCCESS | and *component_object_out_ptr is set to point to the desired component object, and *link_class_object_out_ptr is set appropriately, if valid parameters were passed in and all operations succeeded. |
SE_STAT_CODE_UNRESOLVED_OBJECT | and the output parameters are set as for the SE_STAT_CODE_SUCCESS case, if valid parameters were passed in and valid objects are returned, but the object returned using *component_object_out_ptr is unresolved. |
SE_STAT_CODE_NULL_REQUIRED_PARAMETER | and the output parameter values are left unaltered, if component_object_out_ptr was NULL. |
SE_STAT_CODE_INVALID_OR_NULL_OBJECT | and the output parameters are set to NULL, if aggregate_object was not a handle to a valid, active (i.e., unfreed) SEDRIS object. |
SE_STAT_CODE_UNRESOLVED_START_OBJECT | and the output parameters are set as for the SE_STAT_CODE_INVALID_OR_NULL_OBJECT case, if aggregate_object is an unresolved SEDRIS object. |
SE_STAT_CODE_NO_OBJECT | and the output parameters are set as for the SE_STAT_CODE_INVALID_OR_NULL_OBJECT case, if the aggregate_object did not contain 'n' component objects of the desired class. |
SE_STAT_CODE_OUT_OF_MEMORY | and the output parameters are set as for the SE_STAT_CODE_INVALID_OR_NULL_OBJECT case, if the API could not allocate memory. |
SE_STAT_CODE_FAILURE | and the output parameters are set as for the
SE_STAT_CODE_INVALID_OR_NULL_OBJECT case, if
|
the object containing the desired component
the DRM class of component the user wants. Abstract types are allowed. The SE_DRM_CLS_NULL is not.
the 'index' of that component, given an ordered list of all components of the desired class for the given aggregate object. This is a 1-based index.
a pointer to a variable in the user's memory space, to which the desired component of the aggregate_object will be copied.
a pointer to a variable in the user's memory space, to which the link object (sometimes called the association class object) traversed to reach the desired component object will be copied. If no link class object was attached to the link used to reach the desired component object, then *link_class_object_out_ptr will be NULL.
Prev: SE_GetNthAssociateOfDRMClass.
Next: SE_GetNumberOfPathsToTransmittalRoot.
Up:Index.
|