#pragma once
|
#include "Configuration.h"
|
#include "PLC.h"
|
#include <map>
|
|
|
class CModel
|
{
|
public:
|
CModel();
|
~CModel();
|
|
public:
|
IObservable* getObservable();
|
void setWorkDir(const char* pszWorkDir);
|
int init();
|
int term();
|
void onTimer(UINT nTimerid);
|
std::map<std::string, CPLC*>& gtPlcMap();
|
int addPlc(const char* pszName, const char* pszIp, const unsigned int port);
|
int removePlc(const char* pszName);
|
|
public:
|
int notify(int code);
|
int notifyPtr(int code, void* ptr = NULL);
|
int notifyObj(int code, IRxObject* pObj);
|
int notifyObjAndPtr(int code, IRxObject* pObj, void* ptr);
|
int notifyObjAndInt(int code, IRxObject* pObj1, IRxObject* pObj2, int exCode);
|
int notifyInt(int code, int exCode);
|
int notifyInt2(int code, int exCode, int exCode2);
|
int notifyDouble(int code, double dValue);
|
int notifyText(int code, const char* pszText);
|
int notifyPtrAndInt(int code, void* ptr1, void* ptr2, int exCode);
|
int notifyTextAndInt(int code, const char* pszText, int exCode);
|
int notifyMesMsg(int code, int stream, int function, const char* pszText);
|
|
public:
|
CConfiguration m_configuration;
|
|
|
private:
|
IObservable* m_pObservable;
|
IObservableEmitter* m_pObservableEmitter;
|
CString m_strWorkDir;
|
std::map<std::string, CPLC*> m_mapPlc;
|
|
private:
|
int m_nTimerID;
|
};
|