LssExceptions.h
// LssExceptions.h
//
// Author David Barrett-Lennard
// (C)opyright Cedanet Pty Ltd 2006
#ifndef Ceda_cxLss_LssExceptions_H
#define Ceda_cxLss_LssExceptions_H
#include "cxLss.h"
#include "Ceda/cxUtils/IException.h"
#include "Ceda/cxUtils/ExceptionBase.h"
namespace ceda
{
///////////////////////////////////////////////////////////////////////////////////////////////////
// ProgrammingErrorException
class ProgrammingErrorException : public ExceptionBase
{
public:
ProgrammingErrorException(ConstStringZ description) : ExceptionBase(description) {}
};
#define CEDA_RELEASE_ASSERT(expr,desc) do { if (!(expr)) { cxAssert(0); throw ProgrammingErrorException(desc); } } while (0)
///////////////////////////////////////////////////////////////////////////////////////////////////
// CorruptLSSException
class CorruptLSSException : public ExceptionBase
{
public:
CorruptLSSException(ConstStringZ description) : ExceptionBase(description) {}
};
///////////////////////////////////////////////////////////////////////////////////////////////////
class ApplyDeltaException : public ExceptionBase
{
public:
explicit ApplyDeltaException(ConstStringZ description) : ExceptionBase(description) {}
};
} // namespace ceda
#endif // include guard