IODA Bundle
Exceptions.h
Go to the documentation of this file.
1 /*
2  * (C) Copyright 1996-2018 ECMWF.
3  *
4  * This software is licensed under the terms of the Apache Licence Version 2.0
5  * which can be obtained at http://www.apache.org/licenses/LICENSE-2.0.
6  * In applying this licence, ECMWF does not waive the privileges and immunities
7  * granted to it by virtue of its status as an intergovernmental organisation nor
8  * does it submit to any jurisdiction.
9  */
10 
11 /// @author Simon Smart
12 /// @date January 2019
13 
14 #ifndef odc_core_exceptions_H
15 #define odc_core_exceptions_H
16 
17 #include "eckit/exception/Exceptions.h"
18 
19 
20 namespace odc {
21 namespace core {
22 
23 //----------------------------------------------------------------------------------------------------------------------
24 
25 
26 class ODBDecodeError : public eckit::Exception {
27 public:
28  ODBDecodeError(const std::string&, const eckit::CodeLocation&);
29 };
30 
31 
32 class ODBIncomplete : public ODBDecodeError {
33 public:
34  ODBIncomplete(const std::string&, const eckit::CodeLocation&);
35 };
36 
37 
38 class ODBInvalid : public ODBDecodeError {
39 public:
40  ODBInvalid(const std::string& title, const std::string& reason, const eckit::CodeLocation&);
41 };
42 
43 
45 public:
46  ODBEndOfDataStream(const std::string&, const eckit::CodeLocation&);
47 };
48 
49 //----------------------------------------------------------------------------------------------------------------------
50 
51 } // namespace core
52 } // namespace odc
53 
54 #endif
ODBDecodeError(const std::string &, const eckit::CodeLocation &)
Definition: Exceptions.cc:19
ODBEndOfDataStream(const std::string &, const eckit::CodeLocation &)
Definition: Exceptions.cc:31
ODBIncomplete(const std::string &, const eckit::CodeLocation &)
Definition: Exceptions.cc:23
ODBInvalid(const std::string &title, const std::string &reason, const eckit::CodeLocation &)
Definition: Exceptions.cc:27
Definition: ColumnInfo.h:23