Miscellanous fixes
This commit is contained in:
parent
f706404e6e
commit
cc1a4b9493
6 changed files with 15 additions and 11 deletions
|
@ -31,7 +31,7 @@
|
|||
|
||||
namespace MMSS {
|
||||
|
||||
void dispatch(std::shared_ptr<packet_t> packet) {
|
||||
void dispatch(const std::shared_ptr<packet_t> &packet) {
|
||||
auto source = packet->source.lock();
|
||||
auto dest = packet->dest.lock();
|
||||
if (!source || !dest)
|
||||
|
@ -44,7 +44,7 @@ void dispatch(std::shared_ptr<packet_t> packet) {
|
|||
node->proto->handle_packet(node.get(), node->ctx, dest.get(), &source->address, packet->data.get(), packet->len);
|
||||
}
|
||||
|
||||
void add_iface(std::shared_ptr<node_t> node, std::shared_ptr<network_t> net, const std::string &name, const gmrf_addr_t *address) {
|
||||
void add_iface(const std::shared_ptr<node_t> &node, const std::shared_ptr<network_t> &net, const std::string &name, const gmrf_addr_t *address) {
|
||||
std::shared_ptr<iface_t> iface = iface_t::create();
|
||||
|
||||
iface->name = name;
|
||||
|
@ -59,7 +59,7 @@ void add_iface(std::shared_ptr<node_t> node, std::shared_ptr<network_t> net, con
|
|||
node->proto->add_iface(node.get(), node->ctx, iface.get());
|
||||
}
|
||||
|
||||
void enqueue(context_t *mmss, std::shared_ptr<iface_t> source, std::shared_ptr<iface_t> dest, const void *data, size_t len) {
|
||||
void enqueue(context_t *mmss, const std::shared_ptr<iface_t> &source, const std::shared_ptr<iface_t> &dest, const void *data, size_t len) {
|
||||
std::shared_ptr<packet_t> packet = std::make_shared<packet_t>();
|
||||
|
||||
packet->sent = mmss->now;
|
||||
|
|
|
@ -74,8 +74,8 @@ void main(int argc, char *argv[]) {
|
|||
std::shared_ptr<network_t> net0 = std::make_shared<network_t>();
|
||||
std::shared_ptr<network_t> net1 = std::make_shared<network_t>();
|
||||
|
||||
*net0 = (network_t){ .mtu = 1500 };
|
||||
*net1 = (network_t){ .mtu = 1500 };
|
||||
net0->mtu = 1500;
|
||||
net1->mtu = 1500;
|
||||
|
||||
std::shared_ptr<node_t> node1 = node_t::create(&mmss, "node1", 1, proto);
|
||||
std::shared_ptr<node_t> node2 = node_t::create(&mmss, "node2", 2, proto);
|
||||
|
|
|
@ -138,13 +138,13 @@ const protocol_t* load_protocol(const char *module);
|
|||
|
||||
bool read_config(context_t *mmss, config_t *conf, const char *filename);
|
||||
|
||||
void add_iface(std::shared_ptr<node_t> node, std::shared_ptr<network_t> net, const std::string &name, const gmrf_addr_t *address);
|
||||
void add_iface(const std::shared_ptr<node_t> &node, const std::shared_ptr<network_t> &net, const std::string &name, const gmrf_addr_t *address);
|
||||
|
||||
uint64_t now(const context_t *mmss);
|
||||
|
||||
void dispatch(std::shared_ptr<packet_t> packet);
|
||||
void run_scheduled(std::shared_ptr<scheduled_t> scheduled);
|
||||
void enqueue(context_t *mmss, std::shared_ptr<iface_t> source, std::shared_ptr<iface_t> dest, const void *data, size_t len);
|
||||
void dispatch(const std::shared_ptr<packet_t> &packet);
|
||||
void run_scheduled(const std::shared_ptr<scheduled_t> &scheduled);
|
||||
void enqueue(context_t *mmss, const std::shared_ptr<iface_t> &source, const std::shared_ptr<iface_t> &dest, const void *data, size_t len);
|
||||
|
||||
void logf(context_t *mmss, int priority, const char *format, ...);
|
||||
|
||||
|
|
|
@ -29,6 +29,7 @@
|
|||
|
||||
#include "types.hpp"
|
||||
|
||||
#include <deque>
|
||||
#include <memory>
|
||||
#include <queue>
|
||||
|
||||
|
@ -48,7 +49,7 @@ template<typename T> class timeout_queue_t {
|
|||
|
||||
context_t *mmss;
|
||||
|
||||
std::priority_queue<element_t> queue;
|
||||
std::priority_queue<element_t, std::deque<element_t>> queue;
|
||||
|
||||
public:
|
||||
timeout_queue_t(context_t *mmss0) : mmss(mmss0) {}
|
||||
|
|
|
@ -29,7 +29,7 @@
|
|||
|
||||
namespace MMSS {
|
||||
|
||||
void run_scheduled(std::shared_ptr<scheduled_t> scheduled) {
|
||||
void run_scheduled(const std::shared_ptr<scheduled_t> &scheduled) {
|
||||
scheduled->f(scheduled->node.get(), scheduled->node->ctx, scheduled->arg);
|
||||
}
|
||||
|
||||
|
|
|
@ -51,6 +51,9 @@ typedef ::mmss_protocol_t protocol_t;
|
|||
typedef ::gmrf_t node_t;
|
||||
typedef ::gmrf_iface_t iface_t;
|
||||
|
||||
|
||||
uint64_t now(const context_t *mmss);
|
||||
|
||||
}
|
||||
|
||||
#endif /* _GMRF_MMSS_TYPES_HPP_ */
|
||||
|
|
Reference in a new issue