#ifndef QTEXTCODECPLUGIN_H
#define QTEXTCODECPLUGIN_H 
#include <QtCore/qplugin.h>
#include <QtCore/qfactoryinterface.h>
#include <QtCore/qlist.h>
#include <QtCore/qbytearray.h>
typedef enum QtValidLicenseForCoreModule QtCoreModule;
#ifndef QT_NO_TEXTCODECPLUGIN
struct QTextCodecFactoryInterface: public QFactoryInterface{
   public: virtual struct QTextCodec* create(class QString const & key) = 0;
};
#define QTextCodecFactoryInterface_iid "com.trolltech.Qt.QTextCodecFactoryInterface"

class QTextCodecPlugin: public QObject, public QTextCodecFactoryInterface{
   public: virtual struct QMetaObject const * metaObject() const
   public: virtual void* qt_metacast(char const *);
   public: static struct QMetaObject const staticMetaObject;
   public: static inline class QString tr(char const * s, char const * c = 0);
   public: static inline class QString trUtf8(char const * s, char const * c = 0);
   public: static inline class QString tr(char const * s, char const * c, int n);
   public: static inline class QString trUtf8(char const * s, char const * c, int n);
   public: virtual int qt_metacall(enum QMetaObject::Call, int, void* *);
   public: explicit QTextCodecPlugin(class QObject* parent = 0);
   public: virtual ~QTextCodecPlugin();
   public: virtual class QList < class QByteArray > names() const = 0;
   public: virtual class QList < class QByteArray > aliases() const = 0;
   public: virtual struct QTextCodec* createForName(class QByteArray const & name) = 0;
   public: virtual class QList < int > mibEnums() const = 0;
   public: virtual struct QTextCodec* createForMib(int mib) = 0;
   private: virtual class QStringList keys() const
   private: virtual struct QTextCodec* create(class QString const & name);
};
#endif // QT_NO_TEXTCODECPLUGIN
#endif // QTEXTCODECPLUGIN_H