#include <QtCore/qtextcodec.h>
#ifndef QTEXTCODEC_H
#ifndef QT_NO_TEXTCODEC
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;
};
#endif // QT_NO_TEXTCODEC
#endif // QTEXTCODEC_H