Allow for excluded TGs.

This commit is contained in:
Jonathan Naylor
2020-04-07 23:03:27 +01:00
parent efed75f160
commit 6b470c92a7
10 changed files with 178 additions and 66 deletions

View File

@@ -406,12 +406,16 @@ bool CConf::read()
m_dmrNetwork1SrcRewrites.push_back(rewrite);
}
} else if (::strncmp(key, "TGDynRewrite", 12U) == 0) {
std::vector<char*> p7;
char* p1 = ::strtok(value, ", ");
char* p2 = ::strtok(NULL, ", ");
char* p3 = ::strtok(NULL, ", ");
char* p4 = ::strtok(NULL, ", ");
char* p5 = ::strtok(NULL, ", ");
char* p6 = ::strtok(NULL, " \r\n");
char* p6 = ::strtok(NULL, ", \r\n");
char* p;
while ((p = ::strtok(NULL, ", \r\n")) != NULL)
p7.push_back(p);
if (p1 != NULL && p2 != NULL && p3 != NULL && p4 != NULL && p5 != NULL && p6 != NULL) {
CTGDynRewriteStruct rewrite;
rewrite.m_slot = ::atoi(p1);
@@ -420,6 +424,10 @@ bool CConf::read()
rewrite.m_statusPC = ::atoi(p4);
rewrite.m_toTG = ::atoi(p5);
rewrite.m_range = ::atoi(p6);
for (std::vector<char*>::const_iterator it = p7.cbegin(); it != p7.cend(); ++it) {
unsigned int tg = ::atoi(*it);
rewrite.m_exclTGs.push_back(tg);
}
m_dmrNetwork1TGDynRewrites.push_back(rewrite);
}
} else if (::strncmp(key, "IdRewrite", 9U) == 0) {
@@ -518,12 +526,16 @@ bool CConf::read()
m_dmrNetwork2SrcRewrites.push_back(rewrite);
}
} else if (::strncmp(key, "TGDynRewrite", 12U) == 0) {
std::vector<char*> p7;
char* p1 = ::strtok(value, ", ");
char* p2 = ::strtok(NULL, ", ");
char* p3 = ::strtok(NULL, ", ");
char* p4 = ::strtok(NULL, ", ");
char* p5 = ::strtok(NULL, ", ");
char* p6 = ::strtok(NULL, " \r\n");
char* p6 = ::strtok(NULL, ", \r\n");
char* p;
while ((p = ::strtok(NULL, ", \r\n")) != NULL)
p7.push_back(p);
if (p1 != NULL && p2 != NULL && p3 != NULL && p4 != NULL && p5 != NULL && p6 != NULL) {
CTGDynRewriteStruct rewrite;
rewrite.m_slot = ::atoi(p1);
@@ -532,6 +544,10 @@ bool CConf::read()
rewrite.m_statusPC = ::atoi(p4);
rewrite.m_toTG = ::atoi(p5);
rewrite.m_range = ::atoi(p6);
for (std::vector<char*>::const_iterator it = p7.cbegin(); it != p7.cend(); ++it) {
unsigned int tg = ::atoi(*it);
rewrite.m_exclTGs.push_back(tg);
}
m_dmrNetwork2TGDynRewrites.push_back(rewrite);
}
} else if (::strncmp(key, "IdRewrite", 9U) == 0) {
@@ -630,12 +646,16 @@ bool CConf::read()
m_dmrNetwork3SrcRewrites.push_back(rewrite);
}
} else if (::strncmp(key, "TGDynRewrite", 12U) == 0) {
std::vector<char*> p7;
char* p1 = ::strtok(value, ", ");
char* p2 = ::strtok(NULL, ", ");
char* p3 = ::strtok(NULL, ", ");
char* p4 = ::strtok(NULL, ", ");
char* p5 = ::strtok(NULL, ", ");
char* p6 = ::strtok(NULL, " \r\n");
char* p6 = ::strtok(NULL, ", \r\n");
char* p;
while ((p = ::strtok(NULL, ", \r\n")) != NULL)
p7.push_back(p);
if (p1 != NULL && p2 != NULL && p3 != NULL && p4 != NULL && p5 != NULL && p6 != NULL) {
CTGDynRewriteStruct rewrite;
rewrite.m_slot = ::atoi(p1);
@@ -644,6 +664,10 @@ bool CConf::read()
rewrite.m_statusPC = ::atoi(p4);
rewrite.m_toTG = ::atoi(p5);
rewrite.m_range = ::atoi(p6);
for (std::vector<char*>::const_iterator it = p7.cbegin(); it != p7.cend(); ++it) {
unsigned int tg = ::atoi(*it);
rewrite.m_exclTGs.push_back(tg);
}
m_dmrNetwork3TGDynRewrites.push_back(rewrite);
}
} else if (::strncmp(key, "IdRewrite", 9U) == 0) {
@@ -742,12 +766,16 @@ bool CConf::read()
m_dmrNetwork4SrcRewrites.push_back(rewrite);
}
} else if (::strncmp(key, "TGDynRewrite", 12U) == 0) {
std::vector<char*> p7;
char* p1 = ::strtok(value, ", ");
char* p2 = ::strtok(NULL, ", ");
char* p3 = ::strtok(NULL, ", ");
char* p4 = ::strtok(NULL, ", ");
char* p5 = ::strtok(NULL, ", ");
char* p6 = ::strtok(NULL, " \r\n");
char* p6 = ::strtok(NULL, ", \r\n");
char* p;
while ((p = ::strtok(NULL, ", \r\n")) != NULL)
p7.push_back(p);
if (p1 != NULL && p2 != NULL && p3 != NULL && p4 != NULL && p5 != NULL && p6 != NULL) {
CTGDynRewriteStruct rewrite;
rewrite.m_slot = ::atoi(p1);
@@ -756,6 +784,10 @@ bool CConf::read()
rewrite.m_statusPC = ::atoi(p4);
rewrite.m_toTG = ::atoi(p5);
rewrite.m_range = ::atoi(p6);
for (std::vector<char*>::const_iterator it = p7.cbegin(); it != p7.cend(); ++it) {
unsigned int tg = ::atoi(*it);
rewrite.m_exclTGs.push_back(tg);
}
m_dmrNetwork4TGDynRewrites.push_back(rewrite);
}
} else if (::strncmp(key, "IdRewrite", 9U) == 0) {
@@ -854,12 +886,16 @@ bool CConf::read()
m_dmrNetwork5SrcRewrites.push_back(rewrite);
}
} else if (::strncmp(key, "TGDynRewrite", 12U) == 0) {
std::vector<char*> p7;
char* p1 = ::strtok(value, ", ");
char* p2 = ::strtok(NULL, ", ");
char* p3 = ::strtok(NULL, ", ");
char* p4 = ::strtok(NULL, ", ");
char* p5 = ::strtok(NULL, ", ");
char* p6 = ::strtok(NULL, " \r\n");
char* p6 = ::strtok(NULL, ", \r\n");
char* p;
while ((p = ::strtok(NULL, ", \r\n")) != NULL)
p7.push_back(p);
if (p1 != NULL && p2 != NULL && p3 != NULL && p4 != NULL && p5 != NULL && p6 != NULL) {
CTGDynRewriteStruct rewrite;
rewrite.m_slot = ::atoi(p1);
@@ -868,6 +904,10 @@ bool CConf::read()
rewrite.m_statusPC = ::atoi(p4);
rewrite.m_toTG = ::atoi(p5);
rewrite.m_range = ::atoi(p6);
for (std::vector<char*>::const_iterator it = p7.cbegin(); it != p7.cend(); ++it) {
unsigned int tg = ::atoi(*it);
rewrite.m_exclTGs.push_back(tg);
}
m_dmrNetwork5TGDynRewrites.push_back(rewrite);
}
} else if (::strncmp(key, "IdRewrite", 9U) == 0) {