Lines Matching defs:pTrackList

139  * @param   pTrackList    The track list to reallocate.
143 static int atapiTrackListReallocate(PTRACKLIST pTrackList, unsigned cTracks, uint32_t fFlags)
148 ATAPIPassthroughTrackListClear(pTrackList);
150 if (pTrackList->cTracksMax < cTracks)
152 PTRACK paTracksNew = (PTRACK)RTMemRealloc(pTrackList->paTracks, cTracks * sizeof(TRACK));
155 pTrackList->paTracks = paTracksNew;
158 for (unsigned i = pTrackList->cTracksMax; i < cTracks; i++)
159 pTrackList->paTracks[i].fFlags |= TRACK_FLAGS_UNDETECTED;
161 pTrackList->cTracksMax = cTracks;
167 pTrackList->cTracksCurrent = cTracks;
267 * @param pTrackList Track list to update.
271 static int atapiTrackListUpdateFromSendCueSheet(PTRACKLIST pTrackList, const uint8_t *pbCDB, const void *pvBuf)
279 rc = atapiTrackListReallocate(pTrackList, cTracks, 0);
283 PTRACK pTrack = pTrackList->paTracks;
298 static int atapiTrackListUpdateFromSendDvdStructure(PTRACKLIST pTrackList, const uint8_t *pbCDB, const void *pvBuf)
307 * @param pTrackList The track list to update.
312 static int atapiTrackListUpdateFromFormattedToc(PTRACKLIST pTrackList, uint8_t iTrack,
326 rc = atapiTrackListReallocate(pTrackList, cTracks, ATAPI_TRACK_LIST_REALLOCATE_FLAGS_DONT_CLEAR);
329 PTRACK pTrack = &pTrackList->paTracks[iTrackFirst];
368 static int atapiTrackListUpdateFromReadTocPmaAtip(PTRACKLIST pTrackList, const uint8_t *pbCDB, const void *pvBuf)
379 rc = atapiTrackListUpdateFromFormattedToc(pTrackList, iTrack, fMSF, (uint8_t *)pvBuf, cbBuffer);
397 static int atapiTrackListUpdateFromReadTrackInformation(PTRACKLIST pTrackList, const uint8_t *pbCDB, const void *pvBuf)
402 static int atapiTrackListUpdateFromReadDvdStructure(PTRACKLIST pTrackList, const uint8_t *pbCDB, const void *pvBuf)
407 static int atapiTrackListUpdateFromReadDiscInformation(PTRACKLIST pTrackList, const uint8_t *pbCDB, const void *pvBuf)
474 * @param pTrackList The track list to dump.
476 static void atapiTrackListDump(PTRACKLIST pTrackList)
478 LogRel(("Track List: cTracks=%u\n", pTrackList->cTracksCurrent));
479 for (unsigned i = 0; i < pTrackList->cTracksCurrent; i++)
481 PTRACK pTrack = &pTrackList->paTracks[i];
495 PTRACKLIST pTrackList = (PTRACKLIST)RTMemAllocZ(sizeof(TRACKLIST));
497 if (pTrackList)
500 *ppTrackList = pTrackList;
506 DECLHIDDEN(void) ATAPIPassthroughTrackListDestroy(PTRACKLIST pTrackList)
508 if (pTrackList->paTracks)
509 RTMemFree(pTrackList->paTracks);
510 RTMemFree(pTrackList);
513 DECLHIDDEN(void) ATAPIPassthroughTrackListClear(PTRACKLIST pTrackList)
515 AssertPtrReturnVoid(pTrackList);
517 pTrackList->cTracksCurrent = 0;
520 for (unsigned i = 0; i < pTrackList->cTracksMax; i++)
521 pTrackList->paTracks[i].fFlags |= TRACK_FLAGS_UNDETECTED;
524 DECLHIDDEN(int) ATAPIPassthroughTrackListUpdate(PTRACKLIST pTrackList, const uint8_t *pbCDB, const void *pvBuf)
531 rc = atapiTrackListUpdateFromSendCueSheet(pTrackList, pbCDB, pvBuf);
534 rc = atapiTrackListUpdateFromSendDvdStructure(pTrackList, pbCDB, pvBuf);
537 rc = atapiTrackListUpdateFromReadTocPmaAtip(pTrackList, pbCDB, pvBuf);
540 rc = atapiTrackListUpdateFromReadTrackInformation(pTrackList, pbCDB, pvBuf);
543 rc = atapiTrackListUpdateFromReadDvdStructure(pTrackList, pbCDB, pvBuf);
546 rc = atapiTrackListUpdateFromReadDiscInformation(pTrackList, pbCDB, pvBuf);
554 atapiTrackListDump(pTrackList);
560 DECLHIDDEN(uint32_t) ATAPIPassthroughTrackListGetSectorSizeFromLba(PTRACKLIST pTrackList, uint32_t iAtapiLba)
565 if (pTrackList->cTracksCurrent)
571 pTrack = pTrackList->paTracks;
578 pTrack = &pTrackList->paTracks[1];
581 for (unsigned i = 1; i < pTrackList->cTracksCurrent - 1; i++)