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
00027 #include <QObject>
00028 #include <QDir>
00029
00030
00031 #include <rebecca/all.h>
00032 #include "QtGuiCallBacks.h"
00033
00034
00040 namespace qtgui
00041 {
00042 using namespace rebecca;
00043
00044
00049 class AIMLEngine : public QObject
00050 {
00051 Q_OBJECT
00052
00053 public:
00054
00059 void initAIML();
00060
00072 AIMLEngine()
00073 : m_aiml(0)
00074 {
00075 bool b = connect(&m_callback, SIGNAL(addText(const QString &)),
00076 this, SIGNAL(addText(const QString &)));
00077 }
00078
00079 signals:
00080
00088 void addText(const QString &text);
00089
00098 void addBotText(const QString &text);
00099
00107 void addBotName(const QString &text);
00108
00113 void loading();
00114
00119 void doneLoading();
00120
00121 public slots:
00122
00130 void userInput(const QString &text);
00131
00135 void clearAIML();
00136
00143 void addFile(const QString &fileName);
00144
00153 void addDirectory(const QString &directoryName);
00154
00155 private:
00156
00164 QtGuiCallBacks m_callback;
00165
00170 AimlFacade *m_aiml;
00171 };
00172
00173
00174 }
00175
00176 #endif