X-Git-Url: https://git.carlh.net/gitweb/?a=blobdiff_plain;f=src%2Flib%2Fexceptions.h;h=b04d973dc7a62197571ce7d6697917f2023b23e0;hb=cadf2d574d144098fffa3c61e0a2be88f496cac6;hp=277355117ee097f86dce6d1d2c084436e8def4db;hpb=2e5b4effbc5e7f7ac74cae541a05d3401c9170b0;p=dcpomatic.git diff --git a/src/lib/exceptions.h b/src/lib/exceptions.h index 277355117..b04d973dc 100644 --- a/src/lib/exceptions.h +++ b/src/lib/exceptions.h @@ -17,8 +17,8 @@ */ -#ifndef DVDOMATIC_EXCEPTIONS_H -#define DVDOMATIC_EXCEPTIONS_H +#ifndef DCPOMATIC_EXCEPTIONS_H +#define DCPOMATIC_EXCEPTIONS_H /** @file src/exceptions.h * @brief Our exceptions. @@ -27,11 +27,11 @@ #include #include #include +#include #include extern "C" { #include } -#include "compose.hpp" /** @class StringError * @brief A parent class for exceptions using messages held in a std::string @@ -88,7 +88,7 @@ public: /** @param m Error message. * @param f Name of the file that this exception concerns. */ - FileError (std::string m, std::string f) + FileError (std::string m, boost::filesystem::path f) : StringError (m) , _file (f) {} @@ -96,13 +96,13 @@ public: virtual ~FileError () throw () {} /** @return name of the file that this exception concerns */ - std::string file () const { + boost::filesystem::path file () const { return _file; } private: /** name of the file that this exception concerns */ - std::string _file; + boost::filesystem::path _file; }; @@ -113,9 +113,7 @@ class OpenFileError : public FileError { public: /** @param f File that we were trying to open */ - OpenFileError (std::string f) - : FileError ("could not open file " + f, f) - {} + OpenFileError (boost::filesystem::path f); }; /** @class CreateFileError. @@ -125,9 +123,7 @@ class CreateFileError : public FileError { public: /** @param f File that we were trying to create */ - CreateFileError (std::string f) - : FileError ("could not create file " + f, f) - {} + CreateFileError (boost::filesystem::path f); }; @@ -140,11 +136,7 @@ public: /** @param f File that we were trying to read from. * @param e errno value, or 0. */ - ReadFileError (std::string f, int e = 0) - : FileError ("", f) - { - _what = String::compose ("could not read from file %1 (%2)", f, strerror (e)); - } + ReadFileError (boost::filesystem::path f, int e = 0); }; /** @class WriteFileError. @@ -156,11 +148,7 @@ public: /** @param f File that we were trying to write to. * @param e errno value, or 0. */ - WriteFileError (std::string f, int e) - : FileError ("", f) - { - _what = String::compose ("could not write to file %1 (%2)", f, strerror (e)); - } + WriteFileError (boost::filesystem::path f, int e); }; /** @class SettingError. @@ -195,9 +183,7 @@ class MissingSettingError : public SettingError { public: /** @param s Name of setting that was required */ - MissingSettingError (std::string s) - : SettingError (s, "missing required setting " + s) - {} + MissingSettingError (std::string s); }; /** @class BadSettingError @@ -223,14 +209,20 @@ public: {} }; -class PixelFormatError : public StringError +class KDMError : public StringError { public: - PixelFormatError (std::string o, AVPixelFormat f) - : StringError (String::compose ("Cannot handle pixel format %1 during %2", f, o)) + KDMError (std::string s) + : StringError (s) {} }; +class PixelFormatError : public StringError +{ +public: + PixelFormatError (std::string o, AVPixelFormat f); +}; + class ExceptionStore { public: