/* reads toc from cdrom (system dependent) Copyright (C) 1999 Martin Vogt This program is free software; you can redistribute it and/or modify it under the terms of the GNU Library General Public License as published by the Free Software Foundation. For more information look at the file COPYRIGHT in this package */ #include "cdromToc.h" #include using namespace std; CDRomToc::CDRomToc() { maxEntries=0; } CDRomToc::~CDRomToc() { } void CDRomToc::insertTocEntry(int minute,int second,int frame) { int i; int j; if (isElement(minute,second,frame)) { return; } i=getNextTocEntryPos(minute,second,frame); // now shift from i to end if (maxEntries == 100) { cerr << "maximum of toc entries reached"<i;j--) { tocEntries[j].minute=tocEntries[j-1].minute; tocEntries[j].second=tocEntries[j-1].second; tocEntries[j].frame=tocEntries[j-1].frame; } maxEntries++; tocEntries[i].minute=minute; tocEntries[i].second=second; tocEntries[i].frame=frame; calculateRange(); } int CDRomToc::getNextTocEntryPos(int minute,int second,int frame) { int i; if (maxEntries == 0) { return 0; } for (i=0;i endByte) { return false; } return true; } int CDRomToc::calculateRange() { if (maxEntries < 2) { cout << "no two elemts in toc"<