Spinning Topp Logo BlackTopp Studios
inc
exception.h
Go to the documentation of this file.
1 // © Copyright 2010 - 2016 BlackTopp Studios Inc.
2 /* This file is part of The Mezzanine Engine.
3 
4  The Mezzanine Engine is free software: you can redistribute it and/or modify
5  it under the terms of the GNU General Public License as published by
6  the Free Software Foundation, either version 3 of the License, or
7  (at your option) any later version.
8 
9  The Mezzanine Engine is distributed in the hope that it will be useful,
10  but WITHOUT ANY WARRANTY; without even the implied warranty of
11  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12  GNU General Public License for more details.
13 
14  You should have received a copy of the GNU General Public License
15  along with The Mezzanine Engine. If not, see <http://www.gnu.org/licenses/>.
16 */
17 /* The original authors have included a copy of the license specified above in the
18  'Docs' folder. See 'gpl.txt'
19 */
20 /* We welcome the use of the Mezzanine engine to anyone, including companies who wish to
21  Build professional software and charge for their product.
22 
23  However there are some practical restrictions, so if your project involves
24  any of the following you should contact us and we will try to work something
25  out:
26  - DRM or Copy Protection of any kind(except Copyrights)
27  - Software Patents You Do Not Wish to Freely License
28  - Any Kind of Linking to Non-GPL licensed Works
29  - Are Currently In Violation of Another Copyright Holder's GPL License
30  - If You want to change our code and not add a few hundred MB of stuff to
31  your distribution
32 
33  These and other limitations could cause serious legal problems if you ignore
34  them, so it is best to simply contact us or the Free Software Foundation, if
35  you have any questions.
36 
37  Joseph Toppi - toppij@gmail.com
38  John Blackwood - makoenergy02@gmail.com
39 */
40 
41 // WARNING!
42 // This file is automatically generated. If you change it your changes wil not persist.
43 
44 #ifndef _exception_h
45 #define _exception_h
46 
47 #include "datatypes.h"
48 
49 /// @file
50 /// @brief This implements the exception hiearchy for Mezzanine.
51 /// @warning This file is automatically generated. If you change it your changes wil not persist.
52 
53 
54 namespace Mezzanine
55 {
56 
57  ///////////////////////////////////////////////////////////////////////////////
58  /// @brief This is the exception thrown by most Mezzanine systems that can throw exceptions.
59  class MEZZ_LIB ExceptionBase : public std::exception
60  {
61  public:
62  /// @brief This enum provides mapping/naming for all the core Mezzanine.
63  /// @details This system might superficially look convoluted. It is designed to make
64  /// capturing as much detail about problems as they occur.
65  ///
66  /// The numbers listed here must be unique to each exception. If an error code does not
67  /// identify the problem exactly it should be considered 'Unknown' for as much as it does
68  /// specify. For example, if there is an error opening a file for reading and writing, and
69  /// we don't know why it failed, using @ref IO_EXCEPTION would make sense
71  {
72  FIRST_EXCEPTION = 0x01F00F00, ///< To allow some inspection of the Exception system this can be use to identify the lower numbered Exception
73  IO_EXCEPTION = 0x01F00F00, ///< Thrown when there was an issue with IO but very little was known about it.
74  IO_FILE_EXCEPTION = 0x01F01F00, ///< Thrown when there is an unknown issue with a file
75  IO_FILE_READ_EXCEPTION = 0x01F01F01, ///< Thrown when a file could not be read and permissions seem to not be an issue (Filesystem/hardware issue?
76  IO_FILE_WRITE_EXCEPTION = 0x01F01F02, ///< Thrown when a file could not be written and perimssions seem not to be an issue
77  IO_FILE_NOT_FOUND_EXCEPTION = 0x01F01F03, ///< Thrown when a file was expected to be there, but was not
78  IO_FILE_PERMISSION_EXCEPTION = 0x01F01F04, ///< Thrown when permission was denied to a file
79  IO_DIRECTORY_EXCEPTION = 0x01F02F00, ///< Thrown when there is an unknown issue with a file
80  IO_DIRECTORY_READ_EXCEPTION = 0x01F02F01, ///< Thrown when a directory could be read and it wasn't a permission issue
81  IO_DIRECTORY_WRITE_EXCEPTION = 0x01F02F02, ///< Thrown when a directory could be written to and it wasn't a permission issue
82  IO_DIRECTORY_NOT_FOUND_EXCEPTION = 0x01F02F03, ///< Thrown when a directory was expected to be there, but was not
83  IO_DIRECTORY_PERMISSION_EXCEPTION = 0x01F02F04, ///< Thrown when permission is denied to a directory
84  IO_NETWORK_EXCEPTION = 0x01F03F00, ///< Thrown when something unknown causes network IO to fail
85  IO_NETWORK_READ_EXCEPTION = 0x01F03F01, ///< Thrown when data could not be read from the network (downloads)
86  IO_NETWORK_WRITE_EXCEPTION = 0x01F03F02, ///< Thrown when data could not be read from the network (iloads)
87  IO_NETWORK_NOT_FOUND_EXCEPTION = 0x01F03F03, ///< Thrown when no network connection is available
88  IO_NETWORK_URL_EXCEPTION = 0x01F03F04, ///< Thrown when an address is invalid or could not be found
89  IO_NETWORK_PERMISSION_EXCEPTION = 0x01F03F05, ///< Thrown when permision was denied to a network interface or network resource
90  IO_WRITE_EXCEPTION = 0x01F08F00, ///< Thrown when a write is happening but something has prevented the underlying code from knowing what was writing
91  IO_READ_EXCEPTION = 0x01F09F00, ///< Thrown when a read is happening but something has prevented the underlying code from knowing what was reading
92  II_EXCEPTION = 0x02F00F00, ///< Thrown when an unknown error with using an Identifier and it is invalid
93  II_IDENTITY_INVALID_EXCEPTION = 0x02F01F00, ///< Thrown when the identity string wasn't valid at all
94  II_IDENTITY_NOT_FOUND_EXCEPTION = 0x02F02F00, ///< Thrown when the requested identity could not be found
95  II_DUPLICATE_IDENTITY_EXCEPTION = 0x02F03F00, ///< Thrown when duplicates of teh same identity string exist
96  MM_EXCEPTION = 0x03F00F00, ///< Thrown when an unknown memory management exception occurs
97  MM_OUT_OF_MEMORY_EXCEPTION = 0x03F01F00, ///< Thrown when A memory allocation was attempted and failed
98  MM_OUT_OF_BOUNDS_EXCEPTION = 0x03F02F00, ///< Thrown when attempted to access something that really should note be accessed
99  SYNTAX_ERROR_EXCEPTION = 0x04F00F00, ///< Thrown when some kind of syntax exception
100  SYNTAX_ERROR_EXCEPTION_XML = 0x04F01F00, ///< Thrown when and XML document is being parsed but is invalid
101  SYNTAX_ERROR_EXCEPTION_XPATH = 0x04F02F00, ///< Thrown when an XPath query is being parsed but is invalid
102  SYNTAX_ERROR_EXCEPTION_LUA = 0x04F03F00, ///< Thrown when lua code in incorrect
103  SCRIPT_EXCEPTION = 0x05F00F00, ///< Thrown when an unknown error happens with a script
104  SCRIPT_EXCEPTION_LUA = 0x05F01F00, ///< Thrown when an unknown error happens in a Lua script
105  SCRIPT_EXCEPTION_LUA_YIELD = 0x05F01F01, ///< Thrown when Lua returns a yield and it should not have
106  SCRIPT_EXCEPTION_LUA_RUNTIME = 0x05F01F02, ///< Thrown when a Lua script has a runtime error
107  SCRIPT_EXCEPTION_LUA_ERRERR = 0x05F01F03, ///< Thrown when Lua has an error handling an error
108  PARAMETERS_EXCEPTION = 0x06F01F00, ///< Thrown when parameters are checked at runtime and found invalid
109  PARAMETERS_CAST_EXCEPTION = 0x06F01F01, ///< Thrown when a pointer parameter is checked at runtime and cannot be cast as expected
110  PARAMETERS_RANGE_EXCEPTION = 0x06F01F02, ///< Thrown when a passed parameter is checked at runtime and not in the expected range
111  ARITHMETIC_EXCEPTION = 0x00F01F00, ///< Thrown when Math has failed
112  INVALID_VERSION_EXCEPTION = 0x00F02F00, ///< Thrown when a version is accessed/parsed/required and it cannot work correctly or is missing
113  INVALID_STATE_EXCEPTION = 0x00F03F00, ///< Thrown when the available information should have worked but failed for unknown reasons
114  RENDERINGAPI_EXCEPTION = 0x00F04F00, ///< Thrown when the graphics card/DirectX/OpenGL fail
115  RT_ASSERTION_EXCEPTION = 0x00F05F00, ///< Thrown when a rutime assertion could have been Thrown
116  INTERNAL_EXCEPTION = 0x00F06F00, ///< Thrown when an unknown internal error occurred
117  NOT_IMPLEMENTED_EXCEPTION = 0x00F07F00, ///< Thrown when we just have not coded a thing yet, but we knew what the API should look like
118  INVALID_ASSIGNMENT = 0x00F08F00, ///< Thrown when a complex class is assigned to itself or other invalid assignments occur
119  LAST_EXCEPTION = 0x01F00F00 ///< To allow some inspection of the Exception system this can be use to identify the highest numbered Exception
120 
121  };
122 
123  private:
124  /// @internal
125  /// @brief This stores the exception type as a Mezzanine::String.
126  const Mezzanine::String ExceptionTypeName;
127  /// @internal
128  /// @brief When converting to Java types this is the kind of exception this becomes.
129  const Mezzanine::String ExceptionJavaTypeName;
130  /// @internal
131  /// @brief This stores the Error Message
132  const Mezzanine::String ErrorMessage;
133  /// @internal
134  /// @brief This stores the function name where the exception originated.
135  const Mezzanine::String Function;
136  /// @internal
137  /// @brief This stores the file where the exception originated.
138  const Mezzanine::String File;
139  /// @internal
140  /// @brief This stores the line number where the exception originated.
141  const Mezzanine::Whole Line;
142  public:
143  /// @brief Simple Constructor.
144  /// @param TypeName The name of the type of exception being thrown.
145  /// @param JavaTypeName What Java exception Corresponds to this?
146  /// @param Message A basic description of the error.
147  /// @param SrcFunction The name of the function from which this originated.
148  /// @param SrcFile The name of the file from which this originated.
149  /// @param FileLine The line on the named file from which this originated.
150  /// @details Don't call this, use @ref MEZZ_EXCEPTION to throw these, it is much simpler.
151  /// This constructor might change with time to include more data.
152  ExceptionBase(const Mezzanine::String& TypeName,
153  const Mezzanine::String& JavaTypeName,
154  const Mezzanine::String& Message,
155  const Mezzanine::String& SrcFunction,
156  const Mezzanine::String& SrcFile,
157  const Mezzanine::Whole& FileLine);
158  /// @brief Class destructor.
159  virtual ~ExceptionBase() throw();
160 
161  ///////////////////////////////////////////////////////////////////////////////
162  // Error Information
163  /// @brief Gets the exception code for this exception.
164  /// @return Returns the exception code for this exception.
165  virtual Mezzanine::Whole GetExceptionCode() const throw() = 0;
166 
167  /// @brief Gets the function of the exception.
168  /// @return Returns a const Mezzanine::String reference
169  const Mezzanine::String& GetFunction() const throw();
170  /// @brief Gets the file of the exception.
171  /// @return Returns the name of the file this exception is being thrown from.
172  const Mezzanine::String& GetFile() const throw();
173  /// @brief Gets the line number of the exception.
174  /// @return Returns the line in the file this exception is being thrown from.
175  const Mezzanine::Whole& GetLine() const throw();
176 
177  ///////////////////////////////////////////////////////////////////////////////
178  // Class MetaData
179  /// @brief Gets the name of the exception type.
180  /// @return Returns the exception type as a Mezzanine::String.
181  const Mezzanine::String& GetExceptionTypeName() const throw();
182  /// @brief Gets the name of the exception type.
183  /// @return Returns the exception type as a Mezzanine::String.
184  const Mezzanine::String& GetExceptionJavaTypeName() const throw();
185 
186  ///////////////////////////////////////////////////////////////////////////////
187  // Error Messages
188  /// @brief Constructs the complete message from all the information provided about the exception.
189  /// @return Returns a Mezzanine::String with the complete error.
190  Mezzanine::String GetCompleteMessage() const throw();
191  /// @brief Retrieves the error message.
192  /// @return This returns a Mezzanine::String that is the stored error message.
193  virtual const char* what() const throw();
194  };//Exception
195 
196  ///////////////////////////////////////////////////////////////////////////////
197  /// @internal
198  /// @struct ExceptionFactory
199  /// @brief Template class that serves as the base for exception factories.
200  /// @details Additional exceptions and their factories have to specialize from this template
201  /// changing the type value to the new exception type.This allows our exception macro to find the
202  /// appropriate factory at compile when template are being resolved. So this system can be
203  /// extended with additional exceptions wherever desired. Attempting to create an unknown exception
204  /// simply won't compile because the base exception class being abstract.
205  ///////////////////////////////////////////////////////////////////////////////
206  template <Mezzanine::Whole N>
208  {
209  /// @brief This allows parameterized uses of this type when, so exception can be throw without directly using the type system
211  }; //ExceptionFactory
212 
213 
214  ///////////////////////////////////////////////////////////////////////////////
215  // Exception code class definitions.
216 
217 
218 ///////////////////////////////////////////////////////////////////////////////
219 /// @brief Thrown when there was an issue with IO but very little was known about it.
220 /// @ingroup exception_heirarchy IOException
221 /// @details When catching this in java look for @a java.io.IOException
222 ///////////////////
224 {
225  public:
226  /// @brief Thrown when there was an issue with IO but very little was known about it.
227  static const Whole ExceptionCode = ExceptionBase::IO_EXCEPTION;
228 
229  /// @brief IOException Name overwriting constructor.
230  /// @param TypeName The name of this class.
231  /// @param JavaTypeName When passed to Java what does this convert to?
232  /// @param Message A basic description of the error.
233  /// @param SrcFunction The name of the function from which this originated.
234  /// @param SrcFile The name of the file from which this originated.
235  /// @param FileLine The line on the named file from which this originated.
236  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
238  const String& TypeName,
239  const String& JavaTypeName,
240  const String& Message,
241  const String& SrcFunction,
242  const String& SrcFile,
243  const Whole& FileLine)
244  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
245  {}
246 
247  /// @brief IOException constructor.
248  /// @param Message A basic description of the error.
249  /// @param SrcFunction The name of the function from which this originated.
250  /// @param SrcFile The name of the file from which this originated.
251  /// @param FileLine The line on the named file from which this originated.
252  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
253  IOException( const String& Message,
254  const String& SrcFunction,
255  const String& SrcFile,
256  const Whole& FileLine)
257  : ExceptionBase("IOException", "java/io/IOException", Message, SrcFunction, SrcFile, FileLine)
258  {}
259 
260  /// @brief Class destructor.
261  virtual ~IOException() throw() {}
262 
263  /// @copydoc ExceptionBase::GetExceptionCode()
264  virtual Whole GetExceptionCode() const throw()
265  { return IOException::ExceptionCode; }
266 //
267 }; // \ IOException
268 
269 /// @internal
270 /// @copydoc ExceptionFactory
271 template<>
272 struct ExceptionFactory< IOException::ExceptionCode>
273 {
274  /// @internal
275  /// @copydoc ExceptionFactory::Type
276  typedef IOException Type;
277 };
278 
279 ///////////////////////////////////////////////////////////////////////////////
280 /// @brief Thrown when there is an unknown issue with a file
281 /// @ingroup exception_heirarchy FileException
282 /// @details When catching this in java look for @a java.lang.XXXXX
283 ///////////////////
285 {
286  public:
287  /// @brief Thrown when there is an unknown issue with a file
288  static const Whole ExceptionCode = IOException::IO_FILE_EXCEPTION;
289 
290  /// @brief FileException Name overwriting constructor.
291  /// @param TypeName The name of this class.
292  /// @param JavaTypeName When passed to Java what does this convert to?
293  /// @param Message A basic description of the error.
294  /// @param SrcFunction The name of the function from which this originated.
295  /// @param SrcFile The name of the file from which this originated.
296  /// @param FileLine The line on the named file from which this originated.
297  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
299  const String& TypeName,
300  const String& JavaTypeName,
301  const String& Message,
302  const String& SrcFunction,
303  const String& SrcFile,
304  const Whole& FileLine)
305  : IOException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
306  {}
307 
308  /// @brief FileException constructor.
309  /// @param Message A basic description of the error.
310  /// @param SrcFunction The name of the function from which this originated.
311  /// @param SrcFile The name of the file from which this originated.
312  /// @param FileLine The line on the named file from which this originated.
313  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
314  FileException( const String& Message,
315  const String& SrcFunction,
316  const String& SrcFile,
317  const Whole& FileLine)
318  : IOException("FileException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
319  {}
320 
321  /// @brief Class destructor.
322  virtual ~FileException() throw() {}
323 
324  /// @copydoc ExceptionBase::GetExceptionCode()
325  virtual Whole GetExceptionCode() const throw()
326  { return FileException::ExceptionCode; }
327 //
328 }; // \ FileException
329 
330 /// @internal
331 /// @copydoc ExceptionFactory
332 template<>
333 struct ExceptionFactory< FileException::ExceptionCode>
334 {
335  /// @internal
336  /// @copydoc ExceptionFactory::Type
338 };
339 
340 ///////////////////////////////////////////////////////////////////////////////
341 /// @brief Thrown when a file could not be read and permissions seem to not be an issue (Filesystem/hardware issue?
342 /// @ingroup exception_heirarchy FileReadException
343 /// @details When catching this in java look for @a java.lang.XXXXX
344 ///////////////////
346 {
347  public:
348  /// @brief Thrown when a file could not be read and permissions seem to not be an issue (Filesystem/hardware issue?
349  static const Whole ExceptionCode = FileException::IO_FILE_READ_EXCEPTION;
350 
351  /// @brief FileReadException Name overwriting constructor.
352  /// @param TypeName The name of this class.
353  /// @param JavaTypeName When passed to Java what does this convert to?
354  /// @param Message A basic description of the error.
355  /// @param SrcFunction The name of the function from which this originated.
356  /// @param SrcFile The name of the file from which this originated.
357  /// @param FileLine The line on the named file from which this originated.
358  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
360  const String& TypeName,
361  const String& JavaTypeName,
362  const String& Message,
363  const String& SrcFunction,
364  const String& SrcFile,
365  const Whole& FileLine)
366  : FileException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
367  {}
368 
369  /// @brief FileReadException constructor.
370  /// @param Message A basic description of the error.
371  /// @param SrcFunction The name of the function from which this originated.
372  /// @param SrcFile The name of the file from which this originated.
373  /// @param FileLine The line on the named file from which this originated.
374  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
375  FileReadException( const String& Message,
376  const String& SrcFunction,
377  const String& SrcFile,
378  const Whole& FileLine)
379  : FileException("FileReadException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
380  {}
381 
382  /// @brief Class destructor.
383  virtual ~FileReadException() throw() {}
384 
385  /// @copydoc ExceptionBase::GetExceptionCode()
386  virtual Whole GetExceptionCode() const throw()
388 //
389 }; // \ FileReadException
390 
391 /// @internal
392 /// @copydoc ExceptionFactory
393 template<>
394 struct ExceptionFactory< FileReadException::ExceptionCode>
395 {
396  /// @internal
397  /// @copydoc ExceptionFactory::Type
399 };
400 
401 ///////////////////////////////////////////////////////////////////////////////
402 /// @brief Thrown when a file could not be written and perimssions seem not to be an issue
403 /// @ingroup exception_heirarchy FileWriteException
404 /// @details When catching this in java look for @a java.lang.XXXXX
405 ///////////////////
407 {
408  public:
409  /// @brief Thrown when a file could not be written and perimssions seem not to be an issue
410  static const Whole ExceptionCode = FileException::IO_FILE_WRITE_EXCEPTION;
411 
412  /// @brief FileWriteException Name overwriting constructor.
413  /// @param TypeName The name of this class.
414  /// @param JavaTypeName When passed to Java what does this convert to?
415  /// @param Message A basic description of the error.
416  /// @param SrcFunction The name of the function from which this originated.
417  /// @param SrcFile The name of the file from which this originated.
418  /// @param FileLine The line on the named file from which this originated.
419  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
421  const String& TypeName,
422  const String& JavaTypeName,
423  const String& Message,
424  const String& SrcFunction,
425  const String& SrcFile,
426  const Whole& FileLine)
427  : FileException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
428  {}
429 
430  /// @brief FileWriteException constructor.
431  /// @param Message A basic description of the error.
432  /// @param SrcFunction The name of the function from which this originated.
433  /// @param SrcFile The name of the file from which this originated.
434  /// @param FileLine The line on the named file from which this originated.
435  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
436  FileWriteException( const String& Message,
437  const String& SrcFunction,
438  const String& SrcFile,
439  const Whole& FileLine)
440  : FileException("FileWriteException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
441  {}
442 
443  /// @brief Class destructor.
444  virtual ~FileWriteException() throw() {}
445 
446  /// @copydoc ExceptionBase::GetExceptionCode()
447  virtual Whole GetExceptionCode() const throw()
449 //
450 }; // \ FileWriteException
451 
452 /// @internal
453 /// @copydoc ExceptionFactory
454 template<>
455 struct ExceptionFactory< FileWriteException::ExceptionCode>
456 {
457  /// @internal
458  /// @copydoc ExceptionFactory::Type
460 };
461 
462 ///////////////////////////////////////////////////////////////////////////////
463 /// @brief Thrown when a file was expected to be there, but was not
464 /// @ingroup exception_heirarchy FileNotFoundException
465 /// @details When catching this in java look for @a java.lang.XXXXX
466 ///////////////////
468 {
469  public:
470  /// @brief Thrown when a file was expected to be there, but was not
471  static const Whole ExceptionCode = FileException::IO_FILE_NOT_FOUND_EXCEPTION;
472 
473  /// @brief FileNotFoundException Name overwriting constructor.
474  /// @param TypeName The name of this class.
475  /// @param JavaTypeName When passed to Java what does this convert to?
476  /// @param Message A basic description of the error.
477  /// @param SrcFunction The name of the function from which this originated.
478  /// @param SrcFile The name of the file from which this originated.
479  /// @param FileLine The line on the named file from which this originated.
480  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
482  const String& TypeName,
483  const String& JavaTypeName,
484  const String& Message,
485  const String& SrcFunction,
486  const String& SrcFile,
487  const Whole& FileLine)
488  : FileException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
489  {}
490 
491  /// @brief FileNotFoundException constructor.
492  /// @param Message A basic description of the error.
493  /// @param SrcFunction The name of the function from which this originated.
494  /// @param SrcFile The name of the file from which this originated.
495  /// @param FileLine The line on the named file from which this originated.
496  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
497  FileNotFoundException( const String& Message,
498  const String& SrcFunction,
499  const String& SrcFile,
500  const Whole& FileLine)
501  : FileException("FileNotFoundException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
502  {}
503 
504  /// @brief Class destructor.
505  virtual ~FileNotFoundException() throw() {}
506 
507  /// @copydoc ExceptionBase::GetExceptionCode()
508  virtual Whole GetExceptionCode() const throw()
510 //
511 }; // \ FileNotFoundException
512 
513 /// @internal
514 /// @copydoc ExceptionFactory
515 template<>
517 {
518  /// @internal
519  /// @copydoc ExceptionFactory::Type
521 };
522 
523 ///////////////////////////////////////////////////////////////////////////////
524 /// @brief Thrown when permission was denied to a file
525 /// @ingroup exception_heirarchy FilePermissionException
526 /// @details When catching this in java look for @a java.lang.XXXXX
527 ///////////////////
529 {
530  public:
531  /// @brief Thrown when permission was denied to a file
533 
534  /// @brief FilePermissionException Name overwriting constructor.
535  /// @param TypeName The name of this class.
536  /// @param JavaTypeName When passed to Java what does this convert to?
537  /// @param Message A basic description of the error.
538  /// @param SrcFunction The name of the function from which this originated.
539  /// @param SrcFile The name of the file from which this originated.
540  /// @param FileLine The line on the named file from which this originated.
541  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
543  const String& TypeName,
544  const String& JavaTypeName,
545  const String& Message,
546  const String& SrcFunction,
547  const String& SrcFile,
548  const Whole& FileLine)
549  : FileException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
550  {}
551 
552  /// @brief FilePermissionException constructor.
553  /// @param Message A basic description of the error.
554  /// @param SrcFunction The name of the function from which this originated.
555  /// @param SrcFile The name of the file from which this originated.
556  /// @param FileLine The line on the named file from which this originated.
557  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
559  const String& SrcFunction,
560  const String& SrcFile,
561  const Whole& FileLine)
562  : FileException("FilePermissionException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
563  {}
564 
565  /// @brief Class destructor.
566  virtual ~FilePermissionException() throw() {}
567 
568  /// @copydoc ExceptionBase::GetExceptionCode()
569  virtual Whole GetExceptionCode() const throw()
571 //
572 }; // \ FilePermissionException
573 
574 /// @internal
575 /// @copydoc ExceptionFactory
576 template<>
578 {
579  /// @internal
580  /// @copydoc ExceptionFactory::Type
582 };
583 
584 ///////////////////////////////////////////////////////////////////////////////
585 /// @brief Thrown when there is an unknown issue with a file
586 /// @ingroup exception_heirarchy DirectoryException
587 /// @details When catching this in java look for @a java.lang.XXXXX
588 ///////////////////
590 {
591  public:
592  /// @brief Thrown when there is an unknown issue with a file
593  static const Whole ExceptionCode = IOException::IO_DIRECTORY_EXCEPTION;
594 
595  /// @brief DirectoryException Name overwriting constructor.
596  /// @param TypeName The name of this class.
597  /// @param JavaTypeName When passed to Java what does this convert to?
598  /// @param Message A basic description of the error.
599  /// @param SrcFunction The name of the function from which this originated.
600  /// @param SrcFile The name of the file from which this originated.
601  /// @param FileLine The line on the named file from which this originated.
602  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
604  const String& TypeName,
605  const String& JavaTypeName,
606  const String& Message,
607  const String& SrcFunction,
608  const String& SrcFile,
609  const Whole& FileLine)
610  : IOException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
611  {}
612 
613  /// @brief DirectoryException constructor.
614  /// @param Message A basic description of the error.
615  /// @param SrcFunction The name of the function from which this originated.
616  /// @param SrcFile The name of the file from which this originated.
617  /// @param FileLine The line on the named file from which this originated.
618  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
619  DirectoryException( const String& Message,
620  const String& SrcFunction,
621  const String& SrcFile,
622  const Whole& FileLine)
623  : IOException("DirectoryException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
624  {}
625 
626  /// @brief Class destructor.
627  virtual ~DirectoryException() throw() {}
628 
629  /// @copydoc ExceptionBase::GetExceptionCode()
630  virtual Whole GetExceptionCode() const throw()
632 //
633 }; // \ DirectoryException
634 
635 /// @internal
636 /// @copydoc ExceptionFactory
637 template<>
638 struct ExceptionFactory< DirectoryException::ExceptionCode>
639 {
640  /// @internal
641  /// @copydoc ExceptionFactory::Type
643 };
644 
645 ///////////////////////////////////////////////////////////////////////////////
646 /// @brief Thrown when a directory could be read and it wasn't a permission issue
647 /// @ingroup exception_heirarchy DirectoryReadException
648 /// @details When catching this in java look for @a java.lang.XXXXX
649 ///////////////////
651 {
652  public:
653  /// @brief Thrown when a directory could be read and it wasn't a permission issue
655 
656  /// @brief DirectoryReadException Name overwriting constructor.
657  /// @param TypeName The name of this class.
658  /// @param JavaTypeName When passed to Java what does this convert to?
659  /// @param Message A basic description of the error.
660  /// @param SrcFunction The name of the function from which this originated.
661  /// @param SrcFile The name of the file from which this originated.
662  /// @param FileLine The line on the named file from which this originated.
663  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
665  const String& TypeName,
666  const String& JavaTypeName,
667  const String& Message,
668  const String& SrcFunction,
669  const String& SrcFile,
670  const Whole& FileLine)
671  : DirectoryException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
672  {}
673 
674  /// @brief DirectoryReadException constructor.
675  /// @param Message A basic description of the error.
676  /// @param SrcFunction The name of the function from which this originated.
677  /// @param SrcFile The name of the file from which this originated.
678  /// @param FileLine The line on the named file from which this originated.
679  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
681  const String& SrcFunction,
682  const String& SrcFile,
683  const Whole& FileLine)
684  : DirectoryException("DirectoryReadException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
685  {}
686 
687  /// @brief Class destructor.
688  virtual ~DirectoryReadException() throw() {}
689 
690  /// @copydoc ExceptionBase::GetExceptionCode()
691  virtual Whole GetExceptionCode() const throw()
693 //
694 }; // \ DirectoryReadException
695 
696 /// @internal
697 /// @copydoc ExceptionFactory
698 template<>
700 {
701  /// @internal
702  /// @copydoc ExceptionFactory::Type
704 };
705 
706 ///////////////////////////////////////////////////////////////////////////////
707 /// @brief Thrown when a directory could be written to and it wasn't a permission issue
708 /// @ingroup exception_heirarchy DirectoryWriteException
709 /// @details When catching this in java look for @a java.lang.XXXXX
710 ///////////////////
712 {
713  public:
714  /// @brief Thrown when a directory could be written to and it wasn't a permission issue
716 
717  /// @brief DirectoryWriteException Name overwriting constructor.
718  /// @param TypeName The name of this class.
719  /// @param JavaTypeName When passed to Java what does this convert to?
720  /// @param Message A basic description of the error.
721  /// @param SrcFunction The name of the function from which this originated.
722  /// @param SrcFile The name of the file from which this originated.
723  /// @param FileLine The line on the named file from which this originated.
724  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
726  const String& TypeName,
727  const String& JavaTypeName,
728  const String& Message,
729  const String& SrcFunction,
730  const String& SrcFile,
731  const Whole& FileLine)
732  : DirectoryException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
733  {}
734 
735  /// @brief DirectoryWriteException constructor.
736  /// @param Message A basic description of the error.
737  /// @param SrcFunction The name of the function from which this originated.
738  /// @param SrcFile The name of the file from which this originated.
739  /// @param FileLine The line on the named file from which this originated.
740  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
742  const String& SrcFunction,
743  const String& SrcFile,
744  const Whole& FileLine)
745  : DirectoryException("DirectoryWriteException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
746  {}
747 
748  /// @brief Class destructor.
749  virtual ~DirectoryWriteException() throw() {}
750 
751  /// @copydoc ExceptionBase::GetExceptionCode()
752  virtual Whole GetExceptionCode() const throw()
754 //
755 }; // \ DirectoryWriteException
756 
757 /// @internal
758 /// @copydoc ExceptionFactory
759 template<>
761 {
762  /// @internal
763  /// @copydoc ExceptionFactory::Type
765 };
766 
767 ///////////////////////////////////////////////////////////////////////////////
768 /// @brief Thrown when a directory was expected to be there, but was not
769 /// @ingroup exception_heirarchy DirectoryNotFoundException
770 /// @details When catching this in java look for @a java.lang.XXXXX
771 ///////////////////
773 {
774  public:
775  /// @brief Thrown when a directory was expected to be there, but was not
777 
778  /// @brief DirectoryNotFoundException Name overwriting constructor.
779  /// @param TypeName The name of this class.
780  /// @param JavaTypeName When passed to Java what does this convert to?
781  /// @param Message A basic description of the error.
782  /// @param SrcFunction The name of the function from which this originated.
783  /// @param SrcFile The name of the file from which this originated.
784  /// @param FileLine The line on the named file from which this originated.
785  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
787  const String& TypeName,
788  const String& JavaTypeName,
789  const String& Message,
790  const String& SrcFunction,
791  const String& SrcFile,
792  const Whole& FileLine)
793  : DirectoryException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
794  {}
795 
796  /// @brief DirectoryNotFoundException constructor.
797  /// @param Message A basic description of the error.
798  /// @param SrcFunction The name of the function from which this originated.
799  /// @param SrcFile The name of the file from which this originated.
800  /// @param FileLine The line on the named file from which this originated.
801  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
803  const String& SrcFunction,
804  const String& SrcFile,
805  const Whole& FileLine)
806  : DirectoryException("DirectoryNotFoundException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
807  {}
808 
809  /// @brief Class destructor.
810  virtual ~DirectoryNotFoundException() throw() {}
811 
812  /// @copydoc ExceptionBase::GetExceptionCode()
813  virtual Whole GetExceptionCode() const throw()
815 //
816 }; // \ DirectoryNotFoundException
817 
818 /// @internal
819 /// @copydoc ExceptionFactory
820 template<>
822 {
823  /// @internal
824  /// @copydoc ExceptionFactory::Type
826 };
827 
828 ///////////////////////////////////////////////////////////////////////////////
829 /// @brief Thrown when permission is denied to a directory
830 /// @ingroup exception_heirarchy DirectoryPermissionException
831 /// @details When catching this in java look for @a java.lang.XXXXX
832 ///////////////////
834 {
835  public:
836  /// @brief Thrown when permission is denied to a directory
838 
839  /// @brief DirectoryPermissionException Name overwriting constructor.
840  /// @param TypeName The name of this class.
841  /// @param JavaTypeName When passed to Java what does this convert to?
842  /// @param Message A basic description of the error.
843  /// @param SrcFunction The name of the function from which this originated.
844  /// @param SrcFile The name of the file from which this originated.
845  /// @param FileLine The line on the named file from which this originated.
846  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
848  const String& TypeName,
849  const String& JavaTypeName,
850  const String& Message,
851  const String& SrcFunction,
852  const String& SrcFile,
853  const Whole& FileLine)
854  : DirectoryException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
855  {}
856 
857  /// @brief DirectoryPermissionException constructor.
858  /// @param Message A basic description of the error.
859  /// @param SrcFunction The name of the function from which this originated.
860  /// @param SrcFile The name of the file from which this originated.
861  /// @param FileLine The line on the named file from which this originated.
862  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
864  const String& SrcFunction,
865  const String& SrcFile,
866  const Whole& FileLine)
867  : DirectoryException("DirectoryPermissionException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
868  {}
869 
870  /// @brief Class destructor.
871  virtual ~DirectoryPermissionException() throw() {}
872 
873  /// @copydoc ExceptionBase::GetExceptionCode()
874  virtual Whole GetExceptionCode() const throw()
876 //
877 }; // \ DirectoryPermissionException
878 
879 /// @internal
880 /// @copydoc ExceptionFactory
881 template<>
883 {
884  /// @internal
885  /// @copydoc ExceptionFactory::Type
887 };
888 
889 ///////////////////////////////////////////////////////////////////////////////
890 /// @brief Thrown when something unknown causes network IO to fail
891 /// @ingroup exception_heirarchy NetworkException
892 /// @details When catching this in java look for @a java.lang.XXXXX
893 ///////////////////
895 {
896  public:
897  /// @brief Thrown when something unknown causes network IO to fail
898  static const Whole ExceptionCode = IOException::IO_NETWORK_EXCEPTION;
899 
900  /// @brief NetworkException Name overwriting constructor.
901  /// @param TypeName The name of this class.
902  /// @param JavaTypeName When passed to Java what does this convert to?
903  /// @param Message A basic description of the error.
904  /// @param SrcFunction The name of the function from which this originated.
905  /// @param SrcFile The name of the file from which this originated.
906  /// @param FileLine The line on the named file from which this originated.
907  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
909  const String& TypeName,
910  const String& JavaTypeName,
911  const String& Message,
912  const String& SrcFunction,
913  const String& SrcFile,
914  const Whole& FileLine)
915  : IOException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
916  {}
917 
918  /// @brief NetworkException constructor.
919  /// @param Message A basic description of the error.
920  /// @param SrcFunction The name of the function from which this originated.
921  /// @param SrcFile The name of the file from which this originated.
922  /// @param FileLine The line on the named file from which this originated.
923  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
924  NetworkException( const String& Message,
925  const String& SrcFunction,
926  const String& SrcFile,
927  const Whole& FileLine)
928  : IOException("NetworkException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
929  {}
930 
931  /// @brief Class destructor.
932  virtual ~NetworkException() throw() {}
933 
934  /// @copydoc ExceptionBase::GetExceptionCode()
935  virtual Whole GetExceptionCode() const throw()
937 //
938 }; // \ NetworkException
939 
940 /// @internal
941 /// @copydoc ExceptionFactory
942 template<>
943 struct ExceptionFactory< NetworkException::ExceptionCode>
944 {
945  /// @internal
946  /// @copydoc ExceptionFactory::Type
948 };
949 
950 ///////////////////////////////////////////////////////////////////////////////
951 /// @brief Thrown when data could not be read from the network (downloads)
952 /// @ingroup exception_heirarchy NetworkReadException
953 /// @details When catching this in java look for @a java.lang.XXXXX
954 ///////////////////
956 {
957  public:
958  /// @brief Thrown when data could not be read from the network (downloads)
960 
961  /// @brief NetworkReadException Name overwriting constructor.
962  /// @param TypeName The name of this class.
963  /// @param JavaTypeName When passed to Java what does this convert to?
964  /// @param Message A basic description of the error.
965  /// @param SrcFunction The name of the function from which this originated.
966  /// @param SrcFile The name of the file from which this originated.
967  /// @param FileLine The line on the named file from which this originated.
968  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
970  const String& TypeName,
971  const String& JavaTypeName,
972  const String& Message,
973  const String& SrcFunction,
974  const String& SrcFile,
975  const Whole& FileLine)
976  : NetworkException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
977  {}
978 
979  /// @brief NetworkReadException constructor.
980  /// @param Message A basic description of the error.
981  /// @param SrcFunction The name of the function from which this originated.
982  /// @param SrcFile The name of the file from which this originated.
983  /// @param FileLine The line on the named file from which this originated.
984  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
985  NetworkReadException( const String& Message,
986  const String& SrcFunction,
987  const String& SrcFile,
988  const Whole& FileLine)
989  : NetworkException("NetworkReadException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
990  {}
991 
992  /// @brief Class destructor.
993  virtual ~NetworkReadException() throw() {}
994 
995  /// @copydoc ExceptionBase::GetExceptionCode()
996  virtual Whole GetExceptionCode() const throw()
998 //
999 }; // \ NetworkReadException
1000 
1001 /// @internal
1002 /// @copydoc ExceptionFactory
1003 template<>
1005 {
1006  /// @internal
1007  /// @copydoc ExceptionFactory::Type
1009 };
1010 
1011 ///////////////////////////////////////////////////////////////////////////////
1012 /// @brief Thrown when data could not be read from the network (iloads)
1013 /// @ingroup exception_heirarchy NetworkWriteException
1014 /// @details When catching this in java look for @a java.lang.XXXXX
1015 ///////////////////
1017 {
1018  public:
1019  /// @brief Thrown when data could not be read from the network (iloads)
1021 
1022  /// @brief NetworkWriteException Name overwriting constructor.
1023  /// @param TypeName The name of this class.
1024  /// @param JavaTypeName When passed to Java what does this convert to?
1025  /// @param Message A basic description of the error.
1026  /// @param SrcFunction The name of the function from which this originated.
1027  /// @param SrcFile The name of the file from which this originated.
1028  /// @param FileLine The line on the named file from which this originated.
1029  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1031  const String& TypeName,
1032  const String& JavaTypeName,
1033  const String& Message,
1034  const String& SrcFunction,
1035  const String& SrcFile,
1036  const Whole& FileLine)
1037  : NetworkException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1038  {}
1039 
1040  /// @brief NetworkWriteException constructor.
1041  /// @param Message A basic description of the error.
1042  /// @param SrcFunction The name of the function from which this originated.
1043  /// @param SrcFile The name of the file from which this originated.
1044  /// @param FileLine The line on the named file from which this originated.
1045  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1047  const String& SrcFunction,
1048  const String& SrcFile,
1049  const Whole& FileLine)
1050  : NetworkException("NetworkWriteException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1051  {}
1052 
1053  /// @brief Class destructor.
1054  virtual ~NetworkWriteException() throw() {}
1055 
1056  /// @copydoc ExceptionBase::GetExceptionCode()
1057  virtual Whole GetExceptionCode() const throw()
1059 //
1060 }; // \ NetworkWriteException
1061 
1062 /// @internal
1063 /// @copydoc ExceptionFactory
1064 template<>
1066 {
1067  /// @internal
1068  /// @copydoc ExceptionFactory::Type
1070 };
1071 
1072 ///////////////////////////////////////////////////////////////////////////////
1073 /// @brief Thrown when no network connection is available
1074 /// @ingroup exception_heirarchy NetworkNotFoundException
1075 /// @details When catching this in java look for @a java.lang.XXXXX
1076 ///////////////////
1078 {
1079  public:
1080  /// @brief Thrown when no network connection is available
1082 
1083  /// @brief NetworkNotFoundException Name overwriting constructor.
1084  /// @param TypeName The name of this class.
1085  /// @param JavaTypeName When passed to Java what does this convert to?
1086  /// @param Message A basic description of the error.
1087  /// @param SrcFunction The name of the function from which this originated.
1088  /// @param SrcFile The name of the file from which this originated.
1089  /// @param FileLine The line on the named file from which this originated.
1090  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1092  const String& TypeName,
1093  const String& JavaTypeName,
1094  const String& Message,
1095  const String& SrcFunction,
1096  const String& SrcFile,
1097  const Whole& FileLine)
1098  : NetworkException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1099  {}
1100 
1101  /// @brief NetworkNotFoundException constructor.
1102  /// @param Message A basic description of the error.
1103  /// @param SrcFunction The name of the function from which this originated.
1104  /// @param SrcFile The name of the file from which this originated.
1105  /// @param FileLine The line on the named file from which this originated.
1106  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1108  const String& SrcFunction,
1109  const String& SrcFile,
1110  const Whole& FileLine)
1111  : NetworkException("NetworkNotFoundException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1112  {}
1113 
1114  /// @brief Class destructor.
1115  virtual ~NetworkNotFoundException() throw() {}
1116 
1117  /// @copydoc ExceptionBase::GetExceptionCode()
1118  virtual Whole GetExceptionCode() const throw()
1120 //
1121 }; // \ NetworkNotFoundException
1122 
1123 /// @internal
1124 /// @copydoc ExceptionFactory
1125 template<>
1127 {
1128  /// @internal
1129  /// @copydoc ExceptionFactory::Type
1131 };
1132 
1133 ///////////////////////////////////////////////////////////////////////////////
1134 /// @brief Thrown when an address is invalid or could not be found
1135 /// @ingroup exception_heirarchy NetworkURLException
1136 /// @details When catching this in java look for @a java.lang.XXXXX
1137 ///////////////////
1139 {
1140  public:
1141  /// @brief Thrown when an address is invalid or could not be found
1143 
1144  /// @brief NetworkURLException Name overwriting constructor.
1145  /// @param TypeName The name of this class.
1146  /// @param JavaTypeName When passed to Java what does this convert to?
1147  /// @param Message A basic description of the error.
1148  /// @param SrcFunction The name of the function from which this originated.
1149  /// @param SrcFile The name of the file from which this originated.
1150  /// @param FileLine The line on the named file from which this originated.
1151  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1153  const String& TypeName,
1154  const String& JavaTypeName,
1155  const String& Message,
1156  const String& SrcFunction,
1157  const String& SrcFile,
1158  const Whole& FileLine)
1159  : NetworkException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1160  {}
1161 
1162  /// @brief NetworkURLException constructor.
1163  /// @param Message A basic description of the error.
1164  /// @param SrcFunction The name of the function from which this originated.
1165  /// @param SrcFile The name of the file from which this originated.
1166  /// @param FileLine The line on the named file from which this originated.
1167  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1168  NetworkURLException( const String& Message,
1169  const String& SrcFunction,
1170  const String& SrcFile,
1171  const Whole& FileLine)
1172  : NetworkException("NetworkURLException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1173  {}
1174 
1175  /// @brief Class destructor.
1176  virtual ~NetworkURLException() throw() {}
1177 
1178  /// @copydoc ExceptionBase::GetExceptionCode()
1179  virtual Whole GetExceptionCode() const throw()
1181 //
1182 }; // \ NetworkURLException
1183 
1184 /// @internal
1185 /// @copydoc ExceptionFactory
1186 template<>
1187 struct ExceptionFactory< NetworkURLException::ExceptionCode>
1188 {
1189  /// @internal
1190  /// @copydoc ExceptionFactory::Type
1192 };
1193 
1194 ///////////////////////////////////////////////////////////////////////////////
1195 /// @brief Thrown when permision was denied to a network interface or network resource
1196 /// @ingroup exception_heirarchy NetworkPermissionException
1197 /// @details When catching this in java look for @a java.lang.XXXXX
1198 ///////////////////
1200 {
1201  public:
1202  /// @brief Thrown when permision was denied to a network interface or network resource
1204 
1205  /// @brief NetworkPermissionException Name overwriting constructor.
1206  /// @param TypeName The name of this class.
1207  /// @param JavaTypeName When passed to Java what does this convert to?
1208  /// @param Message A basic description of the error.
1209  /// @param SrcFunction The name of the function from which this originated.
1210  /// @param SrcFile The name of the file from which this originated.
1211  /// @param FileLine The line on the named file from which this originated.
1212  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1214  const String& TypeName,
1215  const String& JavaTypeName,
1216  const String& Message,
1217  const String& SrcFunction,
1218  const String& SrcFile,
1219  const Whole& FileLine)
1220  : NetworkException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1221  {}
1222 
1223  /// @brief NetworkPermissionException constructor.
1224  /// @param Message A basic description of the error.
1225  /// @param SrcFunction The name of the function from which this originated.
1226  /// @param SrcFile The name of the file from which this originated.
1227  /// @param FileLine The line on the named file from which this originated.
1228  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1230  const String& SrcFunction,
1231  const String& SrcFile,
1232  const Whole& FileLine)
1233  : NetworkException("NetworkPermissionException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1234  {}
1235 
1236  /// @brief Class destructor.
1237  virtual ~NetworkPermissionException() throw() {}
1238 
1239  /// @copydoc ExceptionBase::GetExceptionCode()
1240  virtual Whole GetExceptionCode() const throw()
1242 //
1243 }; // \ NetworkPermissionException
1244 
1245 /// @internal
1246 /// @copydoc ExceptionFactory
1247 template<>
1249 {
1250  /// @internal
1251  /// @copydoc ExceptionFactory::Type
1253 };
1254 
1255 ///////////////////////////////////////////////////////////////////////////////
1256 /// @brief Thrown when a write is happening but something has prevented the underlying code from knowing what was writing
1257 /// @ingroup exception_heirarchy IOWriteException
1258 /// @details When catching this in java look for @a java.lang.XXXXX
1259 ///////////////////
1261 {
1262  public:
1263  /// @brief Thrown when a write is happening but something has prevented the underlying code from knowing what was writing
1264  static const Whole ExceptionCode = IOException::IO_WRITE_EXCEPTION;
1265 
1266  /// @brief IOWriteException Name overwriting constructor.
1267  /// @param TypeName The name of this class.
1268  /// @param JavaTypeName When passed to Java what does this convert to?
1269  /// @param Message A basic description of the error.
1270  /// @param SrcFunction The name of the function from which this originated.
1271  /// @param SrcFile The name of the file from which this originated.
1272  /// @param FileLine The line on the named file from which this originated.
1273  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1275  const String& TypeName,
1276  const String& JavaTypeName,
1277  const String& Message,
1278  const String& SrcFunction,
1279  const String& SrcFile,
1280  const Whole& FileLine)
1281  : IOException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1282  {}
1283 
1284  /// @brief IOWriteException constructor.
1285  /// @param Message A basic description of the error.
1286  /// @param SrcFunction The name of the function from which this originated.
1287  /// @param SrcFile The name of the file from which this originated.
1288  /// @param FileLine The line on the named file from which this originated.
1289  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1290  IOWriteException( const String& Message,
1291  const String& SrcFunction,
1292  const String& SrcFile,
1293  const Whole& FileLine)
1294  : IOException("IOWriteException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1295  {}
1296 
1297  /// @brief Class destructor.
1298  virtual ~IOWriteException() throw() {}
1299 
1300  /// @copydoc ExceptionBase::GetExceptionCode()
1301  virtual Whole GetExceptionCode() const throw()
1303 //
1304 }; // \ IOWriteException
1305 
1306 /// @internal
1307 /// @copydoc ExceptionFactory
1308 template<>
1309 struct ExceptionFactory< IOWriteException::ExceptionCode>
1310 {
1311  /// @internal
1312  /// @copydoc ExceptionFactory::Type
1314 };
1315 
1316 ///////////////////////////////////////////////////////////////////////////////
1317 /// @brief Thrown when a read is happening but something has prevented the underlying code from knowing what was reading
1318 /// @ingroup exception_heirarchy IOReadException
1319 /// @details When catching this in java look for @a java.lang.XXXXX
1320 ///////////////////
1322 {
1323  public:
1324  /// @brief Thrown when a read is happening but something has prevented the underlying code from knowing what was reading
1325  static const Whole ExceptionCode = IOException::IO_READ_EXCEPTION;
1326 
1327  /// @brief IOReadException Name overwriting constructor.
1328  /// @param TypeName The name of this class.
1329  /// @param JavaTypeName When passed to Java what does this convert to?
1330  /// @param Message A basic description of the error.
1331  /// @param SrcFunction The name of the function from which this originated.
1332  /// @param SrcFile The name of the file from which this originated.
1333  /// @param FileLine The line on the named file from which this originated.
1334  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1336  const String& TypeName,
1337  const String& JavaTypeName,
1338  const String& Message,
1339  const String& SrcFunction,
1340  const String& SrcFile,
1341  const Whole& FileLine)
1342  : IOException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1343  {}
1344 
1345  /// @brief IOReadException constructor.
1346  /// @param Message A basic description of the error.
1347  /// @param SrcFunction The name of the function from which this originated.
1348  /// @param SrcFile The name of the file from which this originated.
1349  /// @param FileLine The line on the named file from which this originated.
1350  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1351  IOReadException( const String& Message,
1352  const String& SrcFunction,
1353  const String& SrcFile,
1354  const Whole& FileLine)
1355  : IOException("IOReadException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1356  {}
1357 
1358  /// @brief Class destructor.
1359  virtual ~IOReadException() throw() {}
1360 
1361  /// @copydoc ExceptionBase::GetExceptionCode()
1362  virtual Whole GetExceptionCode() const throw()
1363  { return IOReadException::ExceptionCode; }
1364 //
1365 }; // \ IOReadException
1366 
1367 /// @internal
1368 /// @copydoc ExceptionFactory
1369 template<>
1370 struct ExceptionFactory< IOReadException::ExceptionCode>
1371 {
1372  /// @internal
1373  /// @copydoc ExceptionFactory::Type
1375 };
1376 
1377 ///////////////////////////////////////////////////////////////////////////////
1378 /// @brief Thrown when an unknown error with using an Identifier and it is invalid
1379 /// @ingroup exception_heirarchy InstanceIdentityException
1380 /// @details When catching this in java look for @a java.lang.XXXXX
1381 ///////////////////
1383 {
1384  public:
1385  /// @brief Thrown when an unknown error with using an Identifier and it is invalid
1386  static const Whole ExceptionCode = ExceptionBase::II_EXCEPTION;
1387 
1388  /// @brief InstanceIdentityException Name overwriting constructor.
1389  /// @param TypeName The name of this class.
1390  /// @param JavaTypeName When passed to Java what does this convert to?
1391  /// @param Message A basic description of the error.
1392  /// @param SrcFunction The name of the function from which this originated.
1393  /// @param SrcFile The name of the file from which this originated.
1394  /// @param FileLine The line on the named file from which this originated.
1395  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1397  const String& TypeName,
1398  const String& JavaTypeName,
1399  const String& Message,
1400  const String& SrcFunction,
1401  const String& SrcFile,
1402  const Whole& FileLine)
1403  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1404  {}
1405 
1406  /// @brief InstanceIdentityException constructor.
1407  /// @param Message A basic description of the error.
1408  /// @param SrcFunction The name of the function from which this originated.
1409  /// @param SrcFile The name of the file from which this originated.
1410  /// @param FileLine The line on the named file from which this originated.
1411  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1413  const String& SrcFunction,
1414  const String& SrcFile,
1415  const Whole& FileLine)
1416  : ExceptionBase("InstanceIdentityException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1417  {}
1418 
1419  /// @brief Class destructor.
1420  virtual ~InstanceIdentityException() throw() {}
1421 
1422  /// @copydoc ExceptionBase::GetExceptionCode()
1423  virtual Whole GetExceptionCode() const throw()
1425 //
1426 }; // \ InstanceIdentityException
1427 
1428 /// @internal
1429 /// @copydoc ExceptionFactory
1430 template<>
1432 {
1433  /// @internal
1434  /// @copydoc ExceptionFactory::Type
1436 };
1437 
1438 ///////////////////////////////////////////////////////////////////////////////
1439 /// @brief Thrown when the identity string wasn't valid at all
1440 /// @ingroup exception_heirarchy InstanceIdentityInvalidException
1441 /// @details When catching this in java look for @a java.lang.XXXXX
1442 ///////////////////
1444 {
1445  public:
1446  /// @brief Thrown when the identity string wasn't valid at all
1448 
1449  /// @brief InstanceIdentityInvalidException Name overwriting constructor.
1450  /// @param TypeName The name of this class.
1451  /// @param JavaTypeName When passed to Java what does this convert to?
1452  /// @param Message A basic description of the error.
1453  /// @param SrcFunction The name of the function from which this originated.
1454  /// @param SrcFile The name of the file from which this originated.
1455  /// @param FileLine The line on the named file from which this originated.
1456  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1458  const String& TypeName,
1459  const String& JavaTypeName,
1460  const String& Message,
1461  const String& SrcFunction,
1462  const String& SrcFile,
1463  const Whole& FileLine)
1464  : InstanceIdentityException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1465  {}
1466 
1467  /// @brief InstanceIdentityInvalidException constructor.
1468  /// @param Message A basic description of the error.
1469  /// @param SrcFunction The name of the function from which this originated.
1470  /// @param SrcFile The name of the file from which this originated.
1471  /// @param FileLine The line on the named file from which this originated.
1472  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1474  const String& SrcFunction,
1475  const String& SrcFile,
1476  const Whole& FileLine)
1477  : InstanceIdentityException("InstanceIdentityInvalidException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1478  {}
1479 
1480  /// @brief Class destructor.
1482 
1483  /// @copydoc ExceptionBase::GetExceptionCode()
1484  virtual Whole GetExceptionCode() const throw()
1486 //
1487 }; // \ InstanceIdentityInvalidException
1488 
1489 /// @internal
1490 /// @copydoc ExceptionFactory
1491 template<>
1493 {
1494  /// @internal
1495  /// @copydoc ExceptionFactory::Type
1497 };
1498 
1499 ///////////////////////////////////////////////////////////////////////////////
1500 /// @brief Thrown when the requested identity could not be found
1501 /// @ingroup exception_heirarchy InstanceIdentityNotFoundException
1502 /// @details When catching this in java look for @a java.lang.XXXXX
1503 ///////////////////
1505 {
1506  public:
1507  /// @brief Thrown when the requested identity could not be found
1509 
1510  /// @brief InstanceIdentityNotFoundException Name overwriting constructor.
1511  /// @param TypeName The name of this class.
1512  /// @param JavaTypeName When passed to Java what does this convert to?
1513  /// @param Message A basic description of the error.
1514  /// @param SrcFunction The name of the function from which this originated.
1515  /// @param SrcFile The name of the file from which this originated.
1516  /// @param FileLine The line on the named file from which this originated.
1517  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1519  const String& TypeName,
1520  const String& JavaTypeName,
1521  const String& Message,
1522  const String& SrcFunction,
1523  const String& SrcFile,
1524  const Whole& FileLine)
1525  : InstanceIdentityException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1526  {}
1527 
1528  /// @brief InstanceIdentityNotFoundException constructor.
1529  /// @param Message A basic description of the error.
1530  /// @param SrcFunction The name of the function from which this originated.
1531  /// @param SrcFile The name of the file from which this originated.
1532  /// @param FileLine The line on the named file from which this originated.
1533  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1535  const String& SrcFunction,
1536  const String& SrcFile,
1537  const Whole& FileLine)
1538  : InstanceIdentityException("InstanceIdentityNotFoundException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1539  {}
1540 
1541  /// @brief Class destructor.
1543 
1544  /// @copydoc ExceptionBase::GetExceptionCode()
1545  virtual Whole GetExceptionCode() const throw()
1547 //
1548 }; // \ InstanceIdentityNotFoundException
1549 
1550 /// @internal
1551 /// @copydoc ExceptionFactory
1552 template<>
1554 {
1555  /// @internal
1556  /// @copydoc ExceptionFactory::Type
1558 };
1559 
1560 ///////////////////////////////////////////////////////////////////////////////
1561 /// @brief Thrown when duplicates of teh same identity string exist
1562 /// @ingroup exception_heirarchy InstanceIdentityDuplicateException
1563 /// @details When catching this in java look for @a java.lang.XXXXX
1564 ///////////////////
1566 {
1567  public:
1568  /// @brief Thrown when duplicates of teh same identity string exist
1570 
1571  /// @brief InstanceIdentityDuplicateException Name overwriting constructor.
1572  /// @param TypeName The name of this class.
1573  /// @param JavaTypeName When passed to Java what does this convert to?
1574  /// @param Message A basic description of the error.
1575  /// @param SrcFunction The name of the function from which this originated.
1576  /// @param SrcFile The name of the file from which this originated.
1577  /// @param FileLine The line on the named file from which this originated.
1578  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1580  const String& TypeName,
1581  const String& JavaTypeName,
1582  const String& Message,
1583  const String& SrcFunction,
1584  const String& SrcFile,
1585  const Whole& FileLine)
1586  : InstanceIdentityException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1587  {}
1588 
1589  /// @brief InstanceIdentityDuplicateException constructor.
1590  /// @param Message A basic description of the error.
1591  /// @param SrcFunction The name of the function from which this originated.
1592  /// @param SrcFile The name of the file from which this originated.
1593  /// @param FileLine The line on the named file from which this originated.
1594  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1596  const String& SrcFunction,
1597  const String& SrcFile,
1598  const Whole& FileLine)
1599  : InstanceIdentityException("InstanceIdentityDuplicateException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1600  {}
1601 
1602  /// @brief Class destructor.
1604 
1605  /// @copydoc ExceptionBase::GetExceptionCode()
1606  virtual Whole GetExceptionCode() const throw()
1608 //
1609 }; // \ InstanceIdentityDuplicateException
1610 
1611 /// @internal
1612 /// @copydoc ExceptionFactory
1613 template<>
1615 {
1616  /// @internal
1617  /// @copydoc ExceptionFactory::Type
1619 };
1620 
1621 ///////////////////////////////////////////////////////////////////////////////
1622 /// @brief Thrown when an unknown memory management exception occurs
1623 /// @ingroup exception_heirarchy MemoryManagementException
1624 /// @details When catching this in java look for @a java.lang.XXXXX
1625 ///////////////////
1627 {
1628  public:
1629  /// @brief Thrown when an unknown memory management exception occurs
1630  static const Whole ExceptionCode = ExceptionBase::MM_EXCEPTION;
1631 
1632  /// @brief MemoryManagementException Name overwriting constructor.
1633  /// @param TypeName The name of this class.
1634  /// @param JavaTypeName When passed to Java what does this convert to?
1635  /// @param Message A basic description of the error.
1636  /// @param SrcFunction The name of the function from which this originated.
1637  /// @param SrcFile The name of the file from which this originated.
1638  /// @param FileLine The line on the named file from which this originated.
1639  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1641  const String& TypeName,
1642  const String& JavaTypeName,
1643  const String& Message,
1644  const String& SrcFunction,
1645  const String& SrcFile,
1646  const Whole& FileLine)
1647  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1648  {}
1649 
1650  /// @brief MemoryManagementException constructor.
1651  /// @param Message A basic description of the error.
1652  /// @param SrcFunction The name of the function from which this originated.
1653  /// @param SrcFile The name of the file from which this originated.
1654  /// @param FileLine The line on the named file from which this originated.
1655  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1657  const String& SrcFunction,
1658  const String& SrcFile,
1659  const Whole& FileLine)
1660  : ExceptionBase("MemoryManagementException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1661  {}
1662 
1663  /// @brief Class destructor.
1664  virtual ~MemoryManagementException() throw() {}
1665 
1666  /// @copydoc ExceptionBase::GetExceptionCode()
1667  virtual Whole GetExceptionCode() const throw()
1669 //
1670 }; // \ MemoryManagementException
1671 
1672 /// @internal
1673 /// @copydoc ExceptionFactory
1674 template<>
1676 {
1677  /// @internal
1678  /// @copydoc ExceptionFactory::Type
1680 };
1681 
1682 ///////////////////////////////////////////////////////////////////////////////
1683 /// @brief Thrown when A memory allocation was attempted and failed
1684 /// @ingroup exception_heirarchy OutOfMemoryException
1685 /// @details When catching this in java look for @a java.lang.XXXXX
1686 ///////////////////
1688 {
1689  public:
1690  /// @brief Thrown when A memory allocation was attempted and failed
1692 
1693  /// @brief OutOfMemoryException Name overwriting constructor.
1694  /// @param TypeName The name of this class.
1695  /// @param JavaTypeName When passed to Java what does this convert to?
1696  /// @param Message A basic description of the error.
1697  /// @param SrcFunction The name of the function from which this originated.
1698  /// @param SrcFile The name of the file from which this originated.
1699  /// @param FileLine The line on the named file from which this originated.
1700  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1702  const String& TypeName,
1703  const String& JavaTypeName,
1704  const String& Message,
1705  const String& SrcFunction,
1706  const String& SrcFile,
1707  const Whole& FileLine)
1708  : MemoryManagementException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1709  {}
1710 
1711  /// @brief OutOfMemoryException constructor.
1712  /// @param Message A basic description of the error.
1713  /// @param SrcFunction The name of the function from which this originated.
1714  /// @param SrcFile The name of the file from which this originated.
1715  /// @param FileLine The line on the named file from which this originated.
1716  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1717  OutOfMemoryException( const String& Message,
1718  const String& SrcFunction,
1719  const String& SrcFile,
1720  const Whole& FileLine)
1721  : MemoryManagementException("OutOfMemoryException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1722  {}
1723 
1724  /// @brief Class destructor.
1725  virtual ~OutOfMemoryException() throw() {}
1726 
1727  /// @copydoc ExceptionBase::GetExceptionCode()
1728  virtual Whole GetExceptionCode() const throw()
1730 //
1731 }; // \ OutOfMemoryException
1732 
1733 /// @internal
1734 /// @copydoc ExceptionFactory
1735 template<>
1737 {
1738  /// @internal
1739  /// @copydoc ExceptionFactory::Type
1741 };
1742 
1743 ///////////////////////////////////////////////////////////////////////////////
1744 /// @brief Thrown when attempted to access something that really should note be accessed
1745 /// @ingroup exception_heirarchy MemoryOutOfBoundsException
1746 /// @details When catching this in java look for @a java.lang.XXXXX
1747 ///////////////////
1749 {
1750  public:
1751  /// @brief Thrown when attempted to access something that really should note be accessed
1753 
1754  /// @brief MemoryOutOfBoundsException Name overwriting constructor.
1755  /// @param TypeName The name of this class.
1756  /// @param JavaTypeName When passed to Java what does this convert to?
1757  /// @param Message A basic description of the error.
1758  /// @param SrcFunction The name of the function from which this originated.
1759  /// @param SrcFile The name of the file from which this originated.
1760  /// @param FileLine The line on the named file from which this originated.
1761  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1763  const String& TypeName,
1764  const String& JavaTypeName,
1765  const String& Message,
1766  const String& SrcFunction,
1767  const String& SrcFile,
1768  const Whole& FileLine)
1769  : MemoryManagementException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1770  {}
1771 
1772  /// @brief MemoryOutOfBoundsException constructor.
1773  /// @param Message A basic description of the error.
1774  /// @param SrcFunction The name of the function from which this originated.
1775  /// @param SrcFile The name of the file from which this originated.
1776  /// @param FileLine The line on the named file from which this originated.
1777  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1779  const String& SrcFunction,
1780  const String& SrcFile,
1781  const Whole& FileLine)
1782  : MemoryManagementException("MemoryOutOfBoundsException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1783  {}
1784 
1785  /// @brief Class destructor.
1786  virtual ~MemoryOutOfBoundsException() throw() {}
1787 
1788  /// @copydoc ExceptionBase::GetExceptionCode()
1789  virtual Whole GetExceptionCode() const throw()
1791 //
1792 }; // \ MemoryOutOfBoundsException
1793 
1794 /// @internal
1795 /// @copydoc ExceptionFactory
1796 template<>
1798 {
1799  /// @internal
1800  /// @copydoc ExceptionFactory::Type
1802 };
1803 
1804 ///////////////////////////////////////////////////////////////////////////////
1805 /// @brief Thrown when some kind of syntax exception
1806 /// @ingroup exception_heirarchy SyntaxErrorException
1807 /// @details When catching this in java look for @a java.lang.XXXXX
1808 ///////////////////
1810 {
1811  public:
1812  /// @brief Thrown when some kind of syntax exception
1813  static const Whole ExceptionCode = ExceptionBase::SYNTAX_ERROR_EXCEPTION;
1814 
1815  /// @brief SyntaxErrorException Name overwriting constructor.
1816  /// @param TypeName The name of this class.
1817  /// @param JavaTypeName When passed to Java what does this convert to?
1818  /// @param Message A basic description of the error.
1819  /// @param SrcFunction The name of the function from which this originated.
1820  /// @param SrcFile The name of the file from which this originated.
1821  /// @param FileLine The line on the named file from which this originated.
1822  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1824  const String& TypeName,
1825  const String& JavaTypeName,
1826  const String& Message,
1827  const String& SrcFunction,
1828  const String& SrcFile,
1829  const Whole& FileLine)
1830  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1831  {}
1832 
1833  /// @brief SyntaxErrorException constructor.
1834  /// @param Message A basic description of the error.
1835  /// @param SrcFunction The name of the function from which this originated.
1836  /// @param SrcFile The name of the file from which this originated.
1837  /// @param FileLine The line on the named file from which this originated.
1838  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1839  SyntaxErrorException( const String& Message,
1840  const String& SrcFunction,
1841  const String& SrcFile,
1842  const Whole& FileLine)
1843  : ExceptionBase("SyntaxErrorException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1844  {}
1845 
1846  /// @brief Class destructor.
1847  virtual ~SyntaxErrorException() throw() {}
1848 
1849  /// @copydoc ExceptionBase::GetExceptionCode()
1850  virtual Whole GetExceptionCode() const throw()
1852 //
1853 }; // \ SyntaxErrorException
1854 
1855 /// @internal
1856 /// @copydoc ExceptionFactory
1857 template<>
1859 {
1860  /// @internal
1861  /// @copydoc ExceptionFactory::Type
1863 };
1864 
1865 ///////////////////////////////////////////////////////////////////////////////
1866 /// @brief Thrown when and XML document is being parsed but is invalid
1867 /// @ingroup exception_heirarchy SyntaxErrorXMLException
1868 /// @details When catching this in java look for @a java.lang.XXXXX
1869 ///////////////////
1871 {
1872  public:
1873  /// @brief Thrown when and XML document is being parsed but is invalid
1875 
1876  /// @brief SyntaxErrorXMLException Name overwriting constructor.
1877  /// @param TypeName The name of this class.
1878  /// @param JavaTypeName When passed to Java what does this convert to?
1879  /// @param Message A basic description of the error.
1880  /// @param SrcFunction The name of the function from which this originated.
1881  /// @param SrcFile The name of the file from which this originated.
1882  /// @param FileLine The line on the named file from which this originated.
1883  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1885  const String& TypeName,
1886  const String& JavaTypeName,
1887  const String& Message,
1888  const String& SrcFunction,
1889  const String& SrcFile,
1890  const Whole& FileLine)
1891  : SyntaxErrorException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1892  {}
1893 
1894  /// @brief SyntaxErrorXMLException constructor.
1895  /// @param Message A basic description of the error.
1896  /// @param SrcFunction The name of the function from which this originated.
1897  /// @param SrcFile The name of the file from which this originated.
1898  /// @param FileLine The line on the named file from which this originated.
1899  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1901  const String& SrcFunction,
1902  const String& SrcFile,
1903  const Whole& FileLine)
1904  : SyntaxErrorException("SyntaxErrorXMLException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1905  {}
1906 
1907  /// @brief Class destructor.
1908  virtual ~SyntaxErrorXMLException() throw() {}
1909 
1910  /// @copydoc ExceptionBase::GetExceptionCode()
1911  virtual Whole GetExceptionCode() const throw()
1913 //
1914 }; // \ SyntaxErrorXMLException
1915 
1916 /// @internal
1917 /// @copydoc ExceptionFactory
1918 template<>
1920 {
1921  /// @internal
1922  /// @copydoc ExceptionFactory::Type
1924 };
1925 
1926 ///////////////////////////////////////////////////////////////////////////////
1927 /// @brief Thrown when an XPath query is being parsed but is invalid
1928 /// @ingroup exception_heirarchy SyntaxErrorXPathException
1929 /// @details When catching this in java look for @a java.lang.XXXXX
1930 ///////////////////
1932 {
1933  public:
1934  /// @brief Thrown when an XPath query is being parsed but is invalid
1936 
1937  /// @brief SyntaxErrorXPathException Name overwriting constructor.
1938  /// @param TypeName The name of this class.
1939  /// @param JavaTypeName When passed to Java what does this convert to?
1940  /// @param Message A basic description of the error.
1941  /// @param SrcFunction The name of the function from which this originated.
1942  /// @param SrcFile The name of the file from which this originated.
1943  /// @param FileLine The line on the named file from which this originated.
1944  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1946  const String& TypeName,
1947  const String& JavaTypeName,
1948  const String& Message,
1949  const String& SrcFunction,
1950  const String& SrcFile,
1951  const Whole& FileLine)
1952  : SyntaxErrorException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
1953  {}
1954 
1955  /// @brief SyntaxErrorXPathException constructor.
1956  /// @param Message A basic description of the error.
1957  /// @param SrcFunction The name of the function from which this originated.
1958  /// @param SrcFile The name of the file from which this originated.
1959  /// @param FileLine The line on the named file from which this originated.
1960  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
1962  const String& SrcFunction,
1963  const String& SrcFile,
1964  const Whole& FileLine)
1965  : SyntaxErrorException("SyntaxErrorXPathException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
1966  {}
1967 
1968  /// @brief Class destructor.
1969  virtual ~SyntaxErrorXPathException() throw() {}
1970 
1971  /// @copydoc ExceptionBase::GetExceptionCode()
1972  virtual Whole GetExceptionCode() const throw()
1974 //
1975 }; // \ SyntaxErrorXPathException
1976 
1977 /// @internal
1978 /// @copydoc ExceptionFactory
1979 template<>
1981 {
1982  /// @internal
1983  /// @copydoc ExceptionFactory::Type
1985 };
1986 
1987 ///////////////////////////////////////////////////////////////////////////////
1988 /// @brief Thrown when lua code in incorrect
1989 /// @ingroup exception_heirarchy SyntaxErrorLuaException
1990 /// @details When catching this in java look for @a java.lang.XXXXX
1991 ///////////////////
1993 {
1994  public:
1995  /// @brief Thrown when lua code in incorrect
1997 
1998  /// @brief SyntaxErrorLuaException Name overwriting constructor.
1999  /// @param TypeName The name of this class.
2000  /// @param JavaTypeName When passed to Java what does this convert to?
2001  /// @param Message A basic description of the error.
2002  /// @param SrcFunction The name of the function from which this originated.
2003  /// @param SrcFile The name of the file from which this originated.
2004  /// @param FileLine The line on the named file from which this originated.
2005  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2007  const String& TypeName,
2008  const String& JavaTypeName,
2009  const String& Message,
2010  const String& SrcFunction,
2011  const String& SrcFile,
2012  const Whole& FileLine)
2013  : SyntaxErrorException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2014  {}
2015 
2016  /// @brief SyntaxErrorLuaException constructor.
2017  /// @param Message A basic description of the error.
2018  /// @param SrcFunction The name of the function from which this originated.
2019  /// @param SrcFile The name of the file from which this originated.
2020  /// @param FileLine The line on the named file from which this originated.
2021  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2023  const String& SrcFunction,
2024  const String& SrcFile,
2025  const Whole& FileLine)
2026  : SyntaxErrorException("SyntaxErrorLuaException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2027  {}
2028 
2029  /// @brief Class destructor.
2030  virtual ~SyntaxErrorLuaException() throw() {}
2031 
2032  /// @copydoc ExceptionBase::GetExceptionCode()
2033  virtual Whole GetExceptionCode() const throw()
2035 //
2036 }; // \ SyntaxErrorLuaException
2037 
2038 /// @internal
2039 /// @copydoc ExceptionFactory
2040 template<>
2042 {
2043  /// @internal
2044  /// @copydoc ExceptionFactory::Type
2046 };
2047 
2048 ///////////////////////////////////////////////////////////////////////////////
2049 /// @brief Thrown when an unknown error happens with a script
2050 /// @ingroup exception_heirarchy ScriptException
2051 /// @details When catching this in java look for @a java.lang.XXXXX
2052 ///////////////////
2054 {
2055  public:
2056  /// @brief Thrown when an unknown error happens with a script
2057  static const Whole ExceptionCode = ExceptionBase::SCRIPT_EXCEPTION;
2058 
2059  /// @brief ScriptException Name overwriting constructor.
2060  /// @param TypeName The name of this class.
2061  /// @param JavaTypeName When passed to Java what does this convert to?
2062  /// @param Message A basic description of the error.
2063  /// @param SrcFunction The name of the function from which this originated.
2064  /// @param SrcFile The name of the file from which this originated.
2065  /// @param FileLine The line on the named file from which this originated.
2066  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2068  const String& TypeName,
2069  const String& JavaTypeName,
2070  const String& Message,
2071  const String& SrcFunction,
2072  const String& SrcFile,
2073  const Whole& FileLine)
2074  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2075  {}
2076 
2077  /// @brief ScriptException constructor.
2078  /// @param Message A basic description of the error.
2079  /// @param SrcFunction The name of the function from which this originated.
2080  /// @param SrcFile The name of the file from which this originated.
2081  /// @param FileLine The line on the named file from which this originated.
2082  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2083  ScriptException( const String& Message,
2084  const String& SrcFunction,
2085  const String& SrcFile,
2086  const Whole& FileLine)
2087  : ExceptionBase("ScriptException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2088  {}
2089 
2090  /// @brief Class destructor.
2091  virtual ~ScriptException() throw() {}
2092 
2093  /// @copydoc ExceptionBase::GetExceptionCode()
2094  virtual Whole GetExceptionCode() const throw()
2095  { return ScriptException::ExceptionCode; }
2096 //
2097 }; // \ ScriptException
2098 
2099 /// @internal
2100 /// @copydoc ExceptionFactory
2101 template<>
2102 struct ExceptionFactory< ScriptException::ExceptionCode>
2103 {
2104  /// @internal
2105  /// @copydoc ExceptionFactory::Type
2107 };
2108 
2109 ///////////////////////////////////////////////////////////////////////////////
2110 /// @brief Thrown when an unknown error happens in a Lua script
2111 /// @ingroup exception_heirarchy ScriptLuaException
2112 /// @details When catching this in java look for @a java.lang.XXXXX
2113 ///////////////////
2115 {
2116  public:
2117  /// @brief Thrown when an unknown error happens in a Lua script
2118  static const Whole ExceptionCode = ScriptException::SCRIPT_EXCEPTION_LUA;
2119 
2120  /// @brief ScriptLuaException Name overwriting constructor.
2121  /// @param TypeName The name of this class.
2122  /// @param JavaTypeName When passed to Java what does this convert to?
2123  /// @param Message A basic description of the error.
2124  /// @param SrcFunction The name of the function from which this originated.
2125  /// @param SrcFile The name of the file from which this originated.
2126  /// @param FileLine The line on the named file from which this originated.
2127  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2129  const String& TypeName,
2130  const String& JavaTypeName,
2131  const String& Message,
2132  const String& SrcFunction,
2133  const String& SrcFile,
2134  const Whole& FileLine)
2135  : ScriptException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2136  {}
2137 
2138  /// @brief ScriptLuaException constructor.
2139  /// @param Message A basic description of the error.
2140  /// @param SrcFunction The name of the function from which this originated.
2141  /// @param SrcFile The name of the file from which this originated.
2142  /// @param FileLine The line on the named file from which this originated.
2143  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2144  ScriptLuaException( const String& Message,
2145  const String& SrcFunction,
2146  const String& SrcFile,
2147  const Whole& FileLine)
2148  : ScriptException("ScriptLuaException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2149  {}
2150 
2151  /// @brief Class destructor.
2152  virtual ~ScriptLuaException() throw() {}
2153 
2154  /// @copydoc ExceptionBase::GetExceptionCode()
2155  virtual Whole GetExceptionCode() const throw()
2157 //
2158 }; // \ ScriptLuaException
2159 
2160 /// @internal
2161 /// @copydoc ExceptionFactory
2162 template<>
2163 struct ExceptionFactory< ScriptLuaException::ExceptionCode>
2164 {
2165  /// @internal
2166  /// @copydoc ExceptionFactory::Type
2168 };
2169 
2170 ///////////////////////////////////////////////////////////////////////////////
2171 /// @brief Thrown when Lua returns a yield and it should not have
2172 /// @ingroup exception_heirarchy ScriptLuaYieldException
2173 /// @details When catching this in java look for @a java.lang.XXXXX
2174 ///////////////////
2176 {
2177  public:
2178  /// @brief Thrown when Lua returns a yield and it should not have
2180 
2181  /// @brief ScriptLuaYieldException Name overwriting constructor.
2182  /// @param TypeName The name of this class.
2183  /// @param JavaTypeName When passed to Java what does this convert to?
2184  /// @param Message A basic description of the error.
2185  /// @param SrcFunction The name of the function from which this originated.
2186  /// @param SrcFile The name of the file from which this originated.
2187  /// @param FileLine The line on the named file from which this originated.
2188  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2190  const String& TypeName,
2191  const String& JavaTypeName,
2192  const String& Message,
2193  const String& SrcFunction,
2194  const String& SrcFile,
2195  const Whole& FileLine)
2196  : ScriptLuaException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2197  {}
2198 
2199  /// @brief ScriptLuaYieldException constructor.
2200  /// @param Message A basic description of the error.
2201  /// @param SrcFunction The name of the function from which this originated.
2202  /// @param SrcFile The name of the file from which this originated.
2203  /// @param FileLine The line on the named file from which this originated.
2204  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2206  const String& SrcFunction,
2207  const String& SrcFile,
2208  const Whole& FileLine)
2209  : ScriptLuaException("ScriptLuaYieldException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2210  {}
2211 
2212  /// @brief Class destructor.
2213  virtual ~ScriptLuaYieldException() throw() {}
2214 
2215  /// @copydoc ExceptionBase::GetExceptionCode()
2216  virtual Whole GetExceptionCode() const throw()
2218 //
2219 }; // \ ScriptLuaYieldException
2220 
2221 /// @internal
2222 /// @copydoc ExceptionFactory
2223 template<>
2225 {
2226  /// @internal
2227  /// @copydoc ExceptionFactory::Type
2229 };
2230 
2231 ///////////////////////////////////////////////////////////////////////////////
2232 /// @brief Thrown when a Lua script has a runtime error
2233 /// @ingroup exception_heirarchy ScriptLuaRuntimeException
2234 /// @details When catching this in java look for @a java.lang.XXXXX
2235 ///////////////////
2237 {
2238  public:
2239  /// @brief Thrown when a Lua script has a runtime error
2241 
2242  /// @brief ScriptLuaRuntimeException Name overwriting constructor.
2243  /// @param TypeName The name of this class.
2244  /// @param JavaTypeName When passed to Java what does this convert to?
2245  /// @param Message A basic description of the error.
2246  /// @param SrcFunction The name of the function from which this originated.
2247  /// @param SrcFile The name of the file from which this originated.
2248  /// @param FileLine The line on the named file from which this originated.
2249  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2251  const String& TypeName,
2252  const String& JavaTypeName,
2253  const String& Message,
2254  const String& SrcFunction,
2255  const String& SrcFile,
2256  const Whole& FileLine)
2257  : ScriptLuaException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2258  {}
2259 
2260  /// @brief ScriptLuaRuntimeException constructor.
2261  /// @param Message A basic description of the error.
2262  /// @param SrcFunction The name of the function from which this originated.
2263  /// @param SrcFile The name of the file from which this originated.
2264  /// @param FileLine The line on the named file from which this originated.
2265  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2267  const String& SrcFunction,
2268  const String& SrcFile,
2269  const Whole& FileLine)
2270  : ScriptLuaException("ScriptLuaRuntimeException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2271  {}
2272 
2273  /// @brief Class destructor.
2274  virtual ~ScriptLuaRuntimeException() throw() {}
2275 
2276  /// @copydoc ExceptionBase::GetExceptionCode()
2277  virtual Whole GetExceptionCode() const throw()
2279 //
2280 }; // \ ScriptLuaRuntimeException
2281 
2282 /// @internal
2283 /// @copydoc ExceptionFactory
2284 template<>
2286 {
2287  /// @internal
2288  /// @copydoc ExceptionFactory::Type
2290 };
2291 
2292 ///////////////////////////////////////////////////////////////////////////////
2293 /// @brief Thrown when Lua has an error handling an error
2294 /// @ingroup exception_heirarchy ScriptLuaErrErrException
2295 /// @details When catching this in java look for @a java.lang.XXXXX
2296 ///////////////////
2298 {
2299  public:
2300  /// @brief Thrown when Lua has an error handling an error
2302 
2303  /// @brief ScriptLuaErrErrException Name overwriting constructor.
2304  /// @param TypeName The name of this class.
2305  /// @param JavaTypeName When passed to Java what does this convert to?
2306  /// @param Message A basic description of the error.
2307  /// @param SrcFunction The name of the function from which this originated.
2308  /// @param SrcFile The name of the file from which this originated.
2309  /// @param FileLine The line on the named file from which this originated.
2310  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2312  const String& TypeName,
2313  const String& JavaTypeName,
2314  const String& Message,
2315  const String& SrcFunction,
2316  const String& SrcFile,
2317  const Whole& FileLine)
2318  : ScriptLuaException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2319  {}
2320 
2321  /// @brief ScriptLuaErrErrException constructor.
2322  /// @param Message A basic description of the error.
2323  /// @param SrcFunction The name of the function from which this originated.
2324  /// @param SrcFile The name of the file from which this originated.
2325  /// @param FileLine The line on the named file from which this originated.
2326  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2328  const String& SrcFunction,
2329  const String& SrcFile,
2330  const Whole& FileLine)
2331  : ScriptLuaException("ScriptLuaErrErrException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2332  {}
2333 
2334  /// @brief Class destructor.
2335  virtual ~ScriptLuaErrErrException() throw() {}
2336 
2337  /// @copydoc ExceptionBase::GetExceptionCode()
2338  virtual Whole GetExceptionCode() const throw()
2340 //
2341 }; // \ ScriptLuaErrErrException
2342 
2343 /// @internal
2344 /// @copydoc ExceptionFactory
2345 template<>
2347 {
2348  /// @internal
2349  /// @copydoc ExceptionFactory::Type
2351 };
2352 
2353 ///////////////////////////////////////////////////////////////////////////////
2354 /// @brief Thrown when parameters are checked at runtime and found invalid
2355 /// @ingroup exception_heirarchy ParametersException
2356 /// @details When catching this in java look for @a java.lang.XXXXX
2357 ///////////////////
2359 {
2360  public:
2361  /// @brief Thrown when parameters are checked at runtime and found invalid
2362  static const Whole ExceptionCode = ExceptionBase::PARAMETERS_EXCEPTION;
2363 
2364  /// @brief ParametersException Name overwriting constructor.
2365  /// @param TypeName The name of this class.
2366  /// @param JavaTypeName When passed to Java what does this convert to?
2367  /// @param Message A basic description of the error.
2368  /// @param SrcFunction The name of the function from which this originated.
2369  /// @param SrcFile The name of the file from which this originated.
2370  /// @param FileLine The line on the named file from which this originated.
2371  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2373  const String& TypeName,
2374  const String& JavaTypeName,
2375  const String& Message,
2376  const String& SrcFunction,
2377  const String& SrcFile,
2378  const Whole& FileLine)
2379  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2380  {}
2381 
2382  /// @brief ParametersException constructor.
2383  /// @param Message A basic description of the error.
2384  /// @param SrcFunction The name of the function from which this originated.
2385  /// @param SrcFile The name of the file from which this originated.
2386  /// @param FileLine The line on the named file from which this originated.
2387  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2388  ParametersException( const String& Message,
2389  const String& SrcFunction,
2390  const String& SrcFile,
2391  const Whole& FileLine)
2392  : ExceptionBase("ParametersException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2393  {}
2394 
2395  /// @brief Class destructor.
2396  virtual ~ParametersException() throw() {}
2397 
2398  /// @copydoc ExceptionBase::GetExceptionCode()
2399  virtual Whole GetExceptionCode() const throw()
2401 //
2402 }; // \ ParametersException
2403 
2404 /// @internal
2405 /// @copydoc ExceptionFactory
2406 template<>
2407 struct ExceptionFactory< ParametersException::ExceptionCode>
2408 {
2409  /// @internal
2410  /// @copydoc ExceptionFactory::Type
2412 };
2413 
2414 ///////////////////////////////////////////////////////////////////////////////
2415 /// @brief Thrown when a pointer parameter is checked at runtime and cannot be cast as expected
2416 /// @ingroup exception_heirarchy ParametersCastException
2417 /// @details When catching this in java look for @a java.lang.XXXXX
2418 ///////////////////
2420 {
2421  public:
2422  /// @brief Thrown when a pointer parameter is checked at runtime and cannot be cast as expected
2424 
2425  /// @brief ParametersCastException Name overwriting constructor.
2426  /// @param TypeName The name of this class.
2427  /// @param JavaTypeName When passed to Java what does this convert to?
2428  /// @param Message A basic description of the error.
2429  /// @param SrcFunction The name of the function from which this originated.
2430  /// @param SrcFile The name of the file from which this originated.
2431  /// @param FileLine The line on the named file from which this originated.
2432  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2434  const String& TypeName,
2435  const String& JavaTypeName,
2436  const String& Message,
2437  const String& SrcFunction,
2438  const String& SrcFile,
2439  const Whole& FileLine)
2440  : ParametersException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2441  {}
2442 
2443  /// @brief ParametersCastException constructor.
2444  /// @param Message A basic description of the error.
2445  /// @param SrcFunction The name of the function from which this originated.
2446  /// @param SrcFile The name of the file from which this originated.
2447  /// @param FileLine The line on the named file from which this originated.
2448  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2450  const String& SrcFunction,
2451  const String& SrcFile,
2452  const Whole& FileLine)
2453  : ParametersException("ParametersCastException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2454  {}
2455 
2456  /// @brief Class destructor.
2457  virtual ~ParametersCastException() throw() {}
2458 
2459  /// @copydoc ExceptionBase::GetExceptionCode()
2460  virtual Whole GetExceptionCode() const throw()
2462 //
2463 }; // \ ParametersCastException
2464 
2465 /// @internal
2466 /// @copydoc ExceptionFactory
2467 template<>
2469 {
2470  /// @internal
2471  /// @copydoc ExceptionFactory::Type
2473 };
2474 
2475 ///////////////////////////////////////////////////////////////////////////////
2476 /// @brief Thrown when a passed parameter is checked at runtime and not in the expected range
2477 /// @ingroup exception_heirarchy ParametersRangeException
2478 /// @details When catching this in java look for @a java.lang.XXXXX
2479 ///////////////////
2481 {
2482  public:
2483  /// @brief Thrown when a passed parameter is checked at runtime and not in the expected range
2485 
2486  /// @brief ParametersRangeException Name overwriting constructor.
2487  /// @param TypeName The name of this class.
2488  /// @param JavaTypeName When passed to Java what does this convert to?
2489  /// @param Message A basic description of the error.
2490  /// @param SrcFunction The name of the function from which this originated.
2491  /// @param SrcFile The name of the file from which this originated.
2492  /// @param FileLine The line on the named file from which this originated.
2493  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2495  const String& TypeName,
2496  const String& JavaTypeName,
2497  const String& Message,
2498  const String& SrcFunction,
2499  const String& SrcFile,
2500  const Whole& FileLine)
2501  : ParametersException(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2502  {}
2503 
2504  /// @brief ParametersRangeException constructor.
2505  /// @param Message A basic description of the error.
2506  /// @param SrcFunction The name of the function from which this originated.
2507  /// @param SrcFile The name of the file from which this originated.
2508  /// @param FileLine The line on the named file from which this originated.
2509  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2511  const String& SrcFunction,
2512  const String& SrcFile,
2513  const Whole& FileLine)
2514  : ParametersException("ParametersRangeException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2515  {}
2516 
2517  /// @brief Class destructor.
2518  virtual ~ParametersRangeException() throw() {}
2519 
2520  /// @copydoc ExceptionBase::GetExceptionCode()
2521  virtual Whole GetExceptionCode() const throw()
2523 //
2524 }; // \ ParametersRangeException
2525 
2526 /// @internal
2527 /// @copydoc ExceptionFactory
2528 template<>
2530 {
2531  /// @internal
2532  /// @copydoc ExceptionFactory::Type
2534 };
2535 
2536 ///////////////////////////////////////////////////////////////////////////////
2537 /// @brief Thrown when Math has failed
2538 /// @ingroup exception_heirarchy ArithmeticException
2539 /// @details When catching this in java look for @a java.lang.XXXXX
2540 ///////////////////
2542 {
2543  public:
2544  /// @brief Thrown when Math has failed
2545  static const Whole ExceptionCode = ExceptionBase::ARITHMETIC_EXCEPTION;
2546 
2547  /// @brief ArithmeticException Name overwriting constructor.
2548  /// @param TypeName The name of this class.
2549  /// @param JavaTypeName When passed to Java what does this convert to?
2550  /// @param Message A basic description of the error.
2551  /// @param SrcFunction The name of the function from which this originated.
2552  /// @param SrcFile The name of the file from which this originated.
2553  /// @param FileLine The line on the named file from which this originated.
2554  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2556  const String& TypeName,
2557  const String& JavaTypeName,
2558  const String& Message,
2559  const String& SrcFunction,
2560  const String& SrcFile,
2561  const Whole& FileLine)
2562  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2563  {}
2564 
2565  /// @brief ArithmeticException constructor.
2566  /// @param Message A basic description of the error.
2567  /// @param SrcFunction The name of the function from which this originated.
2568  /// @param SrcFile The name of the file from which this originated.
2569  /// @param FileLine The line on the named file from which this originated.
2570  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2571  ArithmeticException( const String& Message,
2572  const String& SrcFunction,
2573  const String& SrcFile,
2574  const Whole& FileLine)
2575  : ExceptionBase("ArithmeticException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2576  {}
2577 
2578  /// @brief Class destructor.
2579  virtual ~ArithmeticException() throw() {}
2580 
2581  /// @copydoc ExceptionBase::GetExceptionCode()
2582  virtual Whole GetExceptionCode() const throw()
2584 //
2585 }; // \ ArithmeticException
2586 
2587 /// @internal
2588 /// @copydoc ExceptionFactory
2589 template<>
2590 struct ExceptionFactory< ArithmeticException::ExceptionCode>
2591 {
2592  /// @internal
2593  /// @copydoc ExceptionFactory::Type
2595 };
2596 
2597 ///////////////////////////////////////////////////////////////////////////////
2598 /// @brief Thrown when a version is accessed/parsed/required and it cannot work correctly or is missing
2599 /// @ingroup exception_heirarchy InvalidVersionException
2600 /// @details When catching this in java look for @a java.lang.XXXXX
2601 ///////////////////
2603 {
2604  public:
2605  /// @brief Thrown when a version is accessed/parsed/required and it cannot work correctly or is missing
2606  static const Whole ExceptionCode = ExceptionBase::INVALID_VERSION_EXCEPTION;
2607 
2608  /// @brief InvalidVersionException Name overwriting constructor.
2609  /// @param TypeName The name of this class.
2610  /// @param JavaTypeName When passed to Java what does this convert to?
2611  /// @param Message A basic description of the error.
2612  /// @param SrcFunction The name of the function from which this originated.
2613  /// @param SrcFile The name of the file from which this originated.
2614  /// @param FileLine The line on the named file from which this originated.
2615  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2617  const String& TypeName,
2618  const String& JavaTypeName,
2619  const String& Message,
2620  const String& SrcFunction,
2621  const String& SrcFile,
2622  const Whole& FileLine)
2623  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2624  {}
2625 
2626  /// @brief InvalidVersionException constructor.
2627  /// @param Message A basic description of the error.
2628  /// @param SrcFunction The name of the function from which this originated.
2629  /// @param SrcFile The name of the file from which this originated.
2630  /// @param FileLine The line on the named file from which this originated.
2631  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2633  const String& SrcFunction,
2634  const String& SrcFile,
2635  const Whole& FileLine)
2636  : ExceptionBase("InvalidVersionException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2637  {}
2638 
2639  /// @brief Class destructor.
2640  virtual ~InvalidVersionException() throw() {}
2641 
2642  /// @copydoc ExceptionBase::GetExceptionCode()
2643  virtual Whole GetExceptionCode() const throw()
2645 //
2646 }; // \ InvalidVersionException
2647 
2648 /// @internal
2649 /// @copydoc ExceptionFactory
2650 template<>
2652 {
2653  /// @internal
2654  /// @copydoc ExceptionFactory::Type
2656 };
2657 
2658 ///////////////////////////////////////////////////////////////////////////////
2659 /// @brief Thrown when the available information should have worked but failed for unknown reasons
2660 /// @ingroup exception_heirarchy InvalidStateException
2661 /// @details When catching this in java look for @a java.lang.XXXXX
2662 ///////////////////
2664 {
2665  public:
2666  /// @brief Thrown when the available information should have worked but failed for unknown reasons
2667  static const Whole ExceptionCode = ExceptionBase::INVALID_STATE_EXCEPTION;
2668 
2669  /// @brief InvalidStateException Name overwriting constructor.
2670  /// @param TypeName The name of this class.
2671  /// @param JavaTypeName When passed to Java what does this convert to?
2672  /// @param Message A basic description of the error.
2673  /// @param SrcFunction The name of the function from which this originated.
2674  /// @param SrcFile The name of the file from which this originated.
2675  /// @param FileLine The line on the named file from which this originated.
2676  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2678  const String& TypeName,
2679  const String& JavaTypeName,
2680  const String& Message,
2681  const String& SrcFunction,
2682  const String& SrcFile,
2683  const Whole& FileLine)
2684  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2685  {}
2686 
2687  /// @brief InvalidStateException constructor.
2688  /// @param Message A basic description of the error.
2689  /// @param SrcFunction The name of the function from which this originated.
2690  /// @param SrcFile The name of the file from which this originated.
2691  /// @param FileLine The line on the named file from which this originated.
2692  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2694  const String& SrcFunction,
2695  const String& SrcFile,
2696  const Whole& FileLine)
2697  : ExceptionBase("InvalidStateException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2698  {}
2699 
2700  /// @brief Class destructor.
2701  virtual ~InvalidStateException() throw() {}
2702 
2703  /// @copydoc ExceptionBase::GetExceptionCode()
2704  virtual Whole GetExceptionCode() const throw()
2706 //
2707 }; // \ InvalidStateException
2708 
2709 /// @internal
2710 /// @copydoc ExceptionFactory
2711 template<>
2713 {
2714  /// @internal
2715  /// @copydoc ExceptionFactory::Type
2717 };
2718 
2719 ///////////////////////////////////////////////////////////////////////////////
2720 /// @brief Thrown when the graphics card/DirectX/OpenGL fail
2721 /// @ingroup exception_heirarchy RenderingAPIException
2722 /// @details When catching this in java look for @a java.lang.XXXXX
2723 ///////////////////
2725 {
2726  public:
2727  /// @brief Thrown when the graphics card/DirectX/OpenGL fail
2728  static const Whole ExceptionCode = ExceptionBase::RENDERINGAPI_EXCEPTION;
2729 
2730  /// @brief RenderingAPIException Name overwriting constructor.
2731  /// @param TypeName The name of this class.
2732  /// @param JavaTypeName When passed to Java what does this convert to?
2733  /// @param Message A basic description of the error.
2734  /// @param SrcFunction The name of the function from which this originated.
2735  /// @param SrcFile The name of the file from which this originated.
2736  /// @param FileLine The line on the named file from which this originated.
2737  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2739  const String& TypeName,
2740  const String& JavaTypeName,
2741  const String& Message,
2742  const String& SrcFunction,
2743  const String& SrcFile,
2744  const Whole& FileLine)
2745  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2746  {}
2747 
2748  /// @brief RenderingAPIException constructor.
2749  /// @param Message A basic description of the error.
2750  /// @param SrcFunction The name of the function from which this originated.
2751  /// @param SrcFile The name of the file from which this originated.
2752  /// @param FileLine The line on the named file from which this originated.
2753  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2755  const String& SrcFunction,
2756  const String& SrcFile,
2757  const Whole& FileLine)
2758  : ExceptionBase("RenderingAPIException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2759  {}
2760 
2761  /// @brief Class destructor.
2762  virtual ~RenderingAPIException() throw() {}
2763 
2764  /// @copydoc ExceptionBase::GetExceptionCode()
2765  virtual Whole GetExceptionCode() const throw()
2767 //
2768 }; // \ RenderingAPIException
2769 
2770 /// @internal
2771 /// @copydoc ExceptionFactory
2772 template<>
2774 {
2775  /// @internal
2776  /// @copydoc ExceptionFactory::Type
2778 };
2779 
2780 ///////////////////////////////////////////////////////////////////////////////
2781 /// @brief Thrown when a rutime assertion could have been Thrown
2782 /// @ingroup exception_heirarchy RuntimeAssertionException
2783 /// @details When catching this in java look for @a java.lang.XXXXX
2784 ///////////////////
2786 {
2787  public:
2788  /// @brief Thrown when a rutime assertion could have been Thrown
2789  static const Whole ExceptionCode = ExceptionBase::RT_ASSERTION_EXCEPTION;
2790 
2791  /// @brief RuntimeAssertionException Name overwriting constructor.
2792  /// @param TypeName The name of this class.
2793  /// @param JavaTypeName When passed to Java what does this convert to?
2794  /// @param Message A basic description of the error.
2795  /// @param SrcFunction The name of the function from which this originated.
2796  /// @param SrcFile The name of the file from which this originated.
2797  /// @param FileLine The line on the named file from which this originated.
2798  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2800  const String& TypeName,
2801  const String& JavaTypeName,
2802  const String& Message,
2803  const String& SrcFunction,
2804  const String& SrcFile,
2805  const Whole& FileLine)
2806  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2807  {}
2808 
2809  /// @brief RuntimeAssertionException constructor.
2810  /// @param Message A basic description of the error.
2811  /// @param SrcFunction The name of the function from which this originated.
2812  /// @param SrcFile The name of the file from which this originated.
2813  /// @param FileLine The line on the named file from which this originated.
2814  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2816  const String& SrcFunction,
2817  const String& SrcFile,
2818  const Whole& FileLine)
2819  : ExceptionBase("RuntimeAssertionException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2820  {}
2821 
2822  /// @brief Class destructor.
2823  virtual ~RuntimeAssertionException() throw() {}
2824 
2825  /// @copydoc ExceptionBase::GetExceptionCode()
2826  virtual Whole GetExceptionCode() const throw()
2828 //
2829 }; // \ RuntimeAssertionException
2830 
2831 /// @internal
2832 /// @copydoc ExceptionFactory
2833 template<>
2835 {
2836  /// @internal
2837  /// @copydoc ExceptionFactory::Type
2839 };
2840 
2841 ///////////////////////////////////////////////////////////////////////////////
2842 /// @brief Thrown when an unknown internal error occurred
2843 /// @ingroup exception_heirarchy InternalException
2844 /// @details When catching this in java look for @a java.lang.XXXXX
2845 ///////////////////
2847 {
2848  public:
2849  /// @brief Thrown when an unknown internal error occurred
2850  static const Whole ExceptionCode = ExceptionBase::INTERNAL_EXCEPTION;
2851 
2852  /// @brief InternalException Name overwriting constructor.
2853  /// @param TypeName The name of this class.
2854  /// @param JavaTypeName When passed to Java what does this convert to?
2855  /// @param Message A basic description of the error.
2856  /// @param SrcFunction The name of the function from which this originated.
2857  /// @param SrcFile The name of the file from which this originated.
2858  /// @param FileLine The line on the named file from which this originated.
2859  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2861  const String& TypeName,
2862  const String& JavaTypeName,
2863  const String& Message,
2864  const String& SrcFunction,
2865  const String& SrcFile,
2866  const Whole& FileLine)
2867  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2868  {}
2869 
2870  /// @brief InternalException constructor.
2871  /// @param Message A basic description of the error.
2872  /// @param SrcFunction The name of the function from which this originated.
2873  /// @param SrcFile The name of the file from which this originated.
2874  /// @param FileLine The line on the named file from which this originated.
2875  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2876  InternalException( const String& Message,
2877  const String& SrcFunction,
2878  const String& SrcFile,
2879  const Whole& FileLine)
2880  : ExceptionBase("InternalException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2881  {}
2882 
2883  /// @brief Class destructor.
2884  virtual ~InternalException() throw() {}
2885 
2886  /// @copydoc ExceptionBase::GetExceptionCode()
2887  virtual Whole GetExceptionCode() const throw()
2889 //
2890 }; // \ InternalException
2891 
2892 /// @internal
2893 /// @copydoc ExceptionFactory
2894 template<>
2895 struct ExceptionFactory< InternalException::ExceptionCode>
2896 {
2897  /// @internal
2898  /// @copydoc ExceptionFactory::Type
2900 };
2901 
2902 ///////////////////////////////////////////////////////////////////////////////
2903 /// @brief Thrown when we just have not coded a thing yet, but we knew what the API should look like
2904 /// @ingroup exception_heirarchy NotImplementedException
2905 /// @details When catching this in java look for @a java.lang.XXXXX
2906 ///////////////////
2908 {
2909  public:
2910  /// @brief Thrown when we just have not coded a thing yet, but we knew what the API should look like
2911  static const Whole ExceptionCode = ExceptionBase::NOT_IMPLEMENTED_EXCEPTION;
2912 
2913  /// @brief NotImplementedException Name overwriting constructor.
2914  /// @param TypeName The name of this class.
2915  /// @param JavaTypeName When passed to Java what does this convert to?
2916  /// @param Message A basic description of the error.
2917  /// @param SrcFunction The name of the function from which this originated.
2918  /// @param SrcFile The name of the file from which this originated.
2919  /// @param FileLine The line on the named file from which this originated.
2920  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2922  const String& TypeName,
2923  const String& JavaTypeName,
2924  const String& Message,
2925  const String& SrcFunction,
2926  const String& SrcFile,
2927  const Whole& FileLine)
2928  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2929  {}
2930 
2931  /// @brief NotImplementedException constructor.
2932  /// @param Message A basic description of the error.
2933  /// @param SrcFunction The name of the function from which this originated.
2934  /// @param SrcFile The name of the file from which this originated.
2935  /// @param FileLine The line on the named file from which this originated.
2936  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2938  const String& SrcFunction,
2939  const String& SrcFile,
2940  const Whole& FileLine)
2941  : ExceptionBase("NotImplementedException", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
2942  {}
2943 
2944  /// @brief Class destructor.
2945  virtual ~NotImplementedException() throw() {}
2946 
2947  /// @copydoc ExceptionBase::GetExceptionCode()
2948  virtual Whole GetExceptionCode() const throw()
2950 //
2951 }; // \ NotImplementedException
2952 
2953 /// @internal
2954 /// @copydoc ExceptionFactory
2955 template<>
2957 {
2958  /// @internal
2959  /// @copydoc ExceptionFactory::Type
2961 };
2962 
2963 ///////////////////////////////////////////////////////////////////////////////
2964 /// @brief Thrown when a complex class is assigned to itself or other invalid assignments occur
2965 /// @ingroup exception_heirarchy InvalidAssignment
2966 /// @details When catching this in java look for @a java.lang.XXXXX
2967 ///////////////////
2969 {
2970  public:
2971  /// @brief Thrown when a complex class is assigned to itself or other invalid assignments occur
2972  static const Whole ExceptionCode = ExceptionBase::INVALID_ASSIGNMENT;
2973 
2974  /// @brief InvalidAssignment Name overwriting constructor.
2975  /// @param TypeName The name of this class.
2976  /// @param JavaTypeName When passed to Java what does this convert to?
2977  /// @param Message A basic description of the error.
2978  /// @param SrcFunction The name of the function from which this originated.
2979  /// @param SrcFile The name of the file from which this originated.
2980  /// @param FileLine The line on the named file from which this originated.
2981  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2983  const String& TypeName,
2984  const String& JavaTypeName,
2985  const String& Message,
2986  const String& SrcFunction,
2987  const String& SrcFile,
2988  const Whole& FileLine)
2989  : ExceptionBase(TypeName, JavaTypeName, Message, SrcFunction, SrcFile, FileLine)
2990  {}
2991 
2992  /// @brief InvalidAssignment constructor.
2993  /// @param Message A basic description of the error.
2994  /// @param SrcFunction The name of the function from which this originated.
2995  /// @param SrcFile The name of the file from which this originated.
2996  /// @param FileLine The line on the named file from which this originated.
2997  /// @warning This probably shouldn't be called directly. Use @ref MEZZ_EXCEPTION if possible.
2998  InvalidAssignment( const String& Message,
2999  const String& SrcFunction,
3000  const String& SrcFile,
3001  const Whole& FileLine)
3002  : ExceptionBase("InvalidAssignment", "java/lang/XXXXX", Message, SrcFunction, SrcFile, FileLine)
3003  {}
3004 
3005  /// @brief Class destructor.
3006  virtual ~InvalidAssignment() throw() {}
3007 
3008  /// @copydoc ExceptionBase::GetExceptionCode()
3009  virtual Whole GetExceptionCode() const throw()
3011 //
3012 }; // \ InvalidAssignment
3013 
3014 /// @internal
3015 /// @copydoc ExceptionFactory
3016 template<>
3017 struct ExceptionFactory< InvalidAssignment::ExceptionCode>
3018 {
3019  /// @internal
3020  /// @copydoc ExceptionFactory::Type
3022 };
3023 
3024 
3025 
3026 #ifndef MEZZ_EXCEPTION
3027 /// @brief An easy way to throw exceptions with rich information.
3028 /// @details An important part of troubleshooting errors from the users perspective is being able to
3029 /// tie a specific 'fix' to a specific error message. An important part of that is catching the
3030 /// right exceptions at the right time. It is also important to not allocate more memory or other
3031 /// resources while creating an exception.
3032 /// @n @n
3033 /// This macro makes doing all of these easy. Every exception thrown by this macro with provide the
3034 /// function name, the file name and the line in the file from which it was thrown. That provides
3035 /// all the information the developer needs to identify the issue. This uses some specific template
3036 /// machinery to generate specifically typed exceptions static instances at compile to insure the
3037 /// behaviors a programmer needs. Since these are allocated (optimized out really) when the program
3038 /// is first loaded so there will be no allocations when this is called, and the type is controlled
3039 /// by the error number parameter.
3040 /// @n @n
3041 /// As long as the developer provides a unique string for each failure, then any messages
3042 /// logged or presented to the user or log will uniquely identify that specific problem. This
3043 /// allows the user to perform very specific web searches and potentially allows
3044 /// troubleshooters/technicians to skip lengthy diagnostics steps.
3045 /// @param num A specific code from the @ref ExceptionBase::ExceptionCodes enum will control the
3046 /// type of exception produced.
3047 /// @param desc A message/description to be passed through to the exceptions constructor.
3048 #define MEZZ_EXCEPTION(num, desc) throw Mezzanine::ExceptionFactory<num>::Type(desc, __func__, __FILE__, __LINE__ );
3049 #endif
3050 
3051 } // \Mezzanine
3052 #endif // \_GenException_h
Thrown when permission is denied to a directory.
Definition: exception.h:83
Thrown when Lua returns a yield and it should not have.
Definition: exception.h:105
static const Whole ExceptionCode
Thrown when data could not be read from the network (iloads)
Definition: exception.h:1020
static const Whole ExceptionCode
Thrown when the requested identity could not be found.
Definition: exception.h:1508
DirectoryWriteException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:764
static const Whole ExceptionCode
Thrown when A memory allocation was attempted and failed.
Definition: exception.h:1691
Thrown when a write is happening but something has prevented the underlying code from knowing what wa...
Definition: exception.h:1260
virtual ~MemoryOutOfBoundsException()
Class destructor.
Definition: exception.h:1786
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:874
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:813
static const Whole ExceptionCode
Thrown when and XML document is being parsed but is invalid.
Definition: exception.h:1874
FileNotFoundException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
FileNotFoundException Name overwriting constructor.
Definition: exception.h:481
Thrown when duplicates of teh same identity string exist.
Definition: exception.h:95
static const Whole ExceptionCode
Thrown when no network connection is available.
Definition: exception.h:1081
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:752
RenderingAPIException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
RenderingAPIException constructor.
Definition: exception.h:2754
ParametersException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ParametersException Name overwriting constructor.
Definition: exception.h:2372
static const Whole ExceptionCode
Thrown when an address is invalid or could not be found.
Definition: exception.h:1142
IOWriteException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
IOWriteException constructor.
Definition: exception.h:1290
Thrown when and XML document is being parsed but is invalid.
Definition: exception.h:1870
Thrown when an unknown internal error occurred.
Definition: exception.h:116
virtual ~SyntaxErrorException()
Class destructor.
Definition: exception.h:1847
IOWriteException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
IOWriteException Name overwriting constructor.
Definition: exception.h:1274
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2765
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1911
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1606
DirectoryReadException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
DirectoryReadException Name overwriting constructor.
Definition: exception.h:664
DirectoryPermissionException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
DirectoryPermissionException Name overwriting constructor.
Definition: exception.h:847
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:569
InstanceIdentityException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InstanceIdentityException Name overwriting constructor.
Definition: exception.h:1396
static const Whole ExceptionCode
Thrown when a read is happening but something has prevented the underlying code from knowing what was...
Definition: exception.h:1325
NetworkException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:947
IOWriteException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1313
Thrown when attempted to access something that really should note be accessed.
Definition: exception.h:1748
IOReadException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
IOReadException constructor.
Definition: exception.h:1351
InvalidAssignment(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InvalidAssignment Name overwriting constructor.
Definition: exception.h:2982
Thrown when a passed parameter is checked at runtime and not in the expected range.
Definition: exception.h:2480
Thrown when a directory could be written to and it wasn't a permission issue.
Definition: exception.h:81
static const Whole ExceptionCode
Thrown when something unknown causes network IO to fail.
Definition: exception.h:898
Thrown when something unknown causes network IO to fail.
Definition: exception.h:84
Thrown when Lua returns a yield and it should not have.
Definition: exception.h:2175
Template class that serves as the base for exception factories.
Definition: exception.h:207
NetworkException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NetworkException Name overwriting constructor.
Definition: exception.h:908
Thrown when the graphics card/DirectX/OpenGL fail.
Definition: exception.h:2724
Thrown when a file could not be written and perimssions seem not to be an issue.
Definition: exception.h:406
FileReadException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:398
static const Whole ExceptionCode
Thrown when a file was expected to be there, but was not.
Definition: exception.h:471
static const Whole ExceptionCode
Thrown when permission was denied to a file.
Definition: exception.h:532
Thrown when the identity string wasn't valid at all.
Definition: exception.h:1443
static const Whole ExceptionCode
Thrown when a write is happening but something has prevented the underlying code from knowing what wa...
Definition: exception.h:1264
NetworkURLException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NetworkURLException Name overwriting constructor.
Definition: exception.h:1152
Thrown when there is an unknown issue with a file.
Definition: exception.h:79
SyntaxErrorLuaException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2045
InvalidStateException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2716
static const Whole ExceptionCode
Thrown when permision was denied to a network interface or network resource.
Definition: exception.h:1203
virtual ~DirectoryNotFoundException()
Class destructor.
Definition: exception.h:810
Thrown when the graphics card/DirectX/OpenGL fail.
Definition: exception.h:114
virtual ~NetworkNotFoundException()
Class destructor.
Definition: exception.h:1115
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:630
virtual ~FileException()
Class destructor.
Definition: exception.h:322
ParametersCastException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2472
ScriptLuaRuntimeException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2289
NetworkURLException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1191
Thrown when no network connection is available.
Definition: exception.h:1077
static const Whole ExceptionCode
Thrown when an unknown error with using an Identifier and it is invalid.
Definition: exception.h:1386
NetworkNotFoundException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NetworkNotFoundException constructor.
Definition: exception.h:1107
InvalidVersionException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InvalidVersionException constructor.
Definition: exception.h:2632
Thrown when and XML document is being parsed but is invalid.
Definition: exception.h:100
virtual ~ParametersRangeException()
Class destructor.
Definition: exception.h:2518
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1179
Thrown when the requested identity could not be found.
Definition: exception.h:94
RenderingAPIException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2777
Thrown when a file was expected to be there, but was not.
Definition: exception.h:467
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1057
static const Whole ExceptionCode
Thrown when a version is accessed/parsed/required and it cannot work correctly or is missing...
Definition: exception.h:2606
ParametersException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ParametersException constructor.
Definition: exception.h:2388
ParametersCastException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ParametersCastException constructor.
Definition: exception.h:2449
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2033
Thrown when we just have not coded a thing yet, but we knew what the API should look like...
Definition: exception.h:117
All the definitions for datatypes as well as some basic conversion functions are defined here...
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1240
InstanceIdentityNotFoundException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InstanceIdentityNotFoundException Name overwriting constructor.
Definition: exception.h:1518
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:691
static const Whole ExceptionCode
Thrown when a directory could be written to and it wasn't a permission issue.
Definition: exception.h:715
FileException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
FileException constructor.
Definition: exception.h:314
virtual ~NotImplementedException()
Class destructor.
Definition: exception.h:2945
Thrown when a version is accessed/parsed/required and it cannot work correctly or is missing...
Definition: exception.h:112
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1850
Thrown when a read is happening but something has prevented the underlying code from knowing what was...
Definition: exception.h:1321
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2277
NetworkWriteException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1069
SyntaxErrorXMLException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
SyntaxErrorXMLException Name overwriting constructor.
Definition: exception.h:1884
ExceptionCodes
This enum provides mapping/naming for all the core Mezzanine.
Definition: exception.h:70
ParametersRangeException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2533
Thrown when an unknown error happens with a script.
Definition: exception.h:103
static const Whole ExceptionCode
Thrown when lua code in incorrect.
Definition: exception.h:1996
Thrown when data could not be read from the network (iloads)
Definition: exception.h:86
MemoryManagementException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1679
ScriptException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ScriptException constructor.
Definition: exception.h:2083
static const Whole ExceptionCode
Thrown when data could not be read from the network (downloads)
Definition: exception.h:959
virtual ~FileNotFoundException()
Class destructor.
Definition: exception.h:505
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:935
Thrown when a file was expected to be there, but was not.
Definition: exception.h:77
NotImplementedException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NotImplementedException constructor.
Definition: exception.h:2937
Thrown when Math has failed.
Definition: exception.h:2541
RenderingAPIException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
RenderingAPIException Name overwriting constructor.
Definition: exception.h:2738
virtual ~ScriptLuaYieldException()
Class destructor.
Definition: exception.h:2213
Thrown when a complex class is assigned to itself or other invalid assignments occur.
Definition: exception.h:2968
Thrown when parameters are checked at runtime and found invalid.
Definition: exception.h:2358
Thrown when a directory could be written to and it wasn't a permission issue.
Definition: exception.h:711
NetworkReadException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NetworkReadException constructor.
Definition: exception.h:985
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1545
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1301
MemoryOutOfBoundsException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1801
Thrown when A memory allocation was attempted and failed.
Definition: exception.h:1687
ParametersRangeException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ParametersRangeException constructor.
Definition: exception.h:2510
static const Whole ExceptionCode
Thrown when an XPath query is being parsed but is invalid.
Definition: exception.h:1935
virtual ~ScriptLuaException()
Class destructor.
Definition: exception.h:2152
virtual ~InvalidAssignment()
Class destructor.
Definition: exception.h:3006
Thrown when a complex class is assigned to itself or other invalid assignments occur.
Definition: exception.h:118
NetworkNotFoundException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NetworkNotFoundException Name overwriting constructor.
Definition: exception.h:1091
InstanceIdentityInvalidException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InstanceIdentityInvalidException Name overwriting constructor.
Definition: exception.h:1457
virtual ~ScriptLuaRuntimeException()
Class destructor.
Definition: exception.h:2274
ParametersRangeException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ParametersRangeException Name overwriting constructor.
Definition: exception.h:2494
FileException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:337
SyntaxErrorLuaException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
SyntaxErrorLuaException Name overwriting constructor.
Definition: exception.h:2006
static const Whole ExceptionCode
Thrown when there was an issue with IO but very little was known about it.
Definition: exception.h:227
Thrown when an address is invalid or could not be found.
Definition: exception.h:1138
NotImplementedException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2960
virtual ~SyntaxErrorXMLException()
Class destructor.
Definition: exception.h:1908
virtual ~NetworkReadException()
Class destructor.
Definition: exception.h:993
virtual ~OutOfMemoryException()
Class destructor.
Definition: exception.h:1725
virtual ~ScriptException()
Class destructor.
Definition: exception.h:2091
Thrown when data could not be read from the network (iloads)
Definition: exception.h:1016
MemoryManagementException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
MemoryManagementException constructor.
Definition: exception.h:1656
Thrown when an unknown internal error occurred.
Definition: exception.h:2846
RuntimeAssertionException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
RuntimeAssertionException Name overwriting constructor.
Definition: exception.h:2799
ScriptException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ScriptException Name overwriting constructor.
Definition: exception.h:2067
static const Whole ExceptionCode
Thrown when an unknown internal error occurred.
Definition: exception.h:2850
ParametersException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2411
Thrown when a pointer parameter is checked at runtime and cannot be cast as expected.
Definition: exception.h:2419
static const Whole ExceptionCode
Thrown when the identity string wasn't valid at all.
Definition: exception.h:1447
static const Whole ExceptionCode
Thrown when parameters are checked at runtime and found invalid.
Definition: exception.h:2362
ExceptionBase Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:210
Thrown when a write is happening but something has prevented the underlying code from knowing what wa...
Definition: exception.h:90
InstanceIdentityException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InstanceIdentityException constructor.
Definition: exception.h:1412
static const Whole ExceptionCode
Thrown when a directory was expected to be there, but was not.
Definition: exception.h:776
IOException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
IOException Name overwriting constructor.
Definition: exception.h:237
Thrown when permission was denied to a file.
Definition: exception.h:78
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1118
DirectoryException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
DirectoryException constructor.
Definition: exception.h:619
OutOfMemoryException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
OutOfMemoryException constructor.
Definition: exception.h:1717
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2582
InstanceIdentityDuplicateException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1618
Thrown when permission was denied to a file.
Definition: exception.h:528
Thrown when there is an unknown issue with a file.
Definition: exception.h:284
Thrown when there is an unknown issue with a file.
Definition: exception.h:589
Thrown when a file could not be read and permissions seem to not be an issue (Filesystem/hardware iss...
Definition: exception.h:75
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2216
ScriptLuaRuntimeException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ScriptLuaRuntimeException constructor.
Definition: exception.h:2266
NetworkNotFoundException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1130
ScriptException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2106
InvalidStateException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InvalidStateException constructor.
Definition: exception.h:2693
static const Whole ExceptionCode
Thrown when a complex class is assigned to itself or other invalid assignments occur.
Definition: exception.h:2972
FilePermissionException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:581
DirectoryWriteException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
DirectoryWriteException Name overwriting constructor.
Definition: exception.h:725
virtual ~InstanceIdentityDuplicateException()
Class destructor.
Definition: exception.h:1603
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2643
NetworkPermissionException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1252
static const Whole ExceptionCode
Thrown when Math has failed.
Definition: exception.h:2545
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2887
InternalException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InternalException Name overwriting constructor.
Definition: exception.h:2860
ArithmeticException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ArithmeticException Name overwriting constructor.
Definition: exception.h:2555
Thrown when some kind of syntax exception.
Definition: exception.h:1809
This is the exception thrown by most Mezzanine systems that can throw exceptions. ...
Definition: exception.h:59
Thrown when we just have not coded a thing yet, but we knew what the API should look like...
Definition: exception.h:2907
OutOfMemoryException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1740
Thrown when data could not be read from the network (downloads)
Definition: exception.h:955
ArithmeticException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ArithmeticException constructor.
Definition: exception.h:2571
InvalidAssignment Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:3021
virtual ~NetworkPermissionException()
Class destructor.
Definition: exception.h:1237
ScriptLuaErrErrException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2350
Thrown when an unknown error happens in a Lua script.
Definition: exception.h:2114
DirectoryWriteException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
DirectoryWriteException constructor.
Definition: exception.h:741
virtual ~RenderingAPIException()
Class destructor.
Definition: exception.h:2762
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2338
virtual ~IOReadException()
Class destructor.
Definition: exception.h:1359
OutOfMemoryException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
OutOfMemoryException Name overwriting constructor.
Definition: exception.h:1701
SyntaxErrorXPathException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
SyntaxErrorXPathException Name overwriting constructor.
Definition: exception.h:1945
virtual ~ArithmeticException()
Class destructor.
Definition: exception.h:2579
Thrown when something unknown causes network IO to fail.
Definition: exception.h:894
Thrown when there is an unknown issue with a file.
Definition: exception.h:74
InternalException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2899
ParametersCastException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ParametersCastException Name overwriting constructor.
Definition: exception.h:2433
Thrown when the requested identity could not be found.
Definition: exception.h:1504
Thrown when lua code in incorrect.
Definition: exception.h:1992
virtual ~RuntimeAssertionException()
Class destructor.
Definition: exception.h:2823
InstanceIdentityNotFoundException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1557
IOReadException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1374
Thrown when permision was denied to a network interface or network resource.
Definition: exception.h:89
Thrown when an XPath query is being parsed but is invalid.
Definition: exception.h:1931
MemoryOutOfBoundsException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
MemoryOutOfBoundsException Name overwriting constructor.
Definition: exception.h:1762
InstanceIdentityInvalidException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InstanceIdentityInvalidException constructor.
Definition: exception.h:1473
SyntaxErrorXMLException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
SyntaxErrorXMLException constructor.
Definition: exception.h:1900
ScriptLuaRuntimeException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ScriptLuaRuntimeException Name overwriting constructor.
Definition: exception.h:2250
Thrown when an unknown memory management exception occurs.
Definition: exception.h:1626
InvalidAssignment(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InvalidAssignment constructor.
Definition: exception.h:2998
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:508
Thrown when a directory could be read and it wasn't a permission issue.
Definition: exception.h:80
ScriptLuaException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2167
virtual ~InvalidVersionException()
Class destructor.
Definition: exception.h:2640
Thrown when there was an issue with IO but very little was known about it.
Definition: exception.h:73
SyntaxErrorXMLException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1923
virtual ~NetworkException()
Class destructor.
Definition: exception.h:932
DirectoryPermissionException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
DirectoryPermissionException constructor.
Definition: exception.h:863
virtual ~ScriptLuaErrErrException()
Class destructor.
Definition: exception.h:2335
static const Whole ExceptionCode
Thrown when a rutime assertion could have been Thrown.
Definition: exception.h:2789
SyntaxErrorException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
SyntaxErrorException constructor.
Definition: exception.h:1839
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2155
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1789
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1972
DirectoryPermissionException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:886
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1728
Thrown when an XPath query is being parsed but is invalid.
Definition: exception.h:101
NotImplementedException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NotImplementedException Name overwriting constructor.
Definition: exception.h:2921
static const Whole ExceptionCode
Thrown when there is an unknown issue with a file.
Definition: exception.h:593
RuntimeAssertionException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2838
NetworkPermissionException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NetworkPermissionException constructor.
Definition: exception.h:1229
Thrown when an unknown error happens in a Lua script.
Definition: exception.h:104
Thrown when a passed parameter is checked at runtime and not in the expected range.
Definition: exception.h:110
InvalidVersionException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InvalidVersionException Name overwriting constructor.
Definition: exception.h:2616
SyntaxErrorXPathException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
SyntaxErrorXPathException constructor.
Definition: exception.h:1961
Thrown when lua code in incorrect.
Definition: exception.h:102
Thrown when there was an issue with IO but very little was known about it.
Definition: exception.h:223
IOException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:276
FileWriteException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
FileWriteException Name overwriting constructor.
Definition: exception.h:420
RuntimeAssertionException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
RuntimeAssertionException constructor.
Definition: exception.h:2815
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2460
static const Whole ExceptionCode
Thrown when duplicates of teh same identity string exist.
Definition: exception.h:1569
DirectoryException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:642
virtual ~InstanceIdentityException()
Class destructor.
Definition: exception.h:1420
Thrown when an unknown error happens with a script.
Definition: exception.h:2053
ArithmeticException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2594
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2948
ScriptLuaException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ScriptLuaException constructor.
Definition: exception.h:2144
DirectoryNotFoundException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
DirectoryNotFoundException Name overwriting constructor.
Definition: exception.h:786
virtual ~FileWriteException()
Class destructor.
Definition: exception.h:444
FileWriteException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
FileWriteException constructor.
Definition: exception.h:436
Thrown when the available information should have worked but failed for unknown reasons.
Definition: exception.h:113
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2094
InstanceIdentityNotFoundException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InstanceIdentityNotFoundException constructor.
Definition: exception.h:1534
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1484
static const Whole ExceptionCode
Thrown when a Lua script has a runtime error.
Definition: exception.h:2240
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:447
virtual ~InstanceIdentityNotFoundException()
Class destructor.
Definition: exception.h:1542
Thrown when a rutime assertion could have been Thrown.
Definition: exception.h:2785
Thrown when parameters are checked at runtime and found invalid.
Definition: exception.h:108
SyntaxErrorXPathException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1984
Thrown when a directory could be read and it wasn't a permission issue.
Definition: exception.h:650
Thrown when an address is invalid or could not be found.
Definition: exception.h:88
IOException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
IOException constructor.
Definition: exception.h:253
Thrown when Lua has an error handling an error.
Definition: exception.h:107
Thrown when a file could not be written and perimssions seem not to be an issue.
Definition: exception.h:76
virtual ~FileReadException()
Class destructor.
Definition: exception.h:383
Thrown when duplicates of teh same identity string exist.
Definition: exception.h:1565
Thrown when a Lua script has a runtime error.
Definition: exception.h:106
Thrown when the available information should have worked but failed for unknown reasons.
Definition: exception.h:2663
virtual ~DirectoryException()
Class destructor.
Definition: exception.h:627
FileReadException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
FileReadException constructor.
Definition: exception.h:375
static const Whole ExceptionCode
Thrown when attempted to access something that really should note be accessed.
Definition: exception.h:1752
ScriptLuaException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ScriptLuaException Name overwriting constructor.
Definition: exception.h:2128
Thrown when the identity string wasn't valid at all.
Definition: exception.h:93
virtual ~NetworkWriteException()
Class destructor.
Definition: exception.h:1054
Thrown when a rutime assertion could have been Thrown.
Definition: exception.h:115
InstanceIdentityDuplicateException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InstanceIdentityDuplicateException Name overwriting constructor.
Definition: exception.h:1579
Thrown when a version is accessed/parsed/required and it cannot work correctly or is missing...
Definition: exception.h:2602
virtual ~ParametersCastException()
Class destructor.
Definition: exception.h:2457
Thrown when Math has failed.
Definition: exception.h:111
#define MEZZ_LIB
Some platforms require special decorations to denote what is exported/imported in a share library...
NetworkURLException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NetworkURLException constructor.
Definition: exception.h:1168
static const Whole ExceptionCode
Thrown when a passed parameter is checked at runtime and not in the expected range.
Definition: exception.h:2484
InstanceIdentityInvalidException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1496
static const Whole ExceptionCode
Thrown when we just have not coded a thing yet, but we knew what the API should look like...
Definition: exception.h:2911
static const Whole ExceptionCode
Thrown when a directory could be read and it wasn't a permission issue.
Definition: exception.h:654
MemoryOutOfBoundsException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
MemoryOutOfBoundsException constructor.
Definition: exception.h:1778
NetworkReadException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NetworkReadException Name overwriting constructor.
Definition: exception.h:969
MemoryManagementException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
MemoryManagementException Name overwriting constructor.
Definition: exception.h:1640
The bulk of the engine components go in this namspace.
Definition: actor.cpp:56
Thrown when a read is happening but something has prevented the underlying code from knowing what was...
Definition: exception.h:91
IOReadException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
IOReadException Name overwriting constructor.
Definition: exception.h:1335
unsigned long Whole
Whole is an unsigned integer, it will be at least 32bits in size.
Definition: datatypes.h:151
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2826
virtual ~NetworkURLException()
Class destructor.
Definition: exception.h:1176
FilePermissionException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
FilePermissionException Name overwriting constructor.
Definition: exception.h:542
NetworkPermissionException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NetworkPermissionException Name overwriting constructor.
Definition: exception.h:1213
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2399
ScriptLuaYieldException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ScriptLuaYieldException constructor.
Definition: exception.h:2205
static const Whole ExceptionCode
Thrown when a pointer parameter is checked at runtime and cannot be cast as expected.
Definition: exception.h:2423
NetworkWriteException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NetworkWriteException constructor.
Definition: exception.h:1046
InternalException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InternalException constructor.
Definition: exception.h:2876
virtual ~DirectoryWriteException()
Class destructor.
Definition: exception.h:749
Thrown when a Lua script has a runtime error.
Definition: exception.h:2236
NetworkReadException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1008
Thrown when permission is denied to a directory.
Definition: exception.h:833
virtual ~InvalidStateException()
Class destructor.
Definition: exception.h:2701
FileNotFoundException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
FileNotFoundException constructor.
Definition: exception.h:497
static const Whole ExceptionCode
Thrown when a file could not be read and permissions seem to not be an issue (Filesystem/hardware iss...
Definition: exception.h:349
static const Whole ExceptionCode
Thrown when Lua has an error handling an error.
Definition: exception.h:2301
DirectoryException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
DirectoryException Name overwriting constructor.
Definition: exception.h:603
DirectoryNotFoundException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
DirectoryNotFoundException constructor.
Definition: exception.h:802
InvalidStateException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InvalidStateException Name overwriting constructor.
Definition: exception.h:2677
ScriptLuaErrErrException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ScriptLuaErrErrException Name overwriting constructor.
Definition: exception.h:2311
Thrown when some kind of syntax exception.
Definition: exception.h:99
DirectoryReadException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:703
Thrown when a pointer parameter is checked at runtime and cannot be cast as expected.
Definition: exception.h:109
virtual ~DirectoryPermissionException()
Class destructor.
Definition: exception.h:871
static const Whole ExceptionCode
Thrown when the available information should have worked but failed for unknown reasons.
Definition: exception.h:2667
virtual ~ParametersException()
Class destructor.
Definition: exception.h:2396
static const Whole ExceptionCode
Thrown when permission is denied to a directory.
Definition: exception.h:837
SyntaxErrorLuaException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
SyntaxErrorLuaException constructor.
Definition: exception.h:2022
virtual ~SyntaxErrorLuaException()
Class destructor.
Definition: exception.h:2030
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1423
Thrown when permision was denied to a network interface or network resource.
Definition: exception.h:1199
Thrown when attempted to access something that really should note be accessed.
Definition: exception.h:98
static const Whole ExceptionCode
Thrown when the graphics card/DirectX/OpenGL fail.
Definition: exception.h:2728
Thrown when A memory allocation was attempted and failed.
Definition: exception.h:97
static const Whole ExceptionCode
Thrown when an unknown error happens with a script.
Definition: exception.h:2057
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2521
virtual ~InternalException()
Class destructor.
Definition: exception.h:2884
virtual ~InstanceIdentityInvalidException()
Class destructor.
Definition: exception.h:1481
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:325
virtual ~MemoryManagementException()
Class destructor.
Definition: exception.h:1664
NetworkWriteException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NetworkWriteException Name overwriting constructor.
Definition: exception.h:1030
FileNotFoundException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:520
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:264
virtual ~DirectoryReadException()
Class destructor.
Definition: exception.h:688
static const Whole ExceptionCode
Thrown when a file could not be written and perimssions seem not to be an issue.
Definition: exception.h:410
DirectoryReadException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
DirectoryReadException constructor.
Definition: exception.h:680
FileReadException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
FileReadException Name overwriting constructor.
Definition: exception.h:359
ScriptLuaYieldException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2228
static const Whole ExceptionCode
Thrown when Lua returns a yield and it should not have.
Definition: exception.h:2179
InstanceIdentityException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1435
Thrown when data could not be read from the network (downloads)
Definition: exception.h:85
virtual ~IOException()
Class destructor.
Definition: exception.h:261
static const Whole ExceptionCode
Thrown when there is an unknown issue with a file.
Definition: exception.h:288
Thrown when an unknown memory management exception occurs.
Definition: exception.h:96
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1667
std::string String
A datatype used to a series of characters.
Definition: datatypes.h:159
Thrown when an unknown error with using an Identifier and it is invalid.
Definition: exception.h:92
Thrown when no network connection is available.
Definition: exception.h:87
FilePermissionException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
FilePermissionException constructor.
Definition: exception.h:558
ScriptLuaErrErrException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ScriptLuaErrErrException constructor.
Definition: exception.h:2327
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:996
static const Whole ExceptionCode
Thrown when some kind of syntax exception.
Definition: exception.h:1813
Thrown when a directory was expected to be there, but was not.
Definition: exception.h:82
Thrown when Lua has an error handling an error.
Definition: exception.h:2297
virtual ~IOWriteException()
Class destructor.
Definition: exception.h:1298
ScriptLuaYieldException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
ScriptLuaYieldException Name overwriting constructor.
Definition: exception.h:2189
static const Whole ExceptionCode
Thrown when an unknown error happens in a Lua script.
Definition: exception.h:2118
InstanceIdentityDuplicateException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
InstanceIdentityDuplicateException constructor.
Definition: exception.h:1595
SyntaxErrorException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:1862
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:1362
Thrown when an unknown error with using an Identifier and it is invalid.
Definition: exception.h:1382
DirectoryNotFoundException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:825
InvalidVersionException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:2655
FileException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
FileException Name overwriting constructor.
Definition: exception.h:298
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:386
Thrown when a directory was expected to be there, but was not.
Definition: exception.h:772
FileWriteException Type
This allows parameterized uses of this type when, so exception can be throw without directly using th...
Definition: exception.h:459
static const Whole ExceptionCode
Thrown when an unknown memory management exception occurs.
Definition: exception.h:1630
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:2704
NetworkException(const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
NetworkException constructor.
Definition: exception.h:924
virtual ~SyntaxErrorXPathException()
Class destructor.
Definition: exception.h:1969
Thrown when a file could not be read and permissions seem to not be an issue (Filesystem/hardware iss...
Definition: exception.h:345
virtual ~FilePermissionException()
Class destructor.
Definition: exception.h:566
SyntaxErrorException(const String &TypeName, const String &JavaTypeName, const String &Message, const String &SrcFunction, const String &SrcFile, const Whole &FileLine)
SyntaxErrorException Name overwriting constructor.
Definition: exception.h:1823
virtual Whole GetExceptionCode() const
Gets the exception code for this exception.
Definition: exception.h:3009