unsigned DatabaseCodec::produce(Producer& producer, Consumer& consumer, util::Progress& progress) { //M_REQUIRE(producer.hasConsumer()); //M_REQUIRE(producer.consumer().consumer() == 0); producer.consumer().setConsumer(&consumer); return importGames(producer, progress); }
unsigned DatabaseCodec::importGames(Producer& producer, Progress& progress, int startIndex) { //M_REQUIRE(isOpen()); mstl::auto_ptr<Consumer> consumer(getConsumer(producer.format())); //M_ASSERT(consumer); producer.setConsumer(consumer.get()); producer.consumer().setIndex(startIndex); return producer.process(progress); }