Files
clients/EffectProcess/seffectprocess.h

53 lines
1.1 KiB
C++

#ifndef SEFFECTPROCESS
#define SEFFECTPROCESS
#include <QObject>
#include <QString>
#include "sutilclass.h"
#include "sresultsender.h"
enum E_PARAM
{
E_PARAM_URL = 0,
E_PARAM_EVENT_CODE,
E_PARAM_PLATFORM_FORM,
E_PARAM_PLATFORM_NAME,
E_PARAM_START_DATE,
E_PARAM_MAX
};
struct EffectData;
class SEffectProcess:public QObject
{
Q_OBJECT
public:
SEffectProcess(const QString& _platform_name, const QString& _platform_form,
const QString& _event_code, const QString& _url, const QString& _startdate);
virtual void run(const QString& _url) = 0;
protected:
virtual State_s1_effect processData(const EffectData& _data) = 0;
bool send(const State_s1_effect& _result);
int eventCode();
protected slots:
void slotOk();
void slotError(E_ERROR_CODE _error, const QString& _msg);
void slotDataOk(const EffectData& _data);
private:
void initConnect();
protected:
QString m_pParam[E_PARAM_MAX];
std::unique_ptr<SResultSender> m_pResultSender;
};
#endif // SEFFECTPROCESS