mirror of
https://github.com/g4klx/MMDVMHost.git
synced 2026-04-04 14:07:36 +00:00
Add the D-Star networking.
This commit is contained in:
parent
2f8c8fbba3
commit
bdb41fb64e
7 changed files with 466 additions and 7 deletions
|
|
@ -73,6 +73,7 @@ int main(int argc, char** argv)
|
|||
CMMDVMHost::CMMDVMHost(const std::string& confFile) :
|
||||
m_conf(confFile),
|
||||
m_modem(NULL),
|
||||
m_dstarNetwork(NULL),
|
||||
m_dmrNetwork(NULL),
|
||||
m_display(NULL),
|
||||
m_dstarEnabled(false),
|
||||
|
|
@ -116,6 +117,12 @@ int CMMDVMHost::run()
|
|||
|
||||
createDisplay();
|
||||
|
||||
if (m_dstarEnabled && m_conf.getDStarNetworkEnabled()) {
|
||||
ret = createDStarNetwork();
|
||||
if (!ret)
|
||||
return 1;
|
||||
}
|
||||
|
||||
if (m_dmrEnabled && m_conf.getDMRNetworkEnabled()) {
|
||||
ret = createDMRNetwork();
|
||||
if (!ret)
|
||||
|
|
@ -375,6 +382,11 @@ int CMMDVMHost::run()
|
|||
m_display->close();
|
||||
delete m_display;
|
||||
|
||||
if (m_dstarNetwork != NULL) {
|
||||
m_dstarNetwork->close();
|
||||
delete m_dstarNetwork;
|
||||
}
|
||||
|
||||
if (m_dmrNetwork != NULL) {
|
||||
m_dmrNetwork->close();
|
||||
delete m_dmrNetwork;
|
||||
|
|
@ -422,6 +434,35 @@ bool CMMDVMHost::createModem()
|
|||
return true;
|
||||
}
|
||||
|
||||
bool CMMDVMHost::createDStarNetwork()
|
||||
{
|
||||
if (!m_conf.getDStarNetworkEnabled())
|
||||
return false;
|
||||
|
||||
std::string gatewayAddress = m_conf.getDStarGatewayAddress();
|
||||
unsigned int gatewayPort = m_conf.getDStarGatewayPort();
|
||||
unsigned int localPort = m_conf.getDStarLocalPort();
|
||||
bool debug = m_conf.getDStarNetworkDebug();
|
||||
|
||||
LogInfo("D-Star Network Parameters");
|
||||
LogInfo(" Gateway Address: %s", gatewayAddress.c_str());
|
||||
LogInfo(" Gateway Port: %u", gatewayPort);
|
||||
LogInfo(" Local Port: %u", localPort);
|
||||
|
||||
m_dstarNetwork = new CDStarNetwork(gatewayAddress, gatewayPort, localPort, debug);
|
||||
|
||||
bool ret = m_dstarNetwork->open();
|
||||
if (!ret) {
|
||||
delete m_dstarNetwork;
|
||||
m_dstarNetwork = NULL;
|
||||
return false;
|
||||
}
|
||||
|
||||
m_dstarNetwork->enable(true);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
bool CMMDVMHost::createDMRNetwork()
|
||||
{
|
||||
if (!m_conf.getDMRNetworkEnabled())
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue