00001 #ifndef QTGUI_AIMLENGINE_H
00002 #define QTGUI_AIMLENGINE_H
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #include <QObject>
00027 #include <QDir>
00028
00029
00030 #include <rebecca/all.h>
00031 #include "QtGuiCallBacks.h"
00032
00033
00039 namespace qtgui
00040 {
00041 using namespace rebecca;
00042
00043
00048 class AIMLEngine : public QObject
00049 {
00050 Q_OBJECT
00051
00052 public:
00053
00058 void initAIML();
00059
00071 AIMLEngine()
00072 : m_aiml(0)
00073 {
00074 bool b = connect(&m_callback, SIGNAL(addText(const QString &)),
00075 this, SIGNAL(addText(const QString &)));
00076 }
00077
00078 signals:
00079
00087 void addText(const QString &text);
00088
00097 void addBotText(const QString &text);
00098
00106 void addBotName(const QString &text);
00107
00112 void loading();
00113
00118 void doneLoading();
00119
00120 public slots:
00121
00129 void userInput(const QString &text);
00130
00134 void clearAIML();
00135
00142 void addFile(const QString &fileName);
00143
00152 void addDirectory(const QString &directoryName);
00153
00154 private:
00155
00163 QtGuiCallBacks m_callback;
00164
00169 AimlFacade *m_aiml;
00170 };
00171
00172
00173 }
00174
00175 #endif