1 /****************************************************************************
2 **
3 ** Copyright (C) 2016 The Qt Company Ltd.
4 ** Contact: https://www.qt.io/licensing/
5 **
6 ** This file is part of the QtCore module of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** Commercial License Usage
10 ** Licensees holding valid commercial Qt licenses may use this file in
11 ** accordance with the commercial license agreement provided with the
12 ** Software or, alternatively, in accordance with the terms contained in
13 ** a written agreement between you and The Qt Company. For licensing terms
14 ** and conditions see https://www.qt.io/terms-conditions. For further
15 ** information use the contact form at https://www.qt.io/contact-us.
16 **
17 ** GNU Lesser General Public License Usage
18 ** Alternatively, this file may be used under the terms of the GNU Lesser
19 ** General Public License version 3 as published by the Free Software
20 ** Foundation and appearing in the file LICENSE.LGPL3 included in the
21 ** packaging of this file. Please review the following information to
22 ** ensure the GNU Lesser General Public License version 3 requirements
23 ** will be met: https://www.gnu.org/licenses/lgpl-3.0.html.
24 **
25 ** GNU General Public License Usage
26 ** Alternatively, this file may be used under the terms of the GNU
27 ** General Public License version 2.0 or (at your option) the GNU General
28 ** Public license version 3 or any later version approved by the KDE Free
29 ** Qt Foundation. The licenses are as published by the Free Software
30 ** Foundation and appearing in the file LICENSE.GPL2 and LICENSE.GPL3
31 ** included in the packaging of this file. Please review the following
32 ** information to ensure the GNU General Public License requirements will
33 ** be met: https://www.gnu.org/licenses/gpl-2.0.html and
34 ** https://www.gnu.org/licenses/gpl-3.0.html.
35 **
36 ** $QT_END_LICENSE$
37 **
38 ****************************************************************************/
39 
40 /*
41  * Copyright (C) 1999-2000 Mizi Research Inc. All rights reserved.
42  *
43  * Redistribution and use in source and binary forms, with or without
44  * modification, are permitted provided that the following conditions
45  * are met:
46  * 1. Redistributions of source code must retain the above copyright
47  *    notice, this list of conditions and the following disclaimer.
48  * 2. Redistributions in binary form must reproduce the above copyright
49  *    notice, this list of conditions and the following disclaimer in the
50  *    documentation and/or other materials provided with the distribution.
51  *
52  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
53  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
54  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
55  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
56  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
57  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
58  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
59  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
60  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
61  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
62  * SUCH DAMAGE.
63  */
64 
65 #ifndef QEUCKRCODEC_P_H
66 #define QEUCKRCODEC_P_H
67 
68 //
69 //  W A R N I N G
70 //  -------------
71 //
72 // This file is not part of the Qt API.  It exists for the convenience
73 // of other Qt classes.  This header file may change from version to
74 // version without notice, or even be removed.
75 //
76 // We mean it.
77 //
78 
79 #include <QtCore/private/qglobal_p.h>
80 #include <QtCore/qtextcodec.h>
81 #include <QtCore/qlist.h>
82 
83 QT_REQUIRE_CONFIG(big_codecs);
84 
85 QT_BEGIN_NAMESPACE
86 
87 class QEucKrCodec : public QTextCodec {
88 public:
89     static QByteArray _name();
_aliases()90     static QList<QByteArray> _aliases() { return QList<QByteArray>(); }
91     static int _mibEnum();
92 
name()93     QByteArray name() const override { return _name(); }
aliases()94     QList<QByteArray> aliases() const override { return _aliases(); }
mibEnum()95     int mibEnum() const override { return _mibEnum(); }
96 
97     QString convertToUnicode(const char *, int, ConverterState *) const override;
98     QByteArray convertFromUnicode(const QChar *, int, ConverterState *) const override;
99 };
100 
101 class QCP949Codec : public QTextCodec {
102 public:
103     static QByteArray _name();
104     static QList<QByteArray> _aliases();
105     static int _mibEnum();
106 
name()107     QByteArray name() const override { return _name(); }
aliases()108     QList<QByteArray> aliases() const override { return _aliases(); }
mibEnum()109     int mibEnum() const override { return _mibEnum(); }
110 
111     QString convertToUnicode(const char *, int, ConverterState *) const override;
112     QByteArray convertFromUnicode(const QChar *, int, ConverterState *) const override;
113 };
114 
115 QT_END_NAMESPACE
116 
117 #endif // QEUCKRCODEC_P_H
118