start groundwork for new TM downlink arch
This commit is contained in:
@ -75,41 +75,6 @@ ReturnValue_t PersistentTmStore::handleCommandQueue(StorageManagerIF& ipcStore,
|
||||
return returnvalue::OK;
|
||||
}
|
||||
|
||||
ReturnValue_t PersistentTmStore::passPacket(PusTmReader& reader) {
|
||||
bool inApidList = false;
|
||||
if (filter.apid) {
|
||||
auto& apidFilter = filter.apid.value();
|
||||
if (std::find(apidFilter.begin(), apidFilter.end(), reader.getApid()) != apidFilter.end()) {
|
||||
if (not filter.serviceSubservices and not filter.services) {
|
||||
return storePacket(reader);
|
||||
}
|
||||
inApidList = true;
|
||||
}
|
||||
}
|
||||
std::pair<uint8_t, uint8_t> serviceSubservice;
|
||||
serviceSubservice.first = reader.getService();
|
||||
serviceSubservice.second = reader.getSubService();
|
||||
if (filter.services) {
|
||||
auto& serviceFilter = filter.services.value();
|
||||
if (std::find(serviceFilter.begin(), serviceFilter.end(), serviceSubservice.first) !=
|
||||
serviceFilter.end()) {
|
||||
if (filter.apid and inApidList) {
|
||||
return storePacket(reader);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (filter.serviceSubservices) {
|
||||
auto& serviceSubserviceFilter = filter.serviceSubservices.value();
|
||||
if (std::find(serviceSubserviceFilter.begin(), serviceSubserviceFilter.end(),
|
||||
serviceSubservice) != serviceSubserviceFilter.end()) {
|
||||
if (filter.apid and inApidList) {
|
||||
return storePacket(reader);
|
||||
}
|
||||
}
|
||||
}
|
||||
return returnvalue::OK;
|
||||
}
|
||||
|
||||
void PersistentTmStore::dumpFrom(uint32_t fromUnixSeconds, TmFunnelBase& tmFunnel) {
|
||||
return dumpFromUpTo(fromUnixSeconds, currentTv.tv_sec, tmFunnel);
|
||||
}
|
||||
@ -182,31 +147,6 @@ bool PersistentTmStore::updateBaseDir() {
|
||||
return true;
|
||||
}
|
||||
|
||||
void PersistentTmStore::addApid(uint16_t apid) {
|
||||
if (not filter.apid) {
|
||||
filter.apid = std::vector<uint16_t>({apid});
|
||||
return;
|
||||
}
|
||||
filter.apid.value().push_back(apid);
|
||||
}
|
||||
|
||||
void PersistentTmStore::addService(uint8_t service) {
|
||||
if (not filter.services) {
|
||||
filter.services = std::vector<uint8_t>({service});
|
||||
return;
|
||||
}
|
||||
filter.services.value().push_back(service);
|
||||
}
|
||||
|
||||
void PersistentTmStore::addServiceSubservice(uint8_t service, uint8_t subservice) {
|
||||
if (not filter.serviceSubservices) {
|
||||
filter.serviceSubservices =
|
||||
std::vector<std::pair<uint8_t, uint8_t>>({std::pair(service, subservice)});
|
||||
return;
|
||||
}
|
||||
filter.serviceSubservices.value().emplace_back(service, subservice);
|
||||
}
|
||||
|
||||
void PersistentTmStore::deleteUpTo(uint32_t unixSeconds) {
|
||||
using namespace std::filesystem;
|
||||
for (auto const& file : directory_iterator(basePath)) {
|
||||
|
Reference in New Issue
Block a user