Files
dofs/docs/index.json

3899 lines
109 KiB
JSON

{
"version": 1,
"symbols": [
{
"kind": "free_function",
"qualified": "dofs::log_error",
"signature": "void log_error(std::string_view type, std::string_view message, std::optional<uint64_t> timestamp = std::nullopt) noexcept;",
"file": "src/core/error.h",
"line": 13,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "macro",
"qualified": "DOFS_ERROR",
"signature": "#define DOFS_ERROR(TYPE, MSG)",
"file": "src/core/error.h",
"line": 34,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "macro",
"qualified": "DOFS_ERROR_T",
"signature": "#define DOFS_ERROR_T(TYPE, MSG, TS)",
"file": "src/core/error.h",
"line": 37,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "macro",
"qualified": "DOFS_ERROR_ST",
"signature": "#define DOFS_ERROR_ST(TYPE, SRC, MSG, TS)",
"file": "src/core/error.h",
"line": 40,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "macro",
"qualified": "DOFS_SHOW",
"signature": "#define DOFS_SHOW(VAR)",
"file": "src/core/error.h",
"line": 43,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "macro",
"qualified": "DOFS_EVAL",
"signature": "#define DOFS_EVAL(EXPR)",
"file": "src/core/error.h",
"line": 46,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "macro",
"qualified": "FORMAT",
"signature": "#define FORMAT(VAR)",
"file": "src/core/error.h",
"line": 49,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Host::Host",
"signature": "Host(Simulator *const sim, NodeId id) noexcept",
"file": "src/core/host.h",
"line": 16,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "dtor",
"qualified": "Host::~Host",
"signature": "virtual ~Host() = default",
"file": "src/core/host.h",
"line": 17,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Host::nic",
"signature": "NetworkNic *nic() const noexcept",
"file": "src/core/host.h",
"line": 20,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::attach_nic",
"signature": "void attach_nic(NetworkNic *nic) noexcept;",
"file": "src/core/host.h",
"line": 23,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Host::attach_nic",
"signature": "void attach_nic(NetworkNic *nic) noexcept",
"file": "src/core/host.h",
"line": 25,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Host::detach_nic",
"signature": "void detach_nic(NetworkNic *nic) noexcept",
"file": "src/core/host.h",
"line": 26,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::detach_nic",
"signature": "void detach_nic(NetworkNic *nic) noexcept;",
"file": "src/core/host.h",
"line": 26,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Host::recv_flow",
"signature": "virtual void recv_flow(NodeId src, FlowId flow, FlowPriority priority, Bytes flow_size) = 0",
"file": "src/core/host.h",
"line": 29,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Host::recv_frame",
"signature": "virtual void recv_frame(const Packet &frame) = 0",
"file": "src/core/host.h",
"line": 35,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Host::recv_mgmt_msg",
"signature": "virtual void recv_mgmt_msg(std::unique_ptr<struct MgmtMsg> msg) = 0",
"file": "src/core/host.h",
"line": 37,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Host::Host",
"signature": "Host(const Host &) = delete",
"file": "src/core/host.h",
"line": 39,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Host::operator=",
"signature": "Host &operator=(const Host &) = delete",
"file": "src/core/host.h",
"line": 40,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Logger::Logger",
"signature": "Logger(std::string_view path, bool append) noexcept",
"file": "src/core/logger.h",
"line": 21,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "dtor",
"qualified": "Logger::~Logger",
"signature": "~Logger() noexcept",
"file": "src/core/logger.h",
"line": 22,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Logger::Logger",
"signature": "Logger(const Logger &) = delete",
"file": "src/core/logger.h",
"line": 24,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Logger::operator=",
"signature": "Logger &operator=(const Logger &) = delete",
"file": "src/core/logger.h",
"line": 25,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Logger::Logger",
"signature": "Logger(Logger &&) = delete",
"file": "src/core/logger.h",
"line": 26,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Logger::operator=",
"signature": "Logger &operator=(Logger &&) = delete",
"file": "src/core/logger.h",
"line": 27,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Logger::is_open",
"signature": "bool is_open() const noexcept",
"file": "src/core/logger.h",
"line": 29,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::write_line",
"signature": "void write_line(std::string_view line) noexcept;",
"file": "src/core/logger.h",
"line": 32,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Logger::write_line",
"signature": "void write_line(std::string_view line) noexcept",
"file": "src/core/logger.h",
"line": 33,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::flush",
"signature": "void flush() noexcept;",
"file": "src/core/logger.h",
"line": 34,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Logger::flush",
"signature": "void flush() noexcept",
"file": "src/core/logger.h",
"line": 35,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Logger::close",
"signature": "void close() noexcept",
"file": "src/core/logger.h",
"line": 36,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::close",
"signature": "void close() noexcept;",
"file": "src/core/logger.h",
"line": 36,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Logger::path",
"signature": "std::string_view path() const noexcept",
"file": "src/core/logger.h",
"line": 38,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "open",
"signature": "private: bool open(std::ios::openmode mode) noexcept;",
"file": "src/core/logger.h",
"line": 41,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Node::Node",
"signature": "Node(Simulator *const sim, NodeId id, NodeType type) noexcept",
"file": "src/core/node.h",
"line": 14,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "dtor",
"qualified": "Node::~Node",
"signature": "virtual ~Node() = default",
"file": "src/core/node.h",
"line": 15,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Node::id",
"signature": "NodeId id() const noexcept",
"file": "src/core/node.h",
"line": 17,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Node::status",
"signature": "NodeStatus status() const noexcept",
"file": "src/core/node.h",
"line": 18,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Node::type",
"signature": "NodeType type() const noexcept",
"file": "src/core/node.h",
"line": 19,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Node::set_status",
"signature": "void set_status(NodeStatus s) noexcept",
"file": "src/core/node.h",
"line": 21,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Node::boot",
"signature": "void boot(Time boottime_ns)",
"file": "src/core/node.h",
"line": 23,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Node::reboot",
"signature": "void reboot(Time boottime_ns)",
"file": "src/core/node.h",
"line": 24,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Node::Node",
"signature": "Node(const Node &) = delete",
"file": "src/core/node.h",
"line": 26,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Node::operator=",
"signature": "Node &operator=(const Node &) = delete",
"file": "src/core/node.h",
"line": 27,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Rng::Rng",
"signature": "explicit Rng(seed_type seed = default_seed()) noexcept : _eng(seed)",
"file": "src/core/rng.h",
"line": 19,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::seed",
"signature": "void seed(seed_type s) noexcept{",
"file": "src/core/rng.h",
"line": 21,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Rng::seed",
"signature": "void seed(seed_type s) noexcept",
"file": "src/core/rng.h",
"line": 22,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "uniform01",
"signature": "double uniform01(){",
"file": "src/core/rng.h",
"line": 25,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Rng::uniform01",
"signature": "double uniform01()",
"file": "src/core/rng.h",
"line": 27,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Rng::uniform_range",
"signature": "template<typename Int, typename = std::enable_if_t<std::is_integral<Int>::value>> Int uniform_range(Int lo_inclusive, Int hi_exclusive)",
"file": "src/core/rng.h",
"line": 34,
"static": false,
"const": false,
"ref_qual": "",
"template_params": "template<typename Int,\n typename = std::enable_if_t<std::is_integral<Int>::value>>"
},
{
"kind": "free_function",
"qualified": "uniform_range",
"signature": "Int uniform_range(Int lo_inclusive, Int hi_exclusive){",
"file": "src/core/rng.h",
"line": 34,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Rng::uniform_range",
"signature": "template<typename Int, typename = std::enable_if_t<std::is_integral<Int>::value>> Int uniform_range(Int hi_exclusive)",
"file": "src/core/rng.h",
"line": 41,
"static": false,
"const": false,
"ref_qual": "",
"template_params": "template<typename Int,\n typename = std::enable_if_t<std::is_integral<Int>::value>>"
},
{
"kind": "free_function",
"qualified": "uniform_range",
"signature": "Int uniform_range(Int hi_exclusive){",
"file": "src/core/rng.h",
"line": 41,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "uniform_range",
"signature": "double uniform_range(double lo_inclusive, double hi_exclusive){",
"file": "src/core/rng.h",
"line": 44,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Rng::uniform_range",
"signature": "double uniform_range(double lo_inclusive, double hi_exclusive)",
"file": "src/core/rng.h",
"line": 45,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "poisson",
"signature": "std::uint64_t poisson(double lambda){",
"file": "src/core/rng.h",
"line": 49,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Rng::poisson",
"signature": "std::uint64_t poisson(double lambda)",
"file": "src/core/rng.h",
"line": 50,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "choose_weighted",
"signature": "template <typename T> T choose_weighted(const std::vector<std::pair<double, T>> &items){",
"file": "src/core/rng.h",
"line": 54,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Rng::choose_weighted",
"signature": "template<typename T> T choose_weighted(const std::vector<std::pair<double, T>> &items)",
"file": "src/core/rng.h",
"line": 56,
"static": false,
"const": false,
"ref_qual": "",
"template_params": "template<typename T>"
},
{
"kind": "free_function",
"qualified": "choose_weighted_impl",
"signature": "return choose_weighted_impl(items.begin(), items.end());",
"file": "src/core/rng.h",
"line": 57,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "choose_weighted",
"signature": "template <typename T> T choose_weighted(std::initializer_list<std::pair<double, T>> items){",
"file": "src/core/rng.h",
"line": 59,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Rng::choose_weighted",
"signature": "template<typename T> T choose_weighted(std::initializer_list<std::pair<double, T>> items)",
"file": "src/core/rng.h",
"line": 61,
"static": false,
"const": false,
"ref_qual": "",
"template_params": "template<typename T>"
},
{
"kind": "free_function",
"qualified": "choose_weighted_impl",
"signature": "return choose_weighted_impl(items.begin(), items.end());",
"file": "src/core/rng.h",
"line": 62,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "default_seed",
"signature": "static constexpr seed_type default_seed() noexcept{",
"file": "src/core/rng.h",
"line": 66,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "choose_weighted_impl",
"signature": "template <typename Iter> auto choose_weighted_impl(Iter first, Iter last) -> typename std::iterator_traits<Iter>::value_type::second_type{",
"file": "src/core/rng.h",
"line": 71,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::Cmp::operator",
"signature": "bool operator()(const Item &a, const Item &b) const noexcept",
"file": "src/core/simulator.h",
"line": 43,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Simulator::Simulator",
"signature": "Simulator() = default",
"file": "src/core/simulator.h",
"line": 58,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::create_simulator",
"signature": "static std::pair<InstanceId, Simulator *> create_simulator(InstanceId id)",
"file": "src/core/simulator.h",
"line": 60,
"static": true,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::get_simulator",
"signature": "static Simulator *get_simulator(InstanceId id) noexcept",
"file": "src/core/simulator.h",
"line": 61,
"static": true,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::now",
"signature": "Time now() const noexcept",
"file": "src/core/simulator.h",
"line": 63,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::schedule_at",
"signature": "template<class F, class... Args> EventId schedule_at(Time abs_time, F&&f, Args&&... args)",
"file": "src/core/simulator.h",
"line": 66,
"static": false,
"const": false,
"ref_qual": "",
"template_params": "template<class F, class... Args>"
},
{
"kind": "method",
"qualified": "Simulator::schedule_after",
"signature": "template<class F, class... Args> EventId schedule_after(Time delay, F&&f, Args&&... args)",
"file": "src/core/simulator.h",
"line": 84,
"static": false,
"const": false,
"ref_qual": "",
"template_params": "template<class F, class... Args>"
},
{
"kind": "free_function",
"qualified": "cancel",
"signature": "bool cancel(EventId id);",
"file": "src/core/simulator.h",
"line": 88,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::cancel",
"signature": "bool cancel(EventId id)",
"file": "src/core/simulator.h",
"line": 89,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::run_next",
"signature": "bool run_next()",
"file": "src/core/simulator.h",
"line": 90,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "run_next",
"signature": "bool run_next();",
"file": "src/core/simulator.h",
"line": 90,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::run_until",
"signature": "void run_until(Time end_time)",
"file": "src/core/simulator.h",
"line": 91,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "run_until",
"signature": "void run_until(Time end_time);",
"file": "src/core/simulator.h",
"line": 91,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "lock",
"signature": "void lock() noexcept;",
"file": "src/core/simulator.h",
"line": 92,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::lock",
"signature": "void lock() noexcept",
"file": "src/core/simulator.h",
"line": 95,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::is_locked",
"signature": "bool is_locked() const noexcept",
"file": "src/core/simulator.h",
"line": 96,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "flush_after",
"signature": "void flush_after(Time grace) noexcept;",
"file": "src/core/simulator.h",
"line": 99,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::flush_after",
"signature": "void flush_after(Time grace) noexcept",
"file": "src/core/simulator.h",
"line": 100,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::create_rng",
"signature": "Rng *create_rng(std::uint64_t seed)",
"file": "src/core/simulator.h",
"line": 103,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::get_rng",
"signature": "Rng *get_rng() noexcept",
"file": "src/core/simulator.h",
"line": 104,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::get_rng",
"signature": "Rng const *get_rng() const noexcept",
"file": "src/core/simulator.h",
"line": 105,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::create_link",
"signature": "std::pair<LinkId, Link *> create_link(NetworkNode *a, PortId a_port, NetworkNode *b, PortId b_port, Time latency, double bandwidth_gbps)",
"file": "src/core/simulator.h",
"line": 107,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::get_link",
"signature": "Link *get_link(LinkId id) noexcept",
"file": "src/core/simulator.h",
"line": 112,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Simulator::get_link",
"signature": "Link const *get_link(LinkId id) const noexcept",
"file": "src/core/simulator.h",
"line": 113,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Time::Time",
"signature": "constexpr Time() : _nsec(0)",
"file": "src/core/time.h",
"line": 14,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Time::Time",
"signature": "explicit constexpr Time(rep ns) : _nsec(ns)",
"file": "src/core/time.h",
"line": 15,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "from_ns",
"signature": "static constexpr Time from_ns(rep ns) noexcept{",
"file": "src/core/time.h",
"line": 16,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Time::from_ns",
"signature": "static constexpr Time from_ns(rep ns) noexcept",
"file": "src/core/time.h",
"line": 18,
"static": true,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "Time",
"signature": "return Time(ns);",
"file": "src/core/time.h",
"line": 19,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Time::from_us",
"signature": "static constexpr Time from_us(rep us) noexcept",
"file": "src/core/time.h",
"line": 21,
"static": true,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "from_us",
"signature": "static constexpr Time from_us(rep us) noexcept{",
"file": "src/core/time.h",
"line": 21,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "Time",
"signature": "return Time(us * 1000ULL);",
"file": "src/core/time.h",
"line": 22,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Time::from_ms",
"signature": "static constexpr Time from_ms(rep ms) noexcept",
"file": "src/core/time.h",
"line": 24,
"static": true,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "from_ms",
"signature": "static constexpr Time from_ms(rep ms) noexcept{",
"file": "src/core/time.h",
"line": 24,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "Time",
"signature": "return Time(ms * 1000ULL * 1000ULL);",
"file": "src/core/time.h",
"line": 25,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Time::from_s",
"signature": "static constexpr Time from_s (rep s ) noexcept",
"file": "src/core/time.h",
"line": 27,
"static": true,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "from_s",
"signature": "static constexpr Time from_s (rep s ) noexcept{",
"file": "src/core/time.h",
"line": 27,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "Time",
"signature": "return Time(s * 1000ULL * 1000ULL * 1000ULL);",
"file": "src/core/time.h",
"line": 28,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Time::ns",
"signature": "constexpr rep ns() const noexcept",
"file": "src/core/time.h",
"line": 32,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Time::count",
"signature": "constexpr rep count() const noexcept",
"file": "src/core/time.h",
"line": 35,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "us_to_ns",
"signature": "static constexpr rep us_to_ns(rep us) noexcept{",
"file": "src/core/time.h",
"line": 38,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Time::us_to_ns",
"signature": "static constexpr rep us_to_ns(rep us) noexcept",
"file": "src/core/time.h",
"line": 40,
"static": true,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Time::ms_to_ns",
"signature": "static constexpr rep ms_to_ns(rep ms) noexcept",
"file": "src/core/time.h",
"line": 43,
"static": true,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "ms_to_ns",
"signature": "static constexpr rep ms_to_ns(rep ms) noexcept{",
"file": "src/core/time.h",
"line": 43,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "Time",
"signature": "return Time(a._nsec + b._nsec);",
"file": "src/core/time.h",
"line": 87,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "Time",
"signature": "return Time(a._nsec * b._nsec);",
"file": "src/core/time.h",
"line": 91,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "safe_sub",
"signature": "return safe_sub(a, b);",
"file": "src/core/time.h",
"line": 95,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "safe_sub",
"signature": "friend constexpr std::optional<Time> safe_sub(Time a, Time b) noexcept{",
"file": "src/core/time.h",
"line": 97,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "Time",
"signature": "return Time(a._nsec - b._nsec);",
"file": "src/core/time.h",
"line": 102,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "Time",
"signature": "return Time(this->_nsec - t._nsec);",
"file": "src/core/time.h",
"line": 107,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "_ns",
"signature": "constexpr Time operator _ns(unsigned long long v) noexcept{",
"file": "src/core/time.h",
"line": 112,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "_us",
"signature": "constexpr Time operator _us(unsigned long long v) noexcept{",
"file": "src/core/time.h",
"line": 117,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "_ms",
"signature": "constexpr Time operator _ms(unsigned long long v) noexcept{",
"file": "src/core/time.h",
"line": 120,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "_s",
"signature": "constexpr Time operator _s (unsigned long long v) noexcept{",
"file": "src/core/time.h",
"line": 123,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Timer::Timer",
"signature": "Timer()",
"file": "src/core/timer.h",
"line": 11,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::init",
"signature": "void init() noexcept{",
"file": "src/core/timer.h",
"line": 14,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Timer::init",
"signature": "void init() noexcept",
"file": "src/core/timer.h",
"line": 15,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Timer::start",
"signature": "Time start() const noexcept",
"file": "src/core/timer.h",
"line": 19,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Timer::now",
"signature": "Time now() const noexcept",
"file": "src/core/timer.h",
"line": 29,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Timer::elapsed",
"signature": "Time elapsed() const noexcept",
"file": "src/core/timer.h",
"line": 39,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::ipv4",
"signature": "inline IPv4Addr ipv4(NodeId n, PortId p) noexcept{",
"file": "src/core/types.h",
"line": 30,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "dtor",
"qualified": "MgmtMsg::~MgmtMsg",
"signature": "virtual ~MgmtMsg() = default",
"file": "src/hosts/mgmt_msg.h",
"line": 12,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "MgmtMsg::kind",
"signature": "virtual MgmtKind kind() const noexcept = 0",
"file": "src/hosts/mgmt_msg.h",
"line": 13,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "HeartbeatMsg::HeartbeatMsg",
"signature": "explicit HeartbeatMsg(NodeId sid, NodeStatus st, Time t) noexcept : subscriber_id(sid), status(st), generated_at(t)",
"file": "src/hosts/mgmt_msg.h",
"line": 21,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "HeartbeatMsg::kind",
"signature": "MgmtKind kind() const noexcept override",
"file": "src/hosts/mgmt_msg.h",
"line": 24,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "JobFinishedMsg::JobFinishedMsg",
"signature": "explicit JobFinishedMsg(FlowId fid, Time t) noexcept : flow_id(fid), finished_at(t)",
"file": "src/hosts/mgmt_msg.h",
"line": 33,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "JobFinishedMsg::kind",
"signature": "MgmtKind kind() const noexcept override",
"file": "src/hosts/mgmt_msg.h",
"line": 36,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "EndSimulationMsg::kind",
"signature": "MgmtKind kind() const noexcept override",
"file": "src/hosts/mgmt_msg.h",
"line": 42,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "dtor",
"qualified": "PubBasePolicy::~PubBasePolicy",
"signature": "virtual ~PubBasePolicy() = default",
"file": "src/hosts/policies.h",
"line": 14,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "PubBasePolicy::select_multicast_groups",
"signature": "virtual PacketGroups select_multicast_groups(PacketGroups update_groups_mask) = 0",
"file": "src/hosts/policies.h",
"line": 15,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "PubRRPolicy::PubRRPolicy",
"signature": "explicit PubRRPolicy(std::vector<ReplicaRange> ranges) : _ranges(std::move(ranges))",
"file": "src/hosts/policies.h",
"line": 28,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "PubRRPolicy::select_multicast_groups",
"signature": "PacketGroups select_multicast_groups(PacketGroups update_groups_mask) override",
"file": "src/hosts/policies.h",
"line": 33,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "group_present",
"signature": "static bool group_present(PacketGroups mask, uint32_t gid) noexcept{",
"file": "src/hosts/policies.h",
"line": 52,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "validate_and_build",
"signature": "void validate_and_build(){",
"file": "src/hosts/policies.h",
"line": 61,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Publisher::Publisher",
"signature": "Publisher(Simulator *sim, NodeId id, Time update_latency_base, std::unique_ptr<PubBasePolicy> policy, Time mgmt_latency) noexcept",
"file": "src/hosts/publisher.h",
"line": 19,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Publisher::recv_update",
"signature": "void recv_update(Bytes size, PacketGroups update_groups_mask) noexcept",
"file": "src/hosts/publisher.h",
"line": 26,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Publisher::set_status",
"signature": "void set_status(NodeStatus s, Time new_latency = Time{}) noexcept",
"file": "src/hosts/publisher.h",
"line": 29,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Publisher::recv_mgmt_msg",
"signature": "virtual void recv_mgmt_msg(MgmtMsgPtr msg) noexcept override",
"file": "src/hosts/publisher.h",
"line": 32,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Publisher::recv_flow",
"signature": "virtual void recv_flow(NodeId src, FlowId flow, FlowPriority prio, Bytes flow_size) override",
"file": "src/hosts/publisher.h",
"line": 35,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Publisher::recv_frame",
"signature": "virtual void recv_frame(const Packet &frame) override",
"file": "src/hosts/publisher.h",
"line": 37,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Publisher::updates_in",
"signature": "uint64_t updates_in() const noexcept",
"file": "src/hosts/publisher.h",
"line": 40,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Publisher::bytes_out",
"signature": "uint64_t bytes_out() const noexcept",
"file": "src/hosts/publisher.h",
"line": 43,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "arm_staging_if_needed",
"signature": "void arm_staging_if_needed() noexcept;",
"file": "src/hosts/publisher.h",
"line": 54,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Publisher::Pending::arm_staging_if_needed",
"signature": "void arm_staging_if_needed() noexcept",
"file": "src/hosts/publisher.h",
"line": 56,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Publisher::Pending::on_staging_timer",
"signature": "void on_staging_timer() noexcept",
"file": "src/hosts/publisher.h",
"line": 57,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "on_staging_timer",
"signature": "void on_staging_timer() noexcept;",
"file": "src/hosts/publisher.h",
"line": 57,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Subscriber::Subscriber",
"signature": "Subscriber(Simulator *sim, NodeId id, Publisher *publisher, std::unique_ptr<SubBasePolicy> policy, Time mgmt_latency, Time heartbeat_period) noexcept",
"file": "src/hosts/subscriber.h",
"line": 17,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Subscriber::recv_mgmt_msg",
"signature": "virtual void recv_mgmt_msg(MgmtMsgPtr msg) noexcept override",
"file": "src/hosts/subscriber.h",
"line": 25,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Subscriber::recv_flow",
"signature": "void recv_flow(NodeId src, FlowId flow, FlowPriority prio, Bytes flow_size) override",
"file": "src/hosts/subscriber.h",
"line": 28,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Subscriber::recv_frame",
"signature": "void recv_frame(const Packet &frame) override",
"file": "src/hosts/subscriber.h",
"line": 30,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Subscriber::set_status",
"signature": "void set_status(NodeStatus s) noexcept",
"file": "src/hosts/subscriber.h",
"line": 32,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Subscriber::set_publisher",
"signature": "void set_publisher(Publisher *p) noexcept",
"file": "src/hosts/subscriber.h",
"line": 35,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::schedule_next_heartbeat",
"signature": "void schedule_next_heartbeat(Time delay) noexcept;",
"file": "src/hosts/subscriber.h",
"line": 40,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::on_heartbeat_timer",
"signature": "void on_heartbeat_timer() noexcept;",
"file": "src/hosts/subscriber.h",
"line": 43,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::send_job_finished",
"signature": "void send_job_finished(FlowId flow) noexcept;",
"file": "src/hosts/subscriber.h",
"line": 44,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Link::Link",
"signature": "Link(Simulator *const sim, LinkId id, NetworkNode *a, PortId a_port, NetworkNode *b, PortId b_port, Time latency, double bandwidth_gbps) noexcept",
"file": "src/network/link.h",
"line": 34,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::send_pkt",
"signature": "void send_pkt(Packet &pkt, NodeId caller)",
"file": "src/network/link.h",
"line": 41,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::schedule_delivery_after",
"signature": "void schedule_delivery_after(Packet &pkt, NodeId caller, Time after)",
"file": "src/network/link.h",
"line": 43,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::next_available",
"signature": "Time next_available(NodeId sender) const noexcept",
"file": "src/network/link.h",
"line": 45,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::reserve",
"signature": "std::optional<Reservation> reserve(Bytes bytes, NodeId sender) noexcept",
"file": "src/network/link.h",
"line": 47,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::serialization_time",
"signature": "Time serialization_time(Bytes bytes) const noexcept",
"file": "src/network/link.h",
"line": 49,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::propagation_latency",
"signature": "Time propagation_latency() const noexcept",
"file": "src/network/link.h",
"line": 53,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::id",
"signature": "LinkId id() const noexcept",
"file": "src/network/link.h",
"line": 57,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::status",
"signature": "LinkStatus status() const noexcept",
"file": "src/network/link.h",
"line": 60,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::bandwidth_gbps",
"signature": "double bandwidth_gbps() const noexcept",
"file": "src/network/link.h",
"line": 63,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::src_id",
"signature": "NodeId src_id() const noexcept",
"file": "src/network/link.h",
"line": 68,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::dst_id",
"signature": "NodeId dst_id() const noexcept",
"file": "src/network/link.h",
"line": 71,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::src_port",
"signature": "PortId src_port() const noexcept",
"file": "src/network/link.h",
"line": 74,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::dst_port",
"signature": "PortId dst_port() const noexcept",
"file": "src/network/link.h",
"line": 77,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "set_status",
"signature": "void set_status(LinkStatus s, Time new_latency = Time(0), double new_bandwidth_gbps = 0.0);",
"file": "src/network/link.h",
"line": 80,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::set_status",
"signature": "void set_status(LinkStatus s, Time new_latency = Time(0), double new_bandwidth_gbps = 0.0)",
"file": "src/network/link.h",
"line": 86,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "serialization_time",
"signature": "static Time serialization_time(Bytes bytes, double gbps) noexcept;",
"file": "src/network/link.h",
"line": 89,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Link::serialization_time",
"signature": "static Time serialization_time(Bytes bytes, double gbps) noexcept",
"file": "src/network/link.h",
"line": 90,
"static": true,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "NicSchedulingWeights::NetworkNic::NetworkNic",
"signature": "NetworkNic(Simulator *const sim, NodeId id, uint16_t total_ports, SwitchBuffer *const buf, Time nic_latency, Bytes mice_elephant_threshold, PacketSeq ooo_threshold, CCType cc_type, LBType lb_type, Bytes cc_init_cwnd, Bytes cc_max_cwnd, const NicSchedulingWeights &schedw) noexcept",
"file": "src/network/network_nic.h",
"line": 33,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::recv_pkt",
"signature": "virtual void recv_pkt(Packet &pkt, PortId ingress) override",
"file": "src/network/network_nic.h",
"line": 46,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::attach_host",
"signature": "void attach_host(Host *host) noexcept",
"file": "src/network/network_nic.h",
"line": 48,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::detach_host",
"signature": "void detach_host(Host *host) noexcept",
"file": "src/network/network_nic.h",
"line": 49,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::send_flow",
"signature": "void send_flow(NodeId dst, Bytes size, FlowPriority desired = FlowPriority::AUTO)",
"file": "src/network/network_nic.h",
"line": 52,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::send_flow",
"signature": "void send_flow(PacketGroups group_mask, Bytes size, FlowPriority desired = FlowPriority::AUTO)",
"file": "src/network/network_nic.h",
"line": 54,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::set_status",
"signature": "void set_status(NodeStatus s, Time new_latency = Time(0)) noexcept",
"file": "src/network/network_nic.h",
"line": 57,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::telemetry",
"signature": "const NicTelemetry &telemetry() const noexcept",
"file": "src/network/network_nic.h",
"line": 59,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "set_port_blacklisted",
"signature": "void set_port_blacklisted(PortId port, bool blacklisted) noexcept;",
"file": "src/network/network_nic.h",
"line": 62,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::set_port_blacklisted",
"signature": "void set_port_blacklisted(PortId port, bool blacklisted) noexcept",
"file": "src/network/network_nic.h",
"line": 63,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::is_port_blacklisted",
"signature": "bool is_port_blacklisted(PortId port) const noexcept",
"file": "src/network/network_nic.h",
"line": 64,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "schedule_port_if_needed",
"signature": "void schedule_port_if_needed(PortId port) noexcept;",
"file": "src/network/network_nic.h",
"line": 81,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::schedule_port_if_needed",
"signature": "void schedule_port_if_needed(PortId port) noexcept",
"file": "src/network/network_nic.h",
"line": 83,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::port_drain_task",
"signature": "void port_drain_task(PortId port) noexcept",
"file": "src/network/network_nic.h",
"line": 84,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "port_drain_task",
"signature": "void port_drain_task(PortId port) noexcept;",
"file": "src/network/network_nic.h",
"line": 84,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::pick_next_qclass",
"signature": "bool pick_next_qclass(const PortQueues &pq, QClass &out_cls) const noexcept",
"file": "src/network/network_nic.h",
"line": 86,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "try_send_one",
"signature": "bool try_send_one(PortId port, QClass cls) noexcept;",
"file": "src/network/network_nic.h",
"line": 86,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::try_send_one",
"signature": "bool try_send_one(PortId port, QClass cls) noexcept",
"file": "src/network/network_nic.h",
"line": 88,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "enqueue_packet",
"signature": "void enqueue_packet(PortId port, QClass cls, Packet pkt) noexcept;",
"file": "src/network/network_nic.h",
"line": 89,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::enqueue_packet",
"signature": "void enqueue_packet(PortId port, QClass cls, Packet pkt) noexcept",
"file": "src/network/network_nic.h",
"line": 90,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "schedule_ack",
"signature": "void schedule_ack(const Packet &rx_data, PortId ingress) noexcept;",
"file": "src/network/network_nic.h",
"line": 91,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::schedule_ack",
"signature": "void schedule_ack(const Packet &rx_data, PortId ingress) noexcept",
"file": "src/network/network_nic.h",
"line": 92,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::schedule_nack",
"signature": "void schedule_nack(NodeId peer, FlowId flow, PacketSeq missing_seq, FlowPriority prio, PortId ingress) noexcept",
"file": "src/network/network_nic.h",
"line": 93,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "schedule_nack",
"signature": "void schedule_nack(NodeId peer, FlowId flow, PacketSeq missing_seq, FlowPriority prio, PortId ingress) noexcept;",
"file": "src/network/network_nic.h",
"line": 93,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::schedule_trim_back_response",
"signature": "void schedule_trim_back_response(const Packet &trim, PortId ingress) noexcept",
"file": "src/network/network_nic.h",
"line": 95,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "schedule_trim_back_response",
"signature": "void schedule_trim_back_response(const Packet &trim, PortId ingress) noexcept;",
"file": "src/network/network_nic.h",
"line": 95,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::is_elephant",
"signature": "bool is_elephant(Bytes sz) const noexcept",
"file": "src/network/network_nic.h",
"line": 97,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "txkey",
"signature": "static inline std::uint64_t txkey(FlowId f, PacketSeq s) noexcept;",
"file": "src/network/network_nic.h",
"line": 97,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::txkey",
"signature": "static inline std::uint64_t txkey(FlowId f, PacketSeq s) noexcept",
"file": "src/network/network_nic.h",
"line": 99,
"static": true,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "record_tx_timestamp",
"signature": "void record_tx_timestamp(const Packet &pkt) noexcept;",
"file": "src/network/network_nic.h",
"line": 100,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::record_tx_timestamp",
"signature": "void record_tx_timestamp(const Packet &pkt) noexcept",
"file": "src/network/network_nic.h",
"line": 101,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::lookup_rtt_and_erase",
"signature": "bool lookup_rtt_and_erase(const Packet &ack_like, Time now, Time &out_rtt) noexcept",
"file": "src/network/network_nic.h",
"line": 102,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "lookup_rtt_and_erase",
"signature": "bool lookup_rtt_and_erase(const Packet &ack_like, Time now, Time &out_rtt) noexcept;",
"file": "src/network/network_nic.h",
"line": 102,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "pick_src_port_for_flow",
"signature": "PortId pick_src_port_for_flow(NodeId dst) noexcept;",
"file": "src/network/network_nic.h",
"line": 104,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::pick_src_port_for_flow",
"signature": "PortId pick_src_port_for_flow(NodeId dst) noexcept",
"file": "src/network/network_nic.h",
"line": 105,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "start_tx_unicast",
"signature": "void start_tx_unicast(NodeId dst, Bytes size, FlowPriority prio);",
"file": "src/network/network_nic.h",
"line": 106,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::start_tx_unicast",
"signature": "void start_tx_unicast(NodeId dst, Bytes size, FlowPriority prio)",
"file": "src/network/network_nic.h",
"line": 107,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::start_tx_multicast",
"signature": "void start_tx_multicast(PacketGroups gmask, Bytes size, FlowPriority prio)",
"file": "src/network/network_nic.h",
"line": 108,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "start_tx_multicast",
"signature": "void start_tx_multicast(PacketGroups gmask, Bytes size, FlowPriority prio);",
"file": "src/network/network_nic.h",
"line": 108,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "make_data_packet",
"signature": "Packet make_data_packet(NodeId dst, PortId out_port, FlowPriority prio, FlowId fid, PacketSeq seq, Bytes payload) noexcept;",
"file": "src/network/network_nic.h",
"line": 109,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::make_data_packet",
"signature": "Packet make_data_packet(NodeId dst, PortId out_port, FlowPriority prio, FlowId fid, PacketSeq seq, Bytes payload) noexcept",
"file": "src/network/network_nic.h",
"line": 110,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::make_ack_packet",
"signature": "Packet make_ack_packet(const Packet &rx_data, PortId ingress) noexcept",
"file": "src/network/network_nic.h",
"line": 112,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "make_ack_packet",
"signature": "Packet make_ack_packet(const Packet &rx_data, PortId ingress) noexcept;",
"file": "src/network/network_nic.h",
"line": 112,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::make_nack_packet",
"signature": "Packet make_nack_packet(NodeId peer, FlowId flow, PacketSeq miss, FlowPriority prio, PortId ingress) noexcept",
"file": "src/network/network_nic.h",
"line": 113,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "make_nack_packet",
"signature": "Packet make_nack_packet(NodeId peer, FlowId flow, PacketSeq miss, FlowPriority prio, PortId ingress) noexcept;",
"file": "src/network/network_nic.h",
"line": 113,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NicSchedulingWeights::NetworkNic::PortQueues::make_trim_back_response",
"signature": "Packet make_trim_back_response(const Packet &trim, PortId ingress) noexcept",
"file": "src/network/network_nic.h",
"line": 116,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "make_trim_back_response",
"signature": "Packet make_trim_back_response(const Packet &trim, PortId ingress) noexcept;",
"file": "src/network/network_nic.h",
"line": 116,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "NetworkNode::NetworkNode",
"signature": "explicit NetworkNode(Simulator *const sim, NodeId id, NodeType type) noexcept",
"file": "src/network/network_node.h",
"line": 15,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "dtor",
"qualified": "NetworkNode::~NetworkNode",
"signature": "virtual ~NetworkNode() = default",
"file": "src/network/network_node.h",
"line": 17,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NetworkNode::recv_pkt",
"signature": "virtual void recv_pkt(Packet &pkt, PortId ingress) = 0",
"file": "src/network/network_node.h",
"line": 19,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "NetworkSwitch::NetworkSwitch",
"signature": "NetworkSwitch(Simulator *const sim, NodeId id, uint16_t total_ports, ECNEngine *const ecn, SwitchBuffer *const buf, const RoutingTables *const rt, Time forwarding_latency, Time multicast_dup_delay) noexcept",
"file": "src/network/network_switch.h",
"line": 21,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NetworkSwitch::recv_pkt",
"signature": "virtual void recv_pkt(Packet &pkt, PortId ingress) override",
"file": "src/network/network_switch.h",
"line": 30,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NetworkSwitch::set_status",
"signature": "void set_status(NodeStatus s, Time new_forward_latency = Time(0)) noexcept",
"file": "src/network/network_switch.h",
"line": 36,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NetworkSwitch::get_status",
"signature": "NodeStatus get_status() const noexcept",
"file": "src/network/network_switch.h",
"line": 38,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NetworkSwitch::port_cnt",
"signature": "uint16_t port_cnt() const noexcept",
"file": "src/network/network_switch.h",
"line": 42,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "forward_after_delay",
"signature": "private: void forward_after_delay(Packet pkt, PortId ingress) noexcept;",
"file": "src/network/network_switch.h",
"line": 45,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "enqueue_one",
"signature": "void enqueue_one(Packet pkt, PortId egress, FlowPriority prio) noexcept;",
"file": "src/network/network_switch.h",
"line": 48,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "merge_sorted_unique",
"signature": "static void merge_sorted_unique(std::vector<PortId> &base, const std::vector<PortId> &add);",
"file": "src/network/network_switch.h",
"line": 58,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "group_bit_set",
"signature": "static inline bool group_bit_set(PacketGroups mask, std::size_t gid) noexcept;",
"file": "src/network/network_switch.h",
"line": 62,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "CongestionControl::CongestionControl",
"signature": "explicit CongestionControl(Bytes init_cwnd, Bytes max_cwnd) noexcept",
"file": "src/network/nic/congestion_control.h",
"line": 13,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "dtor",
"qualified": "CongestionControl::~CongestionControl",
"signature": "virtual ~CongestionControl() = default",
"file": "src/network/nic/congestion_control.h",
"line": 14,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "CongestionControl::update",
"signature": "virtual void update(const Packet &pkt, Time rtt) noexcept = 0",
"file": "src/network/nic/congestion_control.h",
"line": 16,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "CongestionControl::is_allowed_to_send",
"signature": "virtual bool is_allowed_to_send(Bytes bytes_outstanding, Bytes next_bytes) const noexcept",
"file": "src/network/nic/congestion_control.h",
"line": 18,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "CongestionControl::cwnd",
"signature": "Bytes cwnd() const noexcept",
"file": "src/network/nic/congestion_control.h",
"line": 21,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "CongestionControl::cwnd_max",
"signature": "Bytes cwnd_max() const noexcept",
"file": "src/network/nic/congestion_control.h",
"line": 24,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "DCQCN::DCQCN",
"signature": "explicit DCQCN(Bytes init_cwnd, Bytes max_cwnd) noexcept",
"file": "src/network/nic/congestion_control.h",
"line": 35,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "DCQCN::update",
"signature": "virtual void update(const Packet &pkt, Time rtt) noexcept override",
"file": "src/network/nic/congestion_control.h",
"line": 36,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "NSCC::NSCC",
"signature": "explicit NSCC(Bytes init_cwnd, Bytes max_cwnd) noexcept",
"file": "src/network/nic/congestion_control.h",
"line": 41,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "NSCC::update",
"signature": "virtual void update(const Packet &pkt, Time rtt) noexcept override",
"file": "src/network/nic/congestion_control.h",
"line": 42,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "LoadBalance::LoadBalance",
"signature": "explicit LoadBalance(Rng *const rng) noexcept : _rng(rng)",
"file": "src/network/nic/load_balance.h",
"line": 14,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "dtor",
"qualified": "LoadBalance::~LoadBalance",
"signature": "virtual ~LoadBalance() = default",
"file": "src/network/nic/load_balance.h",
"line": 15,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "LoadBalance::update",
"signature": "virtual void update(const Packet &pkt) noexcept = 0",
"file": "src/network/nic/load_balance.h",
"line": 17,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "LoadBalance::get_entropy",
"signature": "virtual uint16_t get_entropy(const Packet &context) noexcept = 0",
"file": "src/network/nic/load_balance.h",
"line": 20,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "LBRandomPacketSpraying::LBRandomPacketSpraying",
"signature": "explicit LBRandomPacketSpraying(Rng *const rng) noexcept : LoadBalance(rng)",
"file": "src/network/nic/load_balance.h",
"line": 29,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "LBRandomPacketSpraying::update",
"signature": "virtual void update(const Packet &pkt) noexcept override",
"file": "src/network/nic/load_balance.h",
"line": 30,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "LBRandomPacketSpraying::get_entropy",
"signature": "virtual uint16_t get_entropy(const Packet &context) noexcept override",
"file": "src/network/nic/load_balance.h",
"line": 31,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "Packet::Packet",
"signature": "Packet(NodeId src_node, PortId src_port, NodeId dst_node, PortId dst_port, PacketProtocol proto, FlowPriority prio, PacketSeq seq = 0, FlowId flow = 0, uint16_t entropy = 0, uint8_t notifications = 0, Bytes payload_bytes = DEFAULT_MSS_BYTES) noexcept",
"file": "src/network/packet.h",
"line": 20,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::src_node",
"signature": "NodeId src_node() const noexcept",
"file": "src/network/packet.h",
"line": 32,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::src_port",
"signature": "PortId src_port() const noexcept",
"file": "src/network/packet.h",
"line": 33,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::dst_node",
"signature": "NodeId dst_node() const noexcept",
"file": "src/network/packet.h",
"line": 34,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::dst_port",
"signature": "PortId dst_port() const noexcept",
"file": "src/network/packet.h",
"line": 35,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::protocol",
"signature": "PacketProtocol protocol() const noexcept",
"file": "src/network/packet.h",
"line": 36,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::seq",
"signature": "PacketSeq seq() const noexcept",
"file": "src/network/packet.h",
"line": 37,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::flow_id",
"signature": "FlowId flow_id() const noexcept",
"file": "src/network/packet.h",
"line": 38,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::entropy",
"signature": "uint32_t entropy() const noexcept",
"file": "src/network/packet.h",
"line": 39,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::set_src_node",
"signature": "void set_src_node(NodeId n) noexcept",
"file": "src/network/packet.h",
"line": 41,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::set_src_port",
"signature": "void set_src_port(PortId p) noexcept",
"file": "src/network/packet.h",
"line": 42,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::set_dst_node",
"signature": "void set_dst_node(NodeId n) noexcept",
"file": "src/network/packet.h",
"line": 43,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::set_dst_port",
"signature": "void set_dst_port(PortId p) noexcept",
"file": "src/network/packet.h",
"line": 44,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::set_seq",
"signature": "void set_seq(PacketSeq s) noexcept",
"file": "src/network/packet.h",
"line": 45,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::set_flow_id",
"signature": "void set_flow_id(FlowId f) noexcept",
"file": "src/network/packet.h",
"line": 46,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::set_entropy",
"signature": "void set_entropy(uint32_t e) noexcept",
"file": "src/network/packet.h",
"line": 47,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::set_protocol",
"signature": "void set_protocol(PacketProtocol p) noexcept",
"file": "src/network/packet.h",
"line": 48,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::set_payload_size",
"signature": "void set_payload_size(Bytes size) noexcept",
"file": "src/network/packet.h",
"line": 50,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::set_ecn_enabled",
"signature": "void set_ecn_enabled(bool v) noexcept",
"file": "src/network/packet.h",
"line": 52,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::set_ecn_marked",
"signature": "void set_ecn_marked(bool v) noexcept",
"file": "src/network/packet.h",
"line": 53,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::set_eof",
"signature": "void set_eof(bool v) noexcept",
"file": "src/network/packet.h",
"line": 55,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::is_ecn_enabled",
"signature": "bool is_ecn_enabled() const noexcept",
"file": "src/network/packet.h",
"line": 57,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::is_ecn",
"signature": "bool is_ecn() const noexcept",
"file": "src/network/packet.h",
"line": 58,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::is_eof",
"signature": "bool is_eof() const noexcept",
"file": "src/network/packet.h",
"line": 59,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::priority",
"signature": "FlowPriority priority() const noexcept",
"file": "src/network/packet.h",
"line": 61,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::priority_raw",
"signature": "uint8_t priority_raw() const noexcept",
"file": "src/network/packet.h",
"line": 62,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::header_size",
"signature": "Bytes header_size() const noexcept",
"file": "src/network/packet.h",
"line": 64,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::payload_size",
"signature": "Bytes payload_size() const noexcept",
"file": "src/network/packet.h",
"line": 65,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::total_size",
"signature": "Bytes total_size() const noexcept",
"file": "src/network/packet.h",
"line": 66,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::groups",
"signature": "PacketGroups groups() const noexcept",
"file": "src/network/packet.h",
"line": 68,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::set_groups",
"signature": "void set_groups(PacketGroups g) noexcept",
"file": "src/network/packet.h",
"line": 69,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "Packet::add_groups",
"signature": "void add_groups(PacketGroups gmask) noexcept",
"file": "src/network/packet.h",
"line": 70,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "DedicatedBuffer::DedicatedBuffer",
"signature": "DedicatedBuffer(Simulator *const sim, NetworkSwitch *const owner, Bytes total_bytes, uint16_t ports)",
"file": "src/network/switch/dedicated_buffer.h",
"line": 12,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "DedicatedBuffer::enqueue_packet",
"signature": "bool enqueue_packet(const Packet &pkt, PortId egress, FlowPriority prio) override",
"file": "src/network/switch/dedicated_buffer.h",
"line": 17,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "DedicatedBuffer::drain_one",
"signature": "bool drain_one(PortId port) override",
"file": "src/network/switch/dedicated_buffer.h",
"line": 19,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "DedicatedREDEngine::DedicatedREDEngine",
"signature": "DedicatedREDEngine(Bytes min_th, Bytes max_th, double p_max, bool back_to_sender, Rng *const rng) noexcept : _min_th(min_th), _max_th(max_th), _p_max(p_max), _back_to_sender(back_to_sender), _rng(rng)",
"file": "src/network/switch/ecn_dedicated_red.h",
"line": 15,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "DedicatedREDEngine::process_packet",
"signature": "virtual Packet &process_packet(Packet &pkt, SwitchBuffer *buf) noexcept override",
"file": "src/network/switch/ecn_dedicated_red.h",
"line": 26,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::ensure_size",
"signature": "private: void ensure_size(uint16_t port_cnt){",
"file": "src/network/switch/ecn_dedicated_red.h",
"line": 27,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "dtor",
"qualified": "ECNEngine::~ECNEngine",
"signature": "virtual ~ECNEngine() = default",
"file": "src/network/switch/ecn_engine.h",
"line": 14,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "ECNEngine::process_packet",
"signature": "virtual Packet &process_packet(Packet &pkt, SwitchBuffer *buf) noexcept = 0",
"file": "src/network/switch/ecn_engine.h",
"line": 18,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::header_trim",
"signature": "static inline void header_trim(Packet &pkt, bool back_to_sender) noexcept{",
"file": "src/network/switch/ecn_engine.h",
"line": 27,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "SharedREDEngine::SharedREDEngine",
"signature": "explicit SharedREDEngine(Rng *const rng = nullptr) noexcept : _rng(rng), _avg_total_bytes(0.0), _avg_port_bytes()",
"file": "src/network/switch/ecn_shared_red.h",
"line": 20,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SharedREDEngine::process_packet",
"signature": "virtual Packet &process_packet(Packet &pkt, SwitchBuffer *buf) noexcept override",
"file": "src/network/switch/ecn_shared_red.h",
"line": 25,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::ensure_size",
"signature": "private: void ensure_size(uint16_t port_cnt){",
"file": "src/network/switch/ecn_shared_red.h",
"line": 26,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "is_ctrl",
"signature": "static inline bool is_ctrl(const Packet &p) noexcept{",
"file": "src/network/switch/ecn_shared_red.h",
"line": 33,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "is_mice",
"signature": "static inline bool is_mice(const Packet &p) noexcept{",
"file": "src/network/switch/ecn_shared_red.h",
"line": 37,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "is_ele",
"signature": "static inline bool is_ele (const Packet &p) noexcept{",
"file": "src/network/switch/ecn_shared_red.h",
"line": 40,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "McTree::MulticastTable::MulticastTable",
"signature": "MulticastTable()",
"file": "src/network/switch/multicast_table.h",
"line": 25,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "McTree::MulticastTable::add_tree",
"signature": "bool add_tree(std::size_t group_id, uint16_t tree_id)",
"file": "src/network/switch/multicast_table.h",
"line": 27,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "McTree::MulticastTable::delete_tree",
"signature": "bool delete_tree(std::size_t group_id, uint16_t tree_id)",
"file": "src/network/switch/multicast_table.h",
"line": 28,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "McTree::MulticastTable::add_child_port",
"signature": "bool add_child_port(std::size_t group_id, uint16_t tree_id, PortId out_port)",
"file": "src/network/switch/multicast_table.h",
"line": 30,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "McTree::MulticastTable::delete_child_port",
"signature": "bool delete_child_port(std::size_t group_id, uint16_t tree_id, PortId out_port)",
"file": "src/network/switch/multicast_table.h",
"line": 31,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "McTree::MulticastTable::set_parent",
"signature": "bool set_parent(std::size_t group_id, uint16_t tree_id, PortId parent)",
"file": "src/network/switch/multicast_table.h",
"line": 33,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "McTree::MulticastTable::set_weight",
"signature": "bool set_weight(std::size_t group_id, uint16_t tree_id, uint8_t w)",
"file": "src/network/switch/multicast_table.h",
"line": 34,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "McTree::MulticastTable::set_epoch",
"signature": "bool set_epoch(std::size_t group_id, uint16_t tree_id, uint8_t epoch)",
"file": "src/network/switch/multicast_table.h",
"line": 35,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "McTree::MulticastTable::trees_of",
"signature": "const std::vector<McTree> *trees_of(std::size_t group_id) const",
"file": "src/network/switch/multicast_table.h",
"line": 37,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "McTree::MulticastTable::group_count",
"signature": "std::size_t group_count() const noexcept",
"file": "src/network/switch/multicast_table.h",
"line": 38,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "McTree::MulticastTable::get_port_list",
"signature": "std::vector<PortId> get_port_list(PacketGroups groups) const",
"file": "src/network/switch/multicast_table.h",
"line": 41,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::hash_ecmp",
"signature": "PortId hash_ecmp(NodeId src_node, PortId src_port, NodeId dst_node, PortId dst_port, uint32_t differentiator, uint16_t port_count) noexcept;",
"file": "src/network/switch/routing_alg.h",
"line": 9,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::hash_ecmp",
"signature": "inline PortId hash_ecmp(NodeId src_node, NodeId dst_node, uint32_t differentiator, uint16_t port_count) noexcept{",
"file": "src/network/switch/routing_alg.h",
"line": 14,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "dofs::hash_ecmp",
"signature": "return hash_ecmp(src_node, static_cast<PortId>(0), dst_node, static_cast<PortId>(0), differentiator, port_count);",
"file": "src/network/switch/routing_alg.h",
"line": 19,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "SharedBuffer::SharedBuffer",
"signature": "SharedBuffer(Simulator *const sim, NetworkSwitch *const owner, Bytes total_bytes, uint16_t ports)",
"file": "src/network/switch/shared_buffer.h",
"line": 12,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SharedBuffer::enqueue_packet",
"signature": "virtual bool enqueue_packet(const Packet &pkt, PortId egress, FlowPriority prio) override",
"file": "src/network/switch/shared_buffer.h",
"line": 17,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SharedBuffer::drain_one",
"signature": "virtual bool drain_one(PortId port) override",
"file": "src/network/switch/shared_buffer.h",
"line": 19,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "dtor",
"qualified": "SwitchBuffer::~SwitchBuffer",
"signature": "virtual ~SwitchBuffer() = default",
"file": "src/network/switch/switch_buffer.h",
"line": 32,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::enqueue_packet",
"signature": "virtual bool enqueue_packet(const Packet &pkt, PortId egress, FlowPriority prio) = 0",
"file": "src/network/switch/switch_buffer.h",
"line": 37,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::drain_one",
"signature": "virtual bool drain_one(PortId port) = 0",
"file": "src/network/switch/switch_buffer.h",
"line": 43,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::buffer_size",
"signature": "Bytes buffer_size() const noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 46,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::type",
"signature": "SwitchBufferType type() const noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 47,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::port_cnt",
"signature": "uint16_t port_cnt() const noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 48,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::port_buffered",
"signature": "Bytes port_buffered(PortId p) const noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 49,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::ports_buffered",
"signature": "const std::vector<Bytes> &ports_buffered() const noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 50,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::share_ctrl",
"signature": "uint8_t share_ctrl() const noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 53,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::share_mice",
"signature": "uint8_t share_mice() const noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 54,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::share_elephant",
"signature": "uint8_t share_elephant() const noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 55,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::set_share_ctrl",
"signature": "void set_share_ctrl(uint8_t pct) noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 59,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::set_share_mice",
"signature": "void set_share_mice(uint8_t pct) noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 60,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::set_share_elephant",
"signature": "void set_share_elephant(uint8_t pct) noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 61,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::simulator",
"signature": "const Simulator *simulator() const noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 64,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::owner",
"signature": "const NetworkSwitch *owner() const noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 65,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::set_egress_links",
"signature": "void set_egress_links(const std::vector<Link*> &links)",
"file": "src/network/switch/switch_buffer.h",
"line": 68,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "drain_one_common",
"signature": "bool drain_one_common(PortId port);",
"file": "src/network/switch/switch_buffer.h",
"line": 111,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::PerPortSched::drain_one_common",
"signature": "bool drain_one_common(PortId port)",
"file": "src/network/switch/switch_buffer.h",
"line": 114,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "schedule_drain_if_needed",
"signature": "void schedule_drain_if_needed(PortId port);",
"file": "src/network/switch/switch_buffer.h",
"line": 115,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::PerPortSched::schedule_drain_if_needed",
"signature": "void schedule_drain_if_needed(PortId port)",
"file": "src/network/switch/switch_buffer.h",
"line": 117,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::PerPortSched::drain_once",
"signature": "void drain_once(PortId port)",
"file": "src/network/switch/switch_buffer.h",
"line": 118,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "drain_once",
"signature": "void drain_once(PortId port);",
"file": "src/network/switch/switch_buffer.h",
"line": 118,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::PerPortSched::queues_for",
"signature": "virtual std::array<std::deque<Queued>, PRI_COUNT> &queues_for(PortId p) = 0",
"file": "src/network/switch/switch_buffer.h",
"line": 123,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::PerPortSched::queues_for",
"signature": "virtual const std::array<std::deque<Queued>, PRI_COUNT> &queues_for( PortId p) const = 0",
"file": "src/network/switch/switch_buffer.h",
"line": 124,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::PerPortSched::on_enqueue_cap_check",
"signature": "virtual bool on_enqueue_cap_check(PortId port, Bytes sz) = 0",
"file": "src/network/switch/switch_buffer.h",
"line": 128,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::PerPortSched::on_enqueue_commit",
"signature": "virtual void on_enqueue_commit(PortId port, Bytes sz) = 0",
"file": "src/network/switch/switch_buffer.h",
"line": 129,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::PerPortSched::on_dequeue_commit",
"signature": "virtual void on_dequeue_commit(PortId port, Bytes sz) = 0",
"file": "src/network/switch/switch_buffer.h",
"line": 130,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "free_function",
"qualified": "try_reserve_and_send",
"signature": "std::optional<Time> try_reserve_and_send(PortId port, Queued &q);",
"file": "src/network/switch/switch_buffer.h",
"line": 130,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::PerPortSched::try_reserve_and_send",
"signature": "std::optional<Time> try_reserve_and_send(PortId port, Queued &q)",
"file": "src/network/switch/switch_buffer.h",
"line": 134,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::PerPortSched::queued_bytes_total",
"signature": "Bytes queued_bytes_total() const noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 137,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "SwitchBuffer::PerPortSched::queued_bytes_port",
"signature": "Bytes queued_bytes_port(PortId p) const noexcept",
"file": "src/network/switch/switch_buffer.h",
"line": 138,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "ctor",
"qualified": "UnicastTable::UnicastTable",
"signature": "UnicastTable() = default",
"file": "src/network/switch/unicast_table.h",
"line": 15,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "UnicastTable::get_port_list",
"signature": "std::vector<PortId> get_port_list(NodeId dst_node, PortId dst_port) const",
"file": "src/network/switch/unicast_table.h",
"line": 17,
"static": false,
"const": true,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "UnicastTable::add_entry",
"signature": "bool add_entry(NodeId dst_node, PortId dst_port, PortId out_port)",
"file": "src/network/switch/unicast_table.h",
"line": 19,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
},
{
"kind": "method",
"qualified": "UnicastTable::delete_entry",
"signature": "bool delete_entry(NodeId dst_node, PortId dst_port, PortId out_port)",
"file": "src/network/switch/unicast_table.h",
"line": 21,
"static": false,
"const": false,
"ref_qual": "",
"template_params": ""
}
]
}