186 |
186 |
187 DEBUG_API("<-XAPrefetchStatusItfImpl_GetFillUpdatePeriod"); |
187 DEBUG_API("<-XAPrefetchStatusItfImpl_GetFillUpdatePeriod"); |
188 return ret; |
188 return ret; |
189 } |
189 } |
190 |
190 |
191 #ifdef _GSTREAMER_BACKEND_ |
|
192 |
|
193 /* |
191 /* |
194 * implementation-specific methods |
192 * implementation-specific methods |
195 */ |
193 */ |
196 XAPrefetchStatusItfImpl* XAPrefetchStatusItfImpl_Create( XAAdaptationBaseCtx* adaptationCtx ) |
194 XAPrefetchStatusItfImpl* XAPrefetchStatusItfImpl_Create( XAMediaPlayerImpl* impl ) |
197 { |
195 { |
198 XAPrefetchStatusItfImpl *self = (XAPrefetchStatusItfImpl*) |
196 XAPrefetchStatusItfImpl *self = (XAPrefetchStatusItfImpl*) |
199 calloc(1,sizeof(XAPrefetchStatusItfImpl)); |
197 calloc(1,sizeof(XAPrefetchStatusItfImpl)); |
200 DEBUG_API("->XAPrefetchStatusItfImpl_Create"); |
198 DEBUG_API("->XAPrefetchStatusItfImpl_Create"); |
201 |
199 |
213 self->callback = NULL; |
211 self->callback = NULL; |
214 self->cbcontext = NULL; |
212 self->cbcontext = NULL; |
215 self->eventFlags = 0; |
213 self->eventFlags = 0; |
216 self->fillUpdatePeriod = PREFETCHSTATUSITF_DEFAULT_UPDATE_PERIOD; |
214 self->fillUpdatePeriod = PREFETCHSTATUSITF_DEFAULT_UPDATE_PERIOD; |
217 self->pStatus = XA_PREFETCHSTATUS_SUFFICIENTDATA; |
215 self->pStatus = XA_PREFETCHSTATUS_SUFFICIENTDATA; |
218 self->adaptationCtx = adaptationCtx; |
216 self->adaptationCtx = impl->curAdaptCtx; |
219 self->cbPtrToSelf = NULL; |
217 self->cbPtrToSelf = NULL; |
220 |
218 |
221 XAAdaptationBase_AddEventHandler( adaptationCtx, &XAPrefetchStatusItfImpl_AdaptCb, XA_PREFETCHITFEVENTS, self ); |
219 XAAdaptationBase_AddEventHandler( self->adaptationCtx, &XAPrefetchStatusItfImpl_AdaptCb, XA_PREFETCHITFEVENTS, self ); |
222 |
220 |
223 self->self = self; |
221 self->self = self; |
224 } |
222 } |
225 |
223 |
226 DEBUG_API("<-XAPrefetchStatusItfImpl_Create"); |
224 DEBUG_API("<-XAPrefetchStatusItfImpl_Create"); |
227 return self; |
225 return self; |
228 } |
226 } |
229 #endif |
227 |
230 |
228 |
231 void XAPrefetchStatusItfImpl_Free(XAPrefetchStatusItfImpl* self) |
229 void XAPrefetchStatusItfImpl_Free(XAPrefetchStatusItfImpl* self) |
232 { |
230 { |
233 DEBUG_API("->XAPrefetchStatusItfImpl_Free"); |
231 DEBUG_API("->XAPrefetchStatusItfImpl_Free"); |
234 assert(self==self->self); |
232 assert(self==self->self); |
235 #ifdef _GSTREAMER_BACKEND_ |
|
236 XAAdaptationBase_RemoveEventHandler( (XAAdaptationBaseCtx*)self->adaptationCtx, &XAPrefetchStatusItfImpl_AdaptCb ); |
233 XAAdaptationBase_RemoveEventHandler( (XAAdaptationBaseCtx*)self->adaptationCtx, &XAPrefetchStatusItfImpl_AdaptCb ); |
237 #endif |
|
238 free(self); |
234 free(self); |
239 DEBUG_API("<-XAPrefetchStatusItfImpl_Free"); |
235 DEBUG_API("<-XAPrefetchStatusItfImpl_Free"); |
240 } |
236 } |
241 |
|
242 #ifdef _GSTREAMER_BACKEND_ |
|
243 |
237 |
244 /* void XAPrefetchStatusItfImpl_AdaptCb |
238 /* void XAPrefetchStatusItfImpl_AdaptCb |
245 * Description: Listen changes in adaptation |
239 * Description: Listen changes in adaptation |
246 */ |
240 */ |
247 void XAPrefetchStatusItfImpl_AdaptCb( void *pHandlerCtx, XAAdaptEvent *event ) |
241 void XAPrefetchStatusItfImpl_AdaptCb( void *pHandlerCtx, XAAdaptEvent *event ) |