From 8cd38dccbf584fc42ee6bfa083c33b83367b8d79 Mon Sep 17 00:00:00 2001 From: Gary Talent Date: Fri, 2 Aug 2019 22:39:31 -0500 Subject: [PATCH] [nostalgia/studio] Replace int errors with ox::Error --- src/nostalgia/studio/lib/project.cpp | 22 +++++++++++----------- src/nostalgia/studio/lib/project.hpp | 28 ++++++++++------------------ 2 files changed, 21 insertions(+), 29 deletions(-) diff --git a/src/nostalgia/studio/lib/project.cpp b/src/nostalgia/studio/lib/project.cpp index 9db356b6..68ceb2c0 100644 --- a/src/nostalgia/studio/lib/project.cpp +++ b/src/nostalgia/studio/lib/project.cpp @@ -29,7 +29,7 @@ void Project::create() { QDir().mkpath(m_path); } -int Project::openRomFs() { +ox::Error Project::openRomFs() { QFile file(m_path + ROM_FILE); auto buffSize = file.size(); auto buff = std::make_unique(buffSize); @@ -38,20 +38,20 @@ int Project::openRomFs() { if (file.read(reinterpret_cast(buff.get()), buffSize) > 0) { m_fsBuff = std::move(buff); if (m_fs.valid()) { - return 0; + return OxError(0); } else { - return 1; + return OxError(1); } } else { - return 2; + return OxError(2); } } else { - return 3; + return OxError(3); } } -int Project::saveRomFs() const { - int err = 0; +ox::Error Project::saveRomFs() const { + ox::Error err(0); //QFile file(m_path + ROM_FILE); //err |= file.open(QIODevice::WriteOnly) == false; //err |= file.write((const char*) m_fsBuff.get(), m_fs.size()) == -1; @@ -63,20 +63,20 @@ PassThroughFS *Project::romFs() { return &m_fs; } -int Project::mkdir(QString path) const { +ox::Error Project::mkdir(QString path) const { auto err = m_fs.mkdir(path.toUtf8().data(), true); emit updated(path); return err; } -int Project::write(QString path, uint8_t *buff, size_t buffLen) const { +ox::Error Project::write(QString path, uint8_t *buff, size_t buffLen) const { auto err = m_fs.write(path.toUtf8().data(), buff, buffLen); emit updated(path); return err; } -ox::FileStat Project::stat(QString path) const { - return m_fs.stat(path.toUtf8().data()).value; +ox::ValErr Project::stat(QString path) const { + return m_fs.stat(path.toUtf8().data()); } } diff --git a/src/nostalgia/studio/lib/project.hpp b/src/nostalgia/studio/lib/project.hpp index e489bb16..be27d2da 100644 --- a/src/nostalgia/studio/lib/project.hpp +++ b/src/nostalgia/studio/lib/project.hpp @@ -35,23 +35,23 @@ class Project: public QObject { void create(); - int openRomFs(); + ox::Error openRomFs(); - int saveRomFs() const; + ox::Error saveRomFs() const; ox::PassThroughFS *romFs(); - int mkdir(QString path) const; + ox::Error mkdir(QString path) const; - int write(QString path, uint8_t *buff, size_t buffLen) const; + ox::Error write(QString path, uint8_t *buff, size_t buffLen) const; /** * Writes a MetalClaw object to the project at the given path. */ template - int writeObj(QString path, T *obj) const; + ox::Error writeObj(QString path, T *obj) const; - ox::FileStat stat(QString path) const; + ox::ValErr stat(QString path) const; signals: void updated(QString path) const; @@ -59,27 +59,19 @@ class Project: public QObject { }; template -int Project::writeObj(QString path, T *obj) const { - int err = 0; +ox::Error Project::writeObj(QString path, T *obj) const { auto buffLen = 1024 * 1024 * 10; QByteArray buff(buffLen, 0); // write MetalClaw size_t mcSize = 0; - err |= ox::writeMC(reinterpret_cast(buff.data()), buffLen, obj, &mcSize); - if (err) { - return err; - } - + oxReturnError(ox::writeMC(reinterpret_cast(buff.data()), buffLen, obj, &mcSize)); // write to FS - err |= write(path, reinterpret_cast(buff.data()), mcSize); - if (err) { - return err; - } + oxReturnError(write(path, reinterpret_cast(buff.data()), mcSize)); emit updated(path); - return err; + return OxError(0); } }