/** * @brief cwRegionLoadTask::loadFromProtoBuffer * @return */ bool cwRegionLoadTask::loadFromProtoBuffer() { bool okay; QByteArray protoBufferData = readProtoBufferFromDatabase(&okay); if(!okay) { return false; } CavewhereProto::CavingRegion region; bool couldParse = region.ParseFromArray(protoBufferData.data(), protoBufferData.size()); if(!couldParse) { qDebug() << "Couldn't read proto buffer. Corrupted?!"; //Don't close the Database here because, the xml loader needs it return false; } loadCavingRegion(region); //Clean up old images cwImageCleanupTask imageCleanupTask; imageCleanupTask.setDatabaseFilename(databaseFilename()); imageCleanupTask.setRegion(Region); imageCleanupTask.start(); Database.close(); return true; }
//------------------------------------------------------------------------------ const QString ctkDICOMDatabase::databaseDirectory() const { QString databaseFile = databaseFilename(); if (!QFileInfo(databaseFile).isAbsolute()) { databaseFile.prepend(QDir::currentPath() + "/"); } return QFileInfo ( databaseFile ).absoluteDir().path(); }