Xerces-C++ 3.3.0

PanicHandler.hpp
Go to the documentation of this file.
1/*
2 * Licensed to the Apache Software Foundation (ASF) under one or more
3 * contributor license agreements. See the NOTICE file distributed with
4 * this work for additional information regarding copyright ownership.
5 * The ASF licenses this file to You under the Apache License, Version 2.0
6 * (the "License"); you may not use this file except in compliance with
7 * the License. You may obtain a copy of the License at
8 *
9 * http://www.apache.org/licenses/LICENSE-2.0
10 *
11 * Unless required by applicable law or agreed to in writing, software
12 * distributed under the License is distributed on an "AS IS" BASIS,
13 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 * See the License for the specific language governing permissions and
15 * limitations under the License.
16 */
17
18/*
19 * $Id$
20 */
21
22#if !defined(XERCESC_INCLUDE_GUARD_PANICHANDLER_HPP)
23#define XERCESC_INCLUDE_GUARD_PANICHANDLER_HPP
24
25#include <xercesc/util/XMemory.hpp>
26
27 XERCES_CPP_NAMESPACE_BEGIN
28
44 class XMLUTIL_EXPORT PanicHandler
45{
46 public:
47
50 enum PanicReasons
51 {
52 Panic_NoTransService
53 , Panic_NoDefTranscoder
54 , Panic_CantFindLib
55 , Panic_UnknownMsgDomain
56 , Panic_CantLoadMsgDomain
57 , Panic_SynchronizationErr
58 , Panic_SystemInit
59 , Panic_AllStaticInitErr
60 , Panic_MutexErr
61 , PanicReasons_Count
62 };
64
65 protected:
66
70 PanicHandler(){};
71
72 public:
73
75 virtual ~PanicHandler(){};
77
95 virtual void panic(const PanicHandler::PanicReasons reason) = 0;
97
98 static const char* getPanicReasonString(const PanicHandler::PanicReasons reason);
99
100 private:
101
102 /* Unimplemented Constructors and operators */
103 /* Copy constructor */
104 PanicHandler(const PanicHandler&);
105
107 PanicHandler& operator=(const PanicHandler&);
108};
109
110 XERCES_CPP_NAMESPACE_END
111
112#endif
XMemory.hpp
XERCES_CPP_NAMESPACE_BEGIN
#define XERCES_CPP_NAMESPACE_BEGIN
Definition XercesDefs.hpp:112
XMLUTIL_EXPORT
#define XMLUTIL_EXPORT
Definition XercesDefs.hpp:162
XERCES_CPP_NAMESPACE_END
#define XERCES_CPP_NAMESPACE_END
Definition XercesDefs.hpp:113
PanicHandler
Receive notification of panic.
Definition PanicHandler.hpp:45
PanicHandler::getPanicReasonString
static const char * getPanicReasonString(const PanicHandler::PanicReasons reason)
PanicHandler::panic
virtual void panic(const PanicHandler::PanicReasons reason)=0
Receive notification of panic.
PanicHandler::PanicReasons
PanicReasons
Definition PanicHandler.hpp:51
PanicHandler::PanicHandler
PanicHandler()
Default constructor.
Definition PanicHandler.hpp:70
PanicHandler::~PanicHandler
virtual ~PanicHandler()
Destructor.
Definition PanicHandler.hpp:75