
// Auto-generated file -- do not edit

#ifndef AUTOGEN_CLIENTEXCEPTION_H
#define AUTOGEN_CLIENTEXCEPTION_H

#include "BoxException.h"

// --------------------------------------------------------------------------
//
// Class
//		Name:    ClientException
//		Purpose: Exception
//		Created: autogen
//
// --------------------------------------------------------------------------
class ClientException : public BoxException
{
public:
	ClientException(unsigned int SubType,
		const std::string& rMessage = "")
	: mSubType(SubType), mMessage(rMessage)
	{
	}
	
	ClientException(const ClientException &rToCopy)
	: mSubType(rToCopy.mSubType), mMessage(rToCopy.mMessage)
	{
	}
	
	~ClientException() throw ()
	{
	}
	
	enum
	{
		ExceptionType = 13
	};

	enum
	{
		Internal = 0,
		AssertFailed = 1,
		ClockWentBackwards = 2,
		FailedToDeleteStoreObjectInfoFile = 3,
		CorruptStoreObjectInfoFile = 4
	};
	
	virtual unsigned int GetType() const throw();
	virtual unsigned int GetSubType() const throw();
	virtual const char *what() const throw();
	virtual const std::string& GetMessage() const
	{
		return mMessage;
	}

private:
	unsigned int mSubType;
	std::string mMessage;
};

#endif // AUTOGEN_CLIENTEXCEPTION_H
