mirror of
https://github.com/g4klx/DMRGateway
synced 2025-12-21 21:45:39 +08:00
Clean up the code.
This commit is contained in:
@@ -19,6 +19,7 @@
|
|||||||
#include "DMRGateway.h"
|
#include "DMRGateway.h"
|
||||||
#include "Version.h"
|
#include "Version.h"
|
||||||
#include "StopWatch.h"
|
#include "StopWatch.h"
|
||||||
|
#include "Rewrite.h"
|
||||||
#include "Thread.h"
|
#include "Thread.h"
|
||||||
#include "Log.h"
|
#include "Log.h"
|
||||||
|
|
||||||
@@ -114,9 +115,7 @@ m_conf(confFile),
|
|||||||
m_mmdvm(NULL),
|
m_mmdvm(NULL),
|
||||||
m_dmrNetwork(NULL),
|
m_dmrNetwork(NULL),
|
||||||
m_xlxNetwork(NULL),
|
m_xlxNetwork(NULL),
|
||||||
m_reflector(0U),
|
m_reflector(0U)
|
||||||
m_rptRewrite(),
|
|
||||||
m_xlxRewrite()
|
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -237,8 +236,8 @@ int CDMRGateway::run()
|
|||||||
LogInfo("XLX Local TG: %u", xlxTG);
|
LogInfo("XLX Local TG: %u", xlxTG);
|
||||||
LogInfo("Timeout: %us", timeout);
|
LogInfo("Timeout: %us", timeout);
|
||||||
|
|
||||||
m_rptRewrite.setParams(xlxSlot, xlxTG);
|
CRewrite rptRewrite(xlxSlot, xlxTG);
|
||||||
m_xlxRewrite.setParams(XLX_SLOT, XLX_TG);
|
CRewrite xlxRewrite(XLX_SLOT, XLX_TG);
|
||||||
|
|
||||||
ret = createDMRNetwork();
|
ret = createDMRNetwork();
|
||||||
if (!ret)
|
if (!ret)
|
||||||
@@ -268,7 +267,7 @@ int CDMRGateway::run()
|
|||||||
unsigned int id = data.getDstId();
|
unsigned int id = data.getDstId();
|
||||||
|
|
||||||
if (flco == FLCO_GROUP && id == xlxTG) {
|
if (flco == FLCO_GROUP && id == xlxTG) {
|
||||||
m_xlxRewrite.process(data);
|
xlxRewrite.process(data);
|
||||||
m_xlxNetwork->write(data);
|
m_xlxNetwork->write(data);
|
||||||
status = DMRGWS_REFLECTOR;
|
status = DMRGWS_REFLECTOR;
|
||||||
timer.start();
|
timer.start();
|
||||||
@@ -279,7 +278,7 @@ int CDMRGateway::run()
|
|||||||
m_reflector = reflector;
|
m_reflector = reflector;
|
||||||
}
|
}
|
||||||
|
|
||||||
m_xlxRewrite.process(data);
|
xlxRewrite.process(data);
|
||||||
m_xlxNetwork->write(data);
|
m_xlxNetwork->write(data);
|
||||||
status = DMRGWS_REFLECTOR;
|
status = DMRGWS_REFLECTOR;
|
||||||
timer.start();
|
timer.start();
|
||||||
@@ -298,7 +297,7 @@ int CDMRGateway::run()
|
|||||||
if (status == DMRGWS_NONE || status == DMRGWS_REFLECTOR) {
|
if (status == DMRGWS_NONE || status == DMRGWS_REFLECTOR) {
|
||||||
unsigned int slotNo = data.getSlotNo();
|
unsigned int slotNo = data.getSlotNo();
|
||||||
if (slotNo == XLX_SLOT) {
|
if (slotNo == XLX_SLOT) {
|
||||||
m_rptRewrite.process(data);
|
rptRewrite.process(data);
|
||||||
m_mmdvm->write(data);
|
m_mmdvm->write(data);
|
||||||
status = DMRGWS_REFLECTOR;
|
status = DMRGWS_REFLECTOR;
|
||||||
timer.start();
|
timer.start();
|
||||||
@@ -310,7 +309,7 @@ int CDMRGateway::run()
|
|||||||
if (ret) {
|
if (ret) {
|
||||||
unsigned int slotNo = data.getSlotNo();
|
unsigned int slotNo = data.getSlotNo();
|
||||||
if (slotNo == xlxSlot) {
|
if (slotNo == xlxSlot) {
|
||||||
// Stop BM from using the same TG as XLX
|
// Stop the DMR network from using the same TG as XLX
|
||||||
unsigned int dstId = data.getDstId();
|
unsigned int dstId = data.getDstId();
|
||||||
FLCO flco = data.getFLCO();
|
FLCO flco = data.getFLCO();
|
||||||
if (flco != FLCO_GROUP || dstId != xlxTG) {
|
if (flco != FLCO_GROUP || dstId != xlxTG) {
|
||||||
|
|||||||
@@ -21,7 +21,6 @@
|
|||||||
|
|
||||||
#include "MMDVMNetwork.h"
|
#include "MMDVMNetwork.h"
|
||||||
#include "DMRNetwork.h"
|
#include "DMRNetwork.h"
|
||||||
#include "Rewrite.h"
|
|
||||||
#include "Conf.h"
|
#include "Conf.h"
|
||||||
|
|
||||||
#include <string>
|
#include <string>
|
||||||
@@ -40,8 +39,6 @@ private:
|
|||||||
CDMRNetwork* m_dmrNetwork;
|
CDMRNetwork* m_dmrNetwork;
|
||||||
CDMRNetwork* m_xlxNetwork;
|
CDMRNetwork* m_xlxNetwork;
|
||||||
unsigned int m_reflector;
|
unsigned int m_reflector;
|
||||||
CRewrite m_rptRewrite;
|
|
||||||
CRewrite m_xlxRewrite;
|
|
||||||
|
|
||||||
bool createMMDVM();
|
bool createMMDVM();
|
||||||
bool createDMRNetwork();
|
bool createDMRNetwork();
|
||||||
|
|||||||
15
Rewrite.cpp
15
Rewrite.cpp
@@ -22,25 +22,22 @@
|
|||||||
#include "DMRFullLC.h"
|
#include "DMRFullLC.h"
|
||||||
|
|
||||||
#include <cstdio>
|
#include <cstdio>
|
||||||
|
#include <cassert>
|
||||||
|
|
||||||
CRewrite::CRewrite() :
|
CRewrite::CRewrite(unsigned int slot, unsigned int tg) :
|
||||||
m_slot(0U),
|
m_slot(slot),
|
||||||
m_tg(0U),
|
m_tg(tg),
|
||||||
m_lc(NULL),
|
m_lc(NULL),
|
||||||
m_embeddedLC()
|
m_embeddedLC()
|
||||||
{
|
{
|
||||||
|
assert(slot == 1U || slot == 2U);
|
||||||
|
assert(tg < 16U);
|
||||||
}
|
}
|
||||||
|
|
||||||
CRewrite::~CRewrite()
|
CRewrite::~CRewrite()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
void CRewrite::setParams(unsigned int slot, unsigned int tg)
|
|
||||||
{
|
|
||||||
m_slot = slot;
|
|
||||||
m_tg = tg;
|
|
||||||
}
|
|
||||||
|
|
||||||
void CRewrite::process(CDMRData& data)
|
void CRewrite::process(CDMRData& data)
|
||||||
{
|
{
|
||||||
data.setSlotNo(m_slot);
|
data.setSlotNo(m_slot);
|
||||||
|
|||||||
@@ -25,11 +25,9 @@
|
|||||||
|
|
||||||
class CRewrite {
|
class CRewrite {
|
||||||
public:
|
public:
|
||||||
CRewrite();
|
CRewrite(unsigned int slot, unsigned int tg);
|
||||||
~CRewrite();
|
~CRewrite();
|
||||||
|
|
||||||
void setParams(unsigned int slot, unsigned int tg);
|
|
||||||
|
|
||||||
void process(CDMRData& data);
|
void process(CDMRData& data);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
|||||||
Reference in New Issue
Block a user