File Exception.h
File List > src > Exception.h
Go to the documentation of this file
// Copyright (c) 2012-2013, IGN France.
// Copyright (c) 2012-2022, Oslandia.
// SPDX-License-Identifier: LGPL-2.0-or-later
#ifndef _IGN_EXCEPTION_H_
#define _IGN_EXCEPTION_H_
#include "SFCGAL/config.h"
#include <string>
#include <boost/exception/all.hpp>
#include <boost/format.hpp>
namespace SFCGAL {
class SFCGAL_API Exception : public virtual boost::exception,
public virtual std::exception {
public:
Exception() throw();
Exception(std::string const &message) throw();
virtual ~Exception() throw();
virtual const char *
what() const throw();
std::string
diagnostic() const throw();
protected:
std::string _message;
};
class SFCGAL_API GeometryInvalidityException : public Exception {
public:
GeometryInvalidityException(std::string const &message) : Exception(message)
{
}
};
class SFCGAL_API NotImplementedException : public Exception {
public:
NotImplementedException(std::string const &message) : Exception(message) {}
};
class SFCGAL_API InappropriateGeometryException : public Exception {
public:
InappropriateGeometryException(std::string const &message)
: Exception(message)
{
}
};
class SFCGAL_API NonFiniteValueException : public Exception {
public:
NonFiniteValueException(std::string const &message) : Exception(message) {}
};
class SFCGAL_API WktParseException : public Exception {
public:
WktParseException(std::string const &message) : Exception(message) {}
};
} // namespace SFCGAL
#endif