kpilot/kpilot
loggerDCOP_skel.cc00001
00002
00003
00004
00005
00006
00007
00008
00009 #include "./loggerDCOP.h"
00010
00011 #include <kdatastream.h>
00012
00013
00014 static const char* const LoggerDCOP_ftable[6][3] = {
00015 { "ASYNC", "logStartSync()", "logStartSync()" },
00016 { "ASYNC", "logEndSync()", "logEndSync()" },
00017 { "ASYNC", "logError(QString)", "logError(QString)" },
00018 { "ASYNC", "logMessage(QString)", "logMessage(QString)" },
00019 { "ASYNC", "logProgress(QString,int)", "logProgress(QString,int n)" },
00020 { 0, 0, 0 }
00021 };
00022 static const int LoggerDCOP_ftable_hiddens[5] = {
00023 0,
00024 0,
00025 0,
00026 0,
00027 0,
00028 };
00029
00030 bool LoggerDCOP::process(const QCString &fun, const QByteArray &data, QCString& replyType, QByteArray &replyData)
00031 {
00032 if ( fun == LoggerDCOP_ftable[0][1] ) {
00033 replyType = LoggerDCOP_ftable[0][0];
00034 logStartSync( );
00035 } else if ( fun == LoggerDCOP_ftable[1][1] ) {
00036 replyType = LoggerDCOP_ftable[1][0];
00037 logEndSync( );
00038 } else if ( fun == LoggerDCOP_ftable[2][1] ) {
00039 QString arg0;
00040 QDataStream arg( data, IO_ReadOnly );
00041 if (arg.atEnd()) return false;
00042 arg >> arg0;
00043 replyType = LoggerDCOP_ftable[2][0];
00044 logError(arg0 );
00045 } else if ( fun == LoggerDCOP_ftable[3][1] ) {
00046 QString arg0;
00047 QDataStream arg( data, IO_ReadOnly );
00048 if (arg.atEnd()) return false;
00049 arg >> arg0;
00050 replyType = LoggerDCOP_ftable[3][0];
00051 logMessage(arg0 );
00052 } else if ( fun == LoggerDCOP_ftable[4][1] ) {
00053 QString arg0;
00054 int arg1;
00055 QDataStream arg( data, IO_ReadOnly );
00056 if (arg.atEnd()) return false;
00057 arg >> arg0;
00058 if (arg.atEnd()) return false;
00059 arg >> arg1;
00060 replyType = LoggerDCOP_ftable[4][0];
00061 logProgress(arg0, arg1 );
00062 } else {
00063 return DCOPObject::process( fun, data, replyType, replyData );
00064 }
00065 return true;
00066 }
00067
00068 QCStringList LoggerDCOP::interfaces()
00069 {
00070 QCStringList ifaces = DCOPObject::interfaces();
00071 ifaces += "LoggerDCOP";
00072 return ifaces;
00073 }
00074
00075 QCStringList LoggerDCOP::functions()
00076 {
00077 QCStringList funcs = DCOPObject::functions();
00078 for ( int i = 0; LoggerDCOP_ftable[i][2]; i++ ) {
00079 if (LoggerDCOP_ftable_hiddens[i])
00080 continue;
00081 QCString func = LoggerDCOP_ftable[i][0];
00082 func += ' ';
00083 func += LoggerDCOP_ftable[i][2];
00084 funcs << func;
00085 }
00086 return funcs;
00087 }
00088
00089
|