#include "copy_from_dvd_job.h"
#include "film_state.h"
#include "dvd.h"
+#include "cross.h"
using namespace std;
using namespace boost;
/** @param fs FilmState for the film to write DVD data into.
* @param l Log that we can write to.
*/
-CopyFromDVDJob::CopyFromDVDJob (shared_ptr<const FilmState> fs, Log* l)
- : Job (fs, shared_ptr<Options> (), l)
+CopyFromDVDJob::CopyFromDVDJob (shared_ptr<const FilmState> fs, Log* l, shared_ptr<Job> req)
+ : Job (fs, l, req)
{
}
set_state (FINISHED_ERROR);
}
- vector<uint64_t> const t = dvd_titles (dvd);
+ list<DVDTitle> const t = dvd_titles (dvd);
if (t.empty ()) {
set_error ("no titles found on DVD");
set_state (FINISHED_ERROR);
int longest_title = 0;
uint64_t longest_size = 0;
- for (vector<int>::size_type i = 0; i < t.size(); ++i) {
- if (longest_size < t[i]) {
- longest_size = t[i];
- longest_title = i;
+ for (list<DVDTitle>::const_iterator i = t.begin(); i != t.end(); ++i) {
+ if (longest_size < i->size) {
+ longest_size = i->size;
+ longest_title = i->number;
}
}