Arcane  4.1.12.0
User documentation
Loading...
Searching...
No Matches
IOException.h
1// -*- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature -*-
2//-----------------------------------------------------------------------------
3// Copyright 2000-2026 CEA (www.cea.fr) IFPEN (www.ifpenergiesnouvelles.com)
4// See the top-level COPYRIGHT file for details.
5// SPDX-License-Identifier: Apache-2.0
6//-----------------------------------------------------------------------------
7/*---------------------------------------------------------------------------*/
8/* IOException.h (C) 2000-2018 */
9/* */
10/* Exception when an input/output error is detected. */
11/*---------------------------------------------------------------------------*/
12#ifndef ARCANE_UTILS_IOEXCEPTION_H
13#define ARCANE_UTILS_IOEXCEPTION_H
14/*---------------------------------------------------------------------------*/
15/*---------------------------------------------------------------------------*/
16
17#include "arcane/utils/Exception.h"
18
19/*---------------------------------------------------------------------------*/
20/*---------------------------------------------------------------------------*/
21
22namespace Arcane
23{
24
25/*---------------------------------------------------------------------------*/
26/*---------------------------------------------------------------------------*/
27
28/*!
29 * \ingroup IO
30 * \brief Exception when an input/output error is detected.
31 */
32class ARCANE_UTILS_EXPORT IOException
33: public Exception
34{
35 public:
36
37 IOException(const String& where);
38 IOException(const String& where, const String& message);
39 IOException(const TraceInfo& where);
40 IOException(const TraceInfo& where, const String& message);
41 IOException(const IOException& ex);
42 ~IOException() ARCANE_NOEXCEPT {}
43
44 public:
45
46 virtual void explain(std::ostream& m) const;
47
48 private:
49
50 String m_message;
51};
52
53/*---------------------------------------------------------------------------*/
54/*---------------------------------------------------------------------------*/
55
56} // namespace Arcane
57
58/*---------------------------------------------------------------------------*/
59/*---------------------------------------------------------------------------*/
60
61#endif
const String & where() const
Location of the exception.
const String & message() const
Exception message.
Exception(const String &name, const String &where)
virtual void explain(std::ostream &m) const
Explains the cause of the exception in the stream o.
-- tab-width: 2; indent-tabs-mode: nil; coding: utf-8-with-signature --