use new sender abstraction

This commit is contained in:
2023-07-09 17:04:18 +02:00
parent 1f4e6714ba
commit 2783442f91
9 changed files with 75 additions and 50 deletions

View File

@ -61,10 +61,10 @@ default-features = false
optional = true
[dependencies.spacepackets]
version = "0.6"
# version = "0.6"
# path = "../spacepackets"
# git = "https://egit.irs.uni-stuttgart.de/rust/spacepackets.git"
# rev = "4485ed26699d32"
git = "https://egit.irs.uni-stuttgart.de/rust/spacepackets.git"
rev = "4969d6c33c6"
default-features = false
[dev-dependencies]

View File

@ -8,7 +8,6 @@ use crate::pus::{
AcceptedTc, EcssTmSender, PartialPusHandlingError, PusPacketHandlerResult,
PusPacketHandlingError, PusServiceBase, PusServiceHandler,
};
use crate::tmtc::tm_helper::SharedTmStore;
use spacepackets::ecss::event::Subservice;
use spacepackets::ecss::PusPacket;
use spacepackets::tc::PusTc;

View File

@ -206,20 +206,19 @@ mod alloc_mod {
pub mod std_mod {
use crate::pool::{ShareablePoolProvider, SharedPool, StoreAddr, StoreError};
use crate::pus::verification::{
StdVerifReporterWithSender, TcStateAccepted, TcStateToken, VerificationToken,
StdVerifReporterWithSender, TcStateAccepted, VerificationToken,
};
use crate::pus::{
EcssSender, EcssTmSender, EcssTmSenderCore, EcssTmtcErrorWithSend, GenericSendError,
PusTmWrapper,
};
use crate::tmtc::tm_helper::SharedTmStore;
use crate::SenderId;
use alloc::boxed::Box;
use alloc::vec::Vec;
use spacepackets::ecss::{PusError, SerializablePusPacket};
use spacepackets::tc::PusTc;
use spacepackets::time::cds::TimeProvider;
use spacepackets::time::{StdTimestampError, TimeWriter};
use spacepackets::time::std_mod::StdTimestampError;
use spacepackets::time::TimeWriter;
use std::cell::RefCell;
use std::format;
use std::string::String;

View File

@ -5,12 +5,11 @@ use crate::pus::{
AcceptedTc, EcssTmSender, PusPacketHandlerResult, PusPacketHandlingError, PusServiceBase,
PusServiceHandler,
};
use crate::tmtc::tm_helper::SharedTmStore;
use spacepackets::ecss::{scheduling, PusPacket};
use spacepackets::tc::PusTc;
use spacepackets::time::cds::TimeProvider;
use std::boxed::Box;
use std::sync::mpsc::{Receiver, Sender};
use std::sync::mpsc::Receiver;
/// This is a helper class for [std] environments to handle generic PUS 11 (scheduling service)
/// packets. This handler is constrained to using the [PusScheduler], but is able to process

View File

@ -4,14 +4,12 @@ use crate::pus::{
AcceptedTc, EcssTmSender, PartialPusHandlingError, PusPacketHandlerResult,
PusPacketHandlingError, PusServiceBase, PusServiceHandler, PusTmWrapper,
};
use crate::tmtc::tm_helper::SharedTmStore;
use spacepackets::ecss::PusPacket;
use spacepackets::tc::PusTc;
use spacepackets::tm::{PusTm, PusTmSecondaryHeader};
use spacepackets::SpHeader;
use std::boxed::Box;
use std::format;
use std::sync::mpsc::{Receiver, Sender};
use std::sync::mpsc::Receiver;
/// This is a helper class for [std] environments to handle generic PUS 17 (test service) packets.
/// This handler only processes ping requests and generates a ping reply for them accordingly.
@ -70,7 +68,14 @@ impl PusServiceHandler for PusService17TestHandler {
let mut reply_header = SpHeader::tm_unseg(self.psb.tm_apid, 0, 0).unwrap();
let tc_header = PusTmSecondaryHeader::new_simple(17, 2, &time_stamp);
let ping_reply = PusTm::new(&mut reply_header, tc_header, None, true);
let result = self.psb.tm_sender.send_tm(PusTmWrapper::Direct(ping_reply));
let result = self
.psb
.tm_sender
.send_tm(PusTmWrapper::Direct(ping_reply))
.map_err(PartialPusHandlingError::TmSend);
if let Err(err) = result {
partial_error = Some(err);
}
if let Some(start_token) = start_token {
if self