FMT 1.2.0
Forest management tools for forest planning
Loading...
Searching...
No Matches
FMTQuietExceptionHandler.h
Go to the documentation of this file.
1/*
2Copyright (c) 2019 Gouvernement du Québec
3
4SPDX-License-Identifier: LiLiQ-R-1.1
5License-Filename: LICENSES/EN/LiLiQ-R11unicode.txt
6*/
7
8#ifndef FMTquietexceptionhandler_Hm_included
9#define FMTquietexceptionhandler_Hm_included
10
11#include "FMTExceptionHandler.h"
12#include "FMTException.h"
13#include <string>
14
15namespace Exception
16{
17 // DocString: FMTQuietExceptionHandler
22 {
23 public:
24 // DocString: FMTQuietExceptionHandler()
29 // DocString: ~FMTQuietExceptionHandler()
34 // DocString: FMTQuietExceptionHandler::raise
46 FMTException raise(FMTexc lexception, std::string text,
47 const std::string& method, const int& line, const std::string& file,
48 Core::FMTsection lsection = Core::FMTsection::Empty, bool throwit = true) override;
49 #if defined FMTWITHGDAL
50 // DocString: FMTQuietExceptionHandler::getCplData
56 // DocString: FMTQuietExceptionHandler::handelCplError
63 void handelCplError(int eErrClass, int nError, const char * pszErrorMsg) override;
64 #endif
65 // DocString: FMTQuietExceptionHandler::clone
70 virtual std::unique_ptr <FMTExceptionHandler> clone() const;
71 private:
72 // DocString: FMTQuietExceptionHandler::serialize
79 friend class boost::serialization::access;
80 template<class Archive>
81 void serialize(Archive& ar, const unsigned int version)
82 {
83 ar& boost::serialization::make_nvp("FMTexceptionhandler", boost::serialization::base_object<FMTExceptionHandler>(*this));
84 }
85 };
86
87}
88BOOST_CLASS_EXPORT_KEY(Exception::FMTQuietExceptionHandler)
89#endif
90
#define FMTEXPORT
Definition: FMTutility.h:125
Base class used to handle errors thrown in FMT.
Definition: FMTExceptionHandler.h:34
Base exception class for FMT holding the type, section and message of a given exception.
Definition: FMTException.h:140
Silent exception handler derived from FMTExceptionHandler that throws errors but logs nothing and rai...
Definition: FMTQuietExceptionHandler.h:22
FMTQuietExceptionHandler()
Default constructor for FMTQuietExceptionHandler.
void handelCplError(int eErrClass, int nError, const char *pszErrorMsg) override
Callback used in GDAL. See FMTExceptionHandler::handelCplError.
FMTException raise(FMTexc lexception, std::string text, const std::string &method, const int &line, const std::string &file, Core::FMTsection lsection=Core::FMTsection::Empty, bool throwit=true) override
Override the base class raise function. See FMTExceptionHandler::raise.
~FMTQuietExceptionHandler()=default
Default destructor for FMTQuietExceptionHandler.
FMTExceptionHandler * getCplData() override
Return an abstract copy of itself, used in handelCplError called back by GDAL. See FMTExceptionHandle...
virtual std::unique_ptr< FMTExceptionHandler > clone() const
clone the FMTQuietExceptionHandler
FMTsection
Enumerator describing the sections of a Woodstock model.
Definition: FMTutility.h:32
@ Empty
Definition: FMTutility.h:44
Namespace for exceptions and exceptions handling (warnings and errors) thrown by FMT and all exceptio...
Definition: FMTAggregateRedefinition.h:11
FMTexc
Enumerator describing the exceptions thrown by FMT.
Definition: FMTException.h:45