Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members

FXUTF32Codec.h
1 /********************************************************************************
2 * *
3 * U T F - 3 2 T e x t C o d e c *
4 * *
5 *********************************************************************************
6 * Copyright (C) 2002,2024 by L.Johnson & J.van der Zijp. All Rights Reserved. *
7 *********************************************************************************
8 * This library is free software; you can redistribute it and/or modify *
9 * it under the terms of the GNU Lesser General Public License as published by *
10 * the Free Software Foundation; either version 3 of the License, or *
11 * (at your option) any later version. *
12 * *
13 * This library is distributed in the hope that it will be useful, *
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of *
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the *
16 * GNU Lesser General Public License for more details. *
17 * *
18 * You should have received a copy of the GNU Lesser General Public License *
19 * along with this program. If not, see <http://www.gnu.org/licenses/> *
20 ********************************************************************************/
21 #ifndef FXUTF32CODEC_H
22 #define FXUTF32CODEC_H
23 
24 #ifndef FXTEXTCODEC_H
25 #include "FXTextCodec.h"
26 #endif
27 
28 namespace FX {
29 
30 
32 class FXAPI FXUTF32BECodec : public FXTextCodec {
33  FXDECLARE(FXUTF32BECodec)
34 public:
35  FXUTF32BECodec(){}
36  virtual FXint mb2wc(FXwchar& wc,const FXchar* src,FXint nsrc) const;
37  virtual FXint wc2mb(FXchar* dst,FXint ndst,FXwchar wc) const;
38  virtual const FXchar* name() const;
39  virtual const FXchar* mimeName() const;
40  virtual FXint mibEnum() const;
41  virtual const FXchar* const* aliases() const;
42  virtual ~FXUTF32BECodec(){}
43  };
44 
45 
47 class FXAPI FXUTF32LECodec : public FXTextCodec {
48  FXDECLARE(FXUTF32LECodec)
49 public:
50  FXUTF32LECodec(){}
51  virtual FXint mb2wc(FXwchar& wc,const FXchar* src,FXint nsrc) const;
52  virtual FXint wc2mb(FXchar* dst,FXint ndst,FXwchar wc) const;
53  virtual const FXchar* name() const;
54  virtual const FXchar* mimeName() const;
55  virtual FXint mibEnum() const;
56  virtual const FXchar* const* aliases() const;
57  virtual ~FXUTF32LECodec(){}
58  };
59 
60 
62 class FXAPI FXUTF32Codec : public FXTextCodec {
63  FXDECLARE(FXUTF32Codec)
64 public:
65  FXUTF32Codec(){}
66  virtual FXint mb2wc(FXwchar& wc,const FXchar* src,FXint nsrc) const;
67  virtual FXint mb2utflen(const FXchar* src,FXint nsrc) const;
68  virtual FXint mb2utf(FXchar* dst,FXint ndst,const FXchar* src,FXint nsrc) const;
69  virtual FXint wc2mb(FXchar* dst,FXint ndst,FXwchar wc) const;
70  virtual FXint utf2mblen(const FXchar* src,FXint nsrc) const;
71  virtual FXint utf2mb(FXchar* dst,FXint ndst,const FXchar* src,FXint nsrc) const;
72  virtual const FXchar* name() const;
73  virtual const FXchar* mimeName() const;
74  virtual FXint mibEnum() const;
75  virtual const FXchar* const* aliases() const;
76  virtual ~FXUTF32Codec(){}
77  };
78 
79 
80 }
81 
82 #endif
83 
Abstract base class for a stateless coder/decoder.
Definition: FXTextCodec.h:34
Codec for UTF-32BE.
Definition: FXUTF32Codec.h:32
Codec for UTF-32LE.
Definition: FXUTF32Codec.h:47
Codec for UTF-32.
Definition: FXUTF32Codec.h:62
Definition: FX4Splitter.h:28

Copyright © 1997-2022 Jeroen van der Zijp