void JASPExporter::saveJASPArchive(archive *a, DataSetPackage *package, boost::function<void (const std::string &, int)> progressCallback) { if (package->hasAnalyses) { struct archive_entry *entry; Json::Value &analysesJson = package->analysesData; //Create new entry for archive NOTE: must be done before data is added string analysesString = analysesJson.toStyledString(); int sizeOfAnalysesString = analysesString.size(); entry = archive_entry_new(); string dd4 = string("analyses.json"); archive_entry_set_pathname(entry, dd4.c_str()); archive_entry_set_size(entry, sizeOfAnalysesString); archive_entry_set_filetype(entry, AE_IFREG); archive_entry_set_perm(entry, 0644); // Not sure what this does archive_write_header(a, entry); archive_write_data(a, analysesString.c_str(), sizeOfAnalysesString); archive_entry_free(entry); char imagebuff[8192]; for (Json::Value::iterator iter = analysesJson.begin(); iter != analysesJson.end(); iter++) { Json::Value &analysisJson = *iter; vector<string> paths = tempfiles_retrieveList(analysisJson["id"].asInt()); for (int j = 0; j < paths.size(); j++) { FileReader fileInfo = FileReader(tempfiles_sessionDirName() + "/" + paths[j]); if (fileInfo.exists()) { int imageSize = fileInfo.size(); entry = archive_entry_new(); string dd4 = paths[j]; archive_entry_set_pathname(entry, dd4.c_str()); archive_entry_set_size(entry, imageSize); archive_entry_set_filetype(entry, AE_IFREG); archive_entry_set_perm(entry, 0644); // Not sure what this does archive_write_header(a, entry); int bytes = 0; int errorCode = 0; while ((bytes = fileInfo.readData(imagebuff, sizeof(imagebuff), errorCode)) > 0 && errorCode == 0) { archive_write_data(a, imagebuff, bytes); } archive_entry_free(entry); if (errorCode < 0) throw runtime_error("Required resource files could not be accessed."); } fileInfo.close(); } } } }
void ZoneServerImplementation::loadLoginMessage() { Locker locker(_this.getReferenceUnsafeStaticCast()); File* file; FileReader* reader; try { file = new File("conf/motd.txt"); reader = new FileReader(file); String line; while(reader->readLine(line)) { loginMessage += line; } reader->close(); } catch (FileNotFoundException& e) { file = NULL; reader = NULL; } loginMessage += "\nLatest Commits:\n"; loginMessage += ConfigManager::instance()->getRevision(); delete reader; delete file; }
void ConfigManager::loadRevision() { File* file; FileReader* reader; revision = ""; try { file = new File("conf/rev.txt"); reader = new FileReader(file); String line; while (reader->readLine(line)) revision += line; reader->close(); } catch (FileNotFoundException& e) { file = NULL; reader = NULL; } catch (Exception& e) { file = NULL; reader = NULL; } //revision = revision.replaceAll("\n", ""); delete reader; delete file; }
void ConfigManager::loadMOTD() { messageOfTheDay = ""; File* file; FileReader* reader; try { file = new File("conf/motd.txt"); reader = new FileReader(file); String line; while(reader->readLine(line)) { messageOfTheDay += line; } reader->close(); } catch (FileNotFoundException& e) { file = NULL; reader = NULL; } delete reader; delete file; }
ShaderPtr Shader::loadResource(const string &name) { FileReader *fileReader; fileReader = new FileReader(util::getAbsoluteFilePath(name + ".vert")); string vertexSource = fileReader->readAll(); fileReader->close(); delete fileReader; fileReader = new FileReader(util::getAbsoluteFilePath(name + ".frag")); string fragmentSource = fileReader->readAll(); fileReader->close(); delete fileReader; LOG("Compiling shader program: %s", name.c_str()); return ShaderPtr(new Shader(vertexSource, fragmentSource)); }
signed main() { static constexpr StringRef const path{"data/file_stream.bin"}; { FileWriter writer; TOGO_ASSERTE(!writer.is_open()); TOGO_ASSERTE(writer.open(path, false)); TOGO_ASSERTE(writer.is_open()); test_writer(writer, true); writer.close(); } { FileReader reader; TOGO_ASSERTE(!reader.is_open()); TOGO_ASSERTE(reader.open(path)); TOGO_ASSERTE(reader.is_open()); test_reader(reader, true); reader.close(); } return 0; }