测试
This commit is contained in:
@@ -14,10 +14,10 @@ LowerCommManager::LowerCommManager(PowerManger* pm, long myPort, long ccuPort, c
|
||||
m_udpComm = new udpComm();
|
||||
m_port = myPort;
|
||||
m_udpComm->ccuHost = cccHost;
|
||||
if(ccuPort < 0 || ccuPort > 65535) {
|
||||
throw std::invalid_argument("Invalid CCU port: " + std::to_string(ccuPort));
|
||||
}
|
||||
m_udpComm->ccuPort = static_cast<unsigned short>(ccuPort);
|
||||
m_udpComm->ccuPort = ccuPort;
|
||||
m_udpComm->udpScoket = new XPCUdpSocket(m_port);
|
||||
m_udpSocket = new XPCUdpSocket(2000);
|
||||
|
||||
}
|
||||
|
||||
LowerCommManager::~LowerCommManager(){
|
||||
@@ -33,16 +33,16 @@ LowerCommManager::~LowerCommManager(){
|
||||
}
|
||||
bool LowerCommManager::initUdpComm(){
|
||||
//设置UDP监听端口
|
||||
XPCUdpSocket* m_udpSocket = new XPCUdpSocket(m_port);
|
||||
if(m_udpSocket)
|
||||
// XPCUdpSocket* m_udpSocket = new XPCUdpSocket(m_port);
|
||||
if(m_udpComm->udpScoket)
|
||||
{
|
||||
try
|
||||
{
|
||||
m_udpSocket->vBindSocket();
|
||||
m_udpComm->udpScoket->vBindSocket();
|
||||
m_udpComm->ccuHost = m_ccuHost;
|
||||
m_udpComm->ccuPort = m_ccuPort;
|
||||
cout<<MOOS::ConsoleColours::green()<< "UDP set succeed!"<< MOOS::ConsoleColours::reset() << endl;
|
||||
m_udpComm->udpScoket = m_udpSocket;
|
||||
// m_udpComm->udpScoket = m_udpSocket;
|
||||
}
|
||||
catch(const std::exception& e)
|
||||
{
|
||||
@@ -62,8 +62,8 @@ bool LowerCommManager::initUdpComm(){
|
||||
void LowerCommManager::processPeriodicTasks() {
|
||||
// sendCcuCommand(m_pm->m_CcuColCmd);
|
||||
// sendDisSysCommand(m_pm->m_targetDisBreakerState);
|
||||
m_udpSocket->iSendMessageTo((void*) "hello", 5, m_ccuPort, m_ccuHost);
|
||||
int msg = 10;
|
||||
m_udpComm->udpScoket->iSendMessageTo((void*) msg, 6, m_udpComm->ccuPort, "127.0.0.1");
|
||||
m_udpComm->clearMsgQueue();
|
||||
}
|
||||
|
||||
|
||||
@@ -73,6 +73,7 @@ PowerManger::PowerManger()
|
||||
|
||||
//初始化UDP通信
|
||||
m_lowerCommManager = new LowerCommManager(this,IPORT,CCUPORT,CCUHOST);
|
||||
|
||||
m_lowerCommManager->initUdpComm();
|
||||
|
||||
// 初始化状态机
|
||||
@@ -328,19 +329,19 @@ XPCUdpSocket* PowerManger::setUdpScoket(long lPort)
|
||||
bool PowerManger::FsmLoop()
|
||||
{
|
||||
//状态机循环
|
||||
while (!m_FsmThread.IsQuitRequested())
|
||||
{
|
||||
// // 检查故障并触发事件
|
||||
// if(int error = checkError()) {
|
||||
// m_fsm.triggerFaultEvent(error);
|
||||
// } else {
|
||||
// // 自动状态转换由状态机内部处理
|
||||
// MOOSPause(1000);
|
||||
// }
|
||||
// while (!m_FsmThread.IsQuitRequested())
|
||||
// {
|
||||
// // // 检查故障并触发事件
|
||||
// // if(int error = checkError()) {
|
||||
// // m_fsm.triggerFaultEvent(error);
|
||||
// // } else {
|
||||
// // // 自动状态转换由状态机内部处理
|
||||
// // MOOSPause(1000);
|
||||
// // }
|
||||
|
||||
//延时1s
|
||||
usleep(1000000);
|
||||
}
|
||||
// //延时1s
|
||||
// usleep(1000000);
|
||||
// }
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ class PowerManagerFsm;
|
||||
#include <queue>
|
||||
#include "MOOS/libMOOS/Thirdparty/AppCasting/AppCastingMOOSApp.h"
|
||||
#include "MOOS/libMOOS/Utils/MOOSThread.h"
|
||||
#include "MOOS/libMOOS/Comms/XPCUdpSocket.h"
|
||||
// #include "MOOS/libMOOS/Comms/XPCUdpSocket.h"
|
||||
#include "MOOS/libMOOS/Utils/MOOSUtilityFunctions.h"
|
||||
#include "MOOS/libMOOS/Utils/ConsoleColours.h"
|
||||
#include "ccuUdpMsg.h"
|
||||
@@ -158,9 +158,10 @@ class PowerManger : public AppCastingMOOSApp
|
||||
bool getMsCmdFromJson(MSControlCmd &cmd,const string &strJson);
|
||||
|
||||
private:
|
||||
CMOOSThread m_ListenThread;
|
||||
CMOOSThread m_FsmThread;
|
||||
// CMOOSThread m_ListenThread;
|
||||
// CMOOSThread m_FsmThread;
|
||||
LowerCommManager* m_lowerCommManager;
|
||||
XPCUdpSocket* m_udpSocket;
|
||||
|
||||
// 状态机实例
|
||||
PowerManagerFsm m_fsm;
|
||||
|
||||
Reference in New Issue
Block a user