91 lines
1.8 KiB
C
91 lines
1.8 KiB
C
|
|
/*********************************************************************
|
|||
|
|
*
|
|||
|
|
* <EFBFBD><EFBFBD>Ȩ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>: Shanghai Baosight Software Co., Ltd.
|
|||
|
|
*
|
|||
|
|
* <EFBFBD><EFBFBD><EFBFBD><EFBFBD>:
|
|||
|
|
|
|||
|
|
* <EFBFBD>汾<EFBFBD><EFBFBD>ʷ
|
|||
|
|
* 1.0 2014-08-18 jamie <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ע<EFBFBD><EFBFBD>
|
|||
|
|
*
|
|||
|
|
*********************************************************************/
|
|||
|
|
#ifndef _PLANFACTORY_H
|
|||
|
|
#define _PLANFACTORY_H
|
|||
|
|
#include <pmg/Plan.h>
|
|||
|
|
|
|||
|
|
using namespace baosight;
|
|||
|
|
|
|||
|
|
class PLAN_TYPE
|
|||
|
|
{
|
|||
|
|
public:
|
|||
|
|
|
|||
|
|
static const int SEQ = 0;
|
|||
|
|
static const int PDI = 1;
|
|||
|
|
static const int ROLL = 2;
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
class PLAN_CASE
|
|||
|
|
{
|
|||
|
|
public:
|
|||
|
|
|
|||
|
|
static const int REQUEST = 0;
|
|||
|
|
static const int RECEIVE = 1;
|
|||
|
|
static const int REVOKE = 2;
|
|||
|
|
static const int CREATE = 3;
|
|||
|
|
static const int ADJUST = 4;
|
|||
|
|
static const int ANSWER = 5;
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
static string CASE_INFO[10] = { "request","receive","revoke","create","adjust","answer",};
|
|||
|
|
|
|||
|
|
class PlanFactory
|
|||
|
|
{
|
|||
|
|
private:
|
|||
|
|
PlanFactory();
|
|||
|
|
virtual ~PlanFactory();
|
|||
|
|
|
|||
|
|
public:
|
|||
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD>ƻ<EFBFBD>˳<EFBFBD><CBB3><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
|
|||
|
|
virtual int planSeq(int caseNo,int eventNo,const Ice::ByteSeq& seq);
|
|||
|
|
|
|||
|
|
//<2F><><EFBFBD><EFBFBD>ԭʼ<D4AD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
|
|||
|
|
virtual int planPDI(int caseNo,int eventNo,const Ice::ByteSeq& seq);
|
|||
|
|
|
|||
|
|
//<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD>
|
|||
|
|
virtual int planRoll(int caseNo,int eventNo,const Ice::ByteSeq& seq);
|
|||
|
|
|
|||
|
|
public:
|
|||
|
|
//<2F>ƻ<EFBFBD><C6BB><EFBFBD>next
|
|||
|
|
virtual int planNext(int eventNo,const Ice::ByteSeq& seq);
|
|||
|
|
//<2F>ƻ<EFBFBD>ɾ<EFBFBD><C9BE>
|
|||
|
|
virtual int planDel(int eventNo,const Ice::ByteSeq& seq);
|
|||
|
|
//ִ<><D6B4>sql
|
|||
|
|
virtual int exesql(int eventNo,const Ice::ByteSeq& seq);
|
|||
|
|
//Ĭ<><C4AC><EFBFBD><EFBFBD>Ϣ
|
|||
|
|
virtual int defaultMsg(int eventNo,const Ice::ByteSeq& seq);
|
|||
|
|
|
|||
|
|
public:
|
|||
|
|
static PlanFactory* GetInstancePtr();
|
|||
|
|
static PlanFactory& GetInstance();
|
|||
|
|
static bool release(void);
|
|||
|
|
|
|||
|
|
private:
|
|||
|
|
// <20><><EFBFBD><EFBFBD>: <20>ƻ<EFBFBD><C6BB><EFBFBD><EFBFBD>ܷ<EFBFBD><DCB7><EFBFBD>
|
|||
|
|
virtual int dispatch(int planType,int caseNo,int eventNo,const Ice::ByteSeq& seq);
|
|||
|
|
|
|||
|
|
private:
|
|||
|
|
static PlanFactory* mp_singleton;
|
|||
|
|
|
|||
|
|
private:
|
|||
|
|
map<int,Plan*> mplan;
|
|||
|
|
|
|||
|
|
private:
|
|||
|
|
DataAccess* mp_dataAccess;
|
|||
|
|
AutoTele* mp_tele;
|
|||
|
|
char almsg[512];
|
|||
|
|
|
|||
|
|
};
|
|||
|
|
|
|||
|
|
|
|||
|
|
|
|||
|
|
#endif
|