NCBI C++ ToolKit
align_exception.hpp
Go to the documentation of this file.

Go to the SVN repository for this file.

1 #ifndef ALGO_ALIGN_EXCEPTION__HPP
2 #define ALGO_ALIGN_EXCEPTION__HPP
3 
4 /* $Id: align_exception.hpp 84663 2018-11-27 18:22:00Z ucko $
5 * ===========================================================================
6 *
7 * public DOMAIN NOTICE
8 * National Center for Biotechnology Information
9 *
10 * This software/database is a "United States Government Work" under the
11 * terms of the United States Copyright Act. It was written as part of
12 * the author's official duties as a United States Government employee and
13 * thus cannot be copyrighted. This software/database is freely available
14 * to the public for use. The National Library of Medicine and the U.S.
15 * Government have not placed any restriction on its use or reproduction.
16 *
17 * Although all reasonable efforts have been taken to ensure the accuracy
18 * and reliability of the software and data, the NLM and the U.S.
19 * Government do not and cannot warrant the performance or results that
20 * may be obtained by using this software or data. The NLM and the U.S.
21 * Government disclaim all warranties, express or implied, including
22 * warranties of performance, merchantability or fitness for any particular
23 * purpose.
24 *
25 * Please cite the author in any work or product based on this material.
26 *
27 * ===========================================================================
28 *
29 * Author: Yuri Kapustin, Andrei Gourianov
30 *
31 * File Description:
32 * Algo library exceptions
33 *
34 */
35 
36 #include <corelib/ncbiexpt.hpp>
37 
38 
39 /** @addtogroup AlgoAlignExcep
40  *
41  * @{
42  */
43 
44 
46 
47 
49 {
50 public:
51  enum EErrCode {
52  eInternal = 100,
65  eFormat
66  };
67  virtual const char* GetErrCodeString(void) const override {
68  switch ( GetErrCode() ) {
69  case eInternal:
70  return "Internal error";
71  case eBadParameter:
72  return "One or more parameters passed are invalid";
73  case eInvalidMatrix:
74  return "Invalid score matrix";
75  case eMemoryLimit:
76  return "Memory limit exceeded";
77  case eInvalidCharacter:
78  return "Sequence contains one or more invalid characters";
80  return "mRna should go first";
82  return "Splice type index out of range";
83  case eIntronTooLong:
84  return "Max supported intron length exceeded";
85  case eNoSeqData:
86  return "No sequence data available";
87  case ePattern:
88  return "Problem with the hit pattern";
89  case eNoHits:
90  return "Zero hit count";
91  case eNoAlignment:
92  return "No alignment found";
93  case eNotInitialized:
94  return "Object not properly initialized";
95  case eFormat:
96  return "Unexpected format";
97  default:
99  }
100  }
102 };
103 
104 
106 
107 
108 /* @} */
109 
110 #endif /* ALGO_ALIGN_EXCEPTION__HPP */
virtual const char * GetErrCodeString(void) const override
Get error code interpreted as text.
NCBI_EXCEPTION_DEFAULT(CAlgoAlignException, CException)
TErrCode GetErrCode(void) const
Get error code.
Definition: ncbiexpt.cpp:453
virtual const char * GetErrCodeString(void) const
Get error code interpreted as text.
Definition: ncbiexpt.cpp:444
#define END_NCBI_SCOPE
End previously defined NCBI scope.
Definition: ncbistl.hpp:103
#define BEGIN_NCBI_SCOPE
Define ncbi namespace.
Definition: ncbistl.hpp:100
Defines NCBI C++ exception handling.
Modified on Tue May 21 10:59:43 2024 by modify_doxy.py rev. 669887