#ifndef QTEXTCODEC_H
#define QTEXTCODEC_H
#include <QtCore/qstring.h>
#include <QtCore/qlist.h>
typedef enum QtValidLicenseForCoreModule QtCoreModule;
#ifndef QT_NO_TEXTCODEC
struct QIODevice;
class QTextCodec{
private: QTextCodec(class QTextCodec const &);
private: class QTextCodec& operator =(class QTextCodec const &);
public: static class QTextCodec* codecForName(class QByteArray const & name);
public: static inline class QTextCodec* codecForName(char const * name);
public: static class QTextCodec* codecForMib(int mib);
public: static class QList < class QByteArray > availableCodecs();
public: static class QList < int > availableMibs();
public: static class QTextCodec* codecForLocale();
public: static void setCodecForLocale(class QTextCodec* c);
public: static class QTextCodec* codecForHtml(class QByteArray const & ba);
public: class QTextDecoder* makeDecoder() const
public: class QTextEncoder* makeEncoder() const
public: bool canEncode(class QChar) const
public: bool canEncode(class QString const &) const
public: class QString toUnicode(class QByteArray const &) const
public: class QString toUnicode(char const * chars) const
public: class QByteArray fromUnicode(class QString const & uc) const
public: enum ConversionFlag{
DefaultConversion = 0,
ConvertInvalidToNull = -2147483648,
IgnoreHeader = 1,
};
public: typedef class QFlags < enum QTextCodec::ConversionFlag > ConversionFlags;
public: struct ConverterState{
public: inline ConverterState(class QFlags < enum QTextCodec::ConversionFlag > f = QTextCodec::DefaultConversion);
public: inline ~ConverterState();
public: class QFlags < enum QTextCodec::ConversionFlag > flags;
public: int remainingChars;
public: int invalidChars;
public: uint state_data[3];
public: void* d;
private: ConverterState(struct QTextCodec::ConverterState const &);
private: struct QTextCodec::ConverterState& operator =(struct QTextCodec::ConverterState const &);
};
public: inline class QString toUnicode(char const * in, int length, struct QTextCodec::ConverterState* state = 0) const
public: inline class QByteArray fromUnicode(class QChar const * in, int length, struct QTextCodec::ConverterState* state = 0) const
public: virtual class QByteArray name() const = 0;
public: virtual class QList < class QByteArray > aliases() const
public: virtual int mibEnum() const = 0;
protected: virtual class QString convertToUnicode(char const * in, int length, struct QTextCodec::ConverterState* state) const = 0;
protected: virtual class QByteArray convertFromUnicode(class QChar const * in, int length, struct QTextCodec::ConverterState* state) const = 0;
protected: QTextCodec();
protected: virtual ~QTextCodec();
private: static class QTextCodec* cftr;
public: static inline class QTextCodec* codecForTr();
public: static inline void setCodecForTr(class QTextCodec* c);
public: static inline class QTextCodec* codecForCStrings();
public: static inline void setCodecForCStrings(class QTextCodec* c);
friend struct QTextCodecCleanup;
};
struct QTextCodecCleanup;
inline class QFlags < enum QTextCodec::ConversionFlag > operator |(enum QTextCodec::ConversionFlag f1, class QFlags < enum QTextCodec::ConversionFlag > f2);
inline class QFlags < enum QTextCodec::ConversionFlag > operator |(enum QTextCodec::ConversionFlag f1, enum QTextCodec::ConversionFlag f2);
class QTextEncoder{
private: QTextEncoder(class QTextEncoder const &);
private: class QTextEncoder& operator =(class QTextEncoder const &);
public: explicit inline QTextEncoder(QTextCodec* codec);
public: ~QTextEncoder();
public: class QByteArray fromUnicode(class QString const & str);
public: class QByteArray fromUnicode(class QChar const * uc, int len);
private: QTextCodec* c;
private: struct QTextCodec::ConverterState state;
};
class QTextDecoder{
private: QTextDecoder(class QTextDecoder const &);
private: class QTextDecoder& operator =(class QTextDecoder const &);
public: explicit inline QTextDecoder(QTextCodec* codec);
public: ~QTextDecoder();
public: class QString toUnicode(char const * chars, int len);
public: class QString toUnicode(class QByteArray const & ba);
private: QTextCodec* c;
private: struct QTextCodec::ConverterState state;
};
#endif // QT_NO_TEXTCODEC
#endif // QTEXTCODEC_H