LBflow > Reference

Home
Research
Publications
LBflow
LB theory
Downloads
Examples
Reference
LBview
Collaborators Contact
Links
Site last updated 21st June 2007

exceptions.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  *                                                                         *
00003  *   LBflow - an extensible lattice Boltzmann simulation framework         *
00004  *                                                                         *
00005  *   Copyright (C) 2007 by Ed Llewellin                                    *
00006  *                                                                         *
00007  *   This file may not be copied or shared without permission              *
00008  *   Contact ed@lbflow.co.uk or visit www.lbflow.co.uk                     *
00009  *                                                                         *
00010  ***************************************************************************/
00011 
00012 #ifndef EXCEPTIONS_H
00013 #define EXCEPTIONS_H
00014 
00015 #include <sstream>
00016 #include <string>
00017 
00018 //#include "parser.h"
00019 //forward declarations
00020 class Parser;
00021 class TripleInt;
00022 class TripleDouble;
00023 
00024 using namespace std;
00025 
00026 class Exception {
00027   protected:
00028     string message;
00029   public:
00030     //constructor
00031     Exception() {message = "//\t";};
00032     //getter
00033     string getMessage() {return message;};
00034 };
00035 
00036 class GeneralException : public Exception {
00037   public:
00038     //constructors
00039     GeneralException(string);
00040 };
00041 
00042 class GeneralFileException : public Exception {
00043   public:
00044     //constructors
00045     GeneralFileException(Parser*, string);
00046 };
00047 
00048 class NoSuchFileException : public Exception {
00049   public:
00050     //constructors
00051     NoSuchFileException(string);
00052 };
00053 
00054 class CannotOpenFileException : public Exception {
00055   public:
00056     //constructors
00057     CannotOpenFileException(string);
00058 };
00059 
00060 class UnexpectedInputException : public Exception {
00061   public:
00062     //constructors
00063     UnexpectedInputException(string, int, int, string, string);
00064     UnexpectedInputException(string, int, int, string);
00065 };
00066 
00067 class PrematureEOFException : public Exception {
00068   public:
00069     //constructors
00070     PrematureEOFException(string);
00071 };
00072 
00073 class NoSuchTokenException : public Exception {
00074   public:
00075     //constructors
00076     NoSuchTokenException(Parser*, string);
00077 };
00078 
00079 class DanglingDelimiterException : public Exception {
00080   public:
00081     //constructors
00082     DanglingDelimiterException(string, int, int, string);
00083 };
00084 
00085 class DLException : public Exception {
00086   public:
00087     //constructors
00088     DLException(string, char*);
00089 };
00090 
00091 class SteeringException : public Exception {
00092   public:
00093     //constructors
00094     SteeringException(string, string);
00095     SteeringException(string);
00096 };
00097 
00098 class LatticeRangeException : public Exception {
00099   public:
00100     //constructors
00101     LatticeRangeException(int, string);
00102     LatticeRangeException(TripleInt, string);
00103     LatticeRangeException(TripleDouble, string);
00104 };
00105 
00106 class GTSException : public Exception {
00107   public:
00108     //constructors
00109     GTSException(string, int, string);
00110 };
00111 
00112 class TimeException : public Exception {
00113   public:
00114     //constructors
00115     TimeException();
00116 };
00117 
00118 class MappingException : public Exception {
00119   public:
00120     //constructors
00121     MappingException(string);
00122 };
00123 
00124 class IncompatibleVariablesException : public Exception {
00125   public:
00126     //constructors
00127     IncompatibleVariablesException(string);
00128 };
00129 
00130 class VariableException : public Exception {
00131   public:
00132     //constructors
00133     VariableException(string);
00134 };
00135 
00136 class MissingNodegroupException : public Exception {
00137   public:
00138     //constructors
00139     MissingNodegroupException(string);
00140 };
00141 
00142 class NodeCastException : public Exception {
00143   public:
00144     //constructors
00145     NodeCastException(string, string, string);
00146 };
00147 
00148 #endif
>