X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;ds=sidebyside;f=simgear%2Fstructure%2Fexception.hxx;h=0feffd5bb30cd2ad8f2e39ae3d162fb9ac745966;hb=5c9f5361bda56dddad8068d8e45dc08584440d70;hp=eaf126959f5901f4482f3be686d59400b58c89f3;hpb=76948416a9624ba269d2baeac294c6db0853f104;p=simgear.git diff --git a/simgear/structure/exception.hxx b/simgear/structure/exception.hxx index eaf12695..0feffd5b 100644 --- a/simgear/structure/exception.hxx +++ b/simgear/structure/exception.hxx @@ -14,7 +14,7 @@ #include #include -using std::string; +class SGPath; /** * Information encapsulating a single location in an external resource @@ -26,7 +26,7 @@ using std::string; class sg_location { public: - enum {MAX_PATH = 1024}; + enum {max_path = 1024}; sg_location (); sg_location(const std::string& path, int line = -1, int column = -1); explicit sg_location(const char* path, int line = -1, int column = -1); @@ -41,7 +41,7 @@ public: virtual void setByte (int byte); virtual std::string asString () const; private: - char _path[MAX_PATH]; + char _path[max_path]; int _line; int _column; int _byte; @@ -133,6 +133,10 @@ public: sg_io_exception (const char* message, const sg_location &location, const char* origin = 0); sg_io_exception (const std::string &message, const std::string &origin = ""); + sg_io_exception (const std::string &message, const sg_location &location, + const std::string &origin = ""); + sg_io_exception (const std::string &message, const SGPath& origin); + virtual ~sg_io_exception () throw (); virtual const std::string getFormattedMessage () const; virtual const sg_location &getLocation () const;