41 static int globalTimestamp = 0;
131 (*list)->openmaxStandComp = openmaxStandComp;
132 (*list)->timestamp = globalTimestamp;
134 (*list)->nGroupPriority = omx_base_component_Private->
nGroupPriority;
135 (*list)->next = NULL;
139 componentTemp = *list;
140 while(componentTemp->
next) {
141 componentTemp = componentTemp->
next;
144 if (!componentNext) {
148 componentTemp->
next = componentNext;
149 componentNext->
next = NULL;
151 componentNext->
timestamp = globalTimestamp;
169 DEBUG(
DEB_LEV_ERR,
"In %s, the resource manager is not initialized\n", __func__);
172 componentTemp = *list;
173 componentPrev = *list;
174 while(componentTemp) {
176 if (componentTemp == *list) {
177 *list = (*list)->
next;
180 componentPrev->
next = componentTemp->
next;
186 if (componentTemp != *list) {
187 componentPrev = componentPrev->
next;
189 componentTemp = componentTemp->
next;
193 DEBUG(
DEB_LEV_ERR,
"In %s, the specified component does not exist\n", __func__);
215 componentTemp = list;
216 while(componentTemp) {
218 componentTemp = componentTemp->
next;
236 componentTemp = *list;
237 while(componentTemp) {
238 componentPrev = componentTemp;
239 componentTemp = componentTemp->
next;
257 printf(
"The list is empty\n");
261 while (componentTemp) {
264 printf(
"Name %s ", omx_base_component_Private->
name);
271 componentTemp = componentTemp->
next;
291 componentTemp = list;
292 componentCandidate = NULL;
293 while (componentTemp) {
298 if (componentCandidate) {
300 componentCandidate = componentTemp;
303 componentCandidate = componentTemp;
306 componentTemp = componentTemp->
next;
308 *oldest_component_preemptable = componentCandidate;
325 (openmaxStandComp, omx_base_component_Private->
callbackData,
355 int indexComponent = -1;
367 if (indexComponent <0) {
410 int indexComponent = -1;
423 if (indexComponent <0) {
429 DEBUG(
DEB_LEV_ERR,
"In %s, the resource manager is not initialized\n", __func__);
460 int indexComponent = -1;
473 if (indexComponent <0) {
493 int indexComponent = -1;
506 if (indexComponent <0) {
#define OMX_MAX_STRINGNAME_SIZE
@ OMX_ErrorInsufficientResources
@ OMX_ErrorComponentNotFound
#define OMX_SendCommand( hComponent, Cmd, nParam, pCmdData)
#define DEB_LEV_FUNCTION_NAME
#define DEB_LEV_SIMPLE_SEQ
#define DEBUG(n, fmt, args...)
OMX_ERRORTYPE addElemToList(ComponentListType **list, OMX_COMPONENTTYPE *openmaxStandComp, int index, OMX_BOOL bIsWaiting)
OMX_ERRORTYPE RM_RegisterComponent(char *name, int max_components)
ComponentListType ** globalComponentList
int searchLowerPriority(ComponentListType *list, int current_priority, ComponentListType **oldest_component_preemptable)
OMX_ERRORTYPE RM_removeFromWaitForResource(OMX_COMPONENTTYPE *openmaxStandComp)
OMX_ERRORTYPE RM_getResource(OMX_COMPONENTTYPE *openmaxStandComp)
OMX_ERRORTYPE clearList(ComponentListType **list)
OMX_ERRORTYPE RM_releaseResource(OMX_COMPONENTTYPE *openmaxStandComp)
void RM_printList(ComponentListType *list, int viewFlag)
ComponentListType ** globalWaitingComponentList
int numElemInList(ComponentListType *list)
OMX_ERRORTYPE removeElemFromList(ComponentListType **list, OMX_COMPONENTTYPE *openmaxStandComp)
OMX_ERRORTYPE preemptComponent(OMX_COMPONENTTYPE *openmaxStandComp)
OMX_ERRORTYPE RM_Deinit()
NameIndexType * listOfcomponentRegistered
OMX_ERRORTYPE RM_waitForResource(OMX_COMPONENTTYPE *openmaxStandComp)
#define MAX_COMPONENTS_TYPES_HANDLED
OMX_COMPONENTTYPE * openmaxStandComp
OMX_ERRORTYPE(* EventHandler)(OMX_IN OMX_HANDLETYPE hComponent, OMX_IN OMX_PTR pAppData, OMX_IN OMX_EVENTTYPE eEvent, OMX_IN OMX_U32 nData1, OMX_IN OMX_U32 nData2, OMX_IN OMX_PTR pEventData)
OMX_PTR pComponentPrivate
OMX_CALLBACKTYPE * callbacks