Sen API
Sen Libraries
Loading...
Searching...
No Matches
transport.h File Reference
#include "sen/core/base/class_helpers.h"
#include "sen/core/base/compiler_macros.h"
#include "sen/core/base/memory_block.h"
#include "sen/core/base/move_only_function.h"
#include "sen/core/base/numbers.h"
#include "sen/core/base/span.h"
#include "sen/core/base/strong_type.h"
#include "sen/core/io/output_stream.h"
#include "sen/core/obj/object_provider.h"
#include "sen/kernel/tracer.h"
#include "stl/sen/kernel/basic_types.stl.h"
#include <chrono>
#include <cstddef>
#include <cstdint>
#include <functional>
#include <memory>
#include <string>
#include <vector>

Go to the source code of this file.

Classes

struct  sen::kernel::BusId
struct  sen::kernel::ParticipantAddr
 To identify remote participants. More...
class  sen::kernel::UniqueByteBufferManager
class  sen::kernel::TransportListener
 Interface for the internal Sen element that reacts to transport events. More...
struct  sen::kernel::TransportStats
 Global transport statistics. More...
class  sen::kernel::Transport
 Interface for implementing a Sen inter-process transport solution. More...
struct  sen::ShouldBePassedByValue< kernel::ProcessId >
struct  sen::ShouldBePassedByValue< kernel::BusId >
struct  std::hash< sen::kernel::ParticipantAddr >

Namespaces

namespace  sen
namespace  sen::kernel
 Strong type for the unique identifier for a transport timer.

Typedefs

using sen::kernel::BestEffortBlockPtr = std::shared_ptr<FixedMemoryBlock>
 Pointer to a memory block of fixed size, used for best effort communication.
using sen::kernel::ReliableBlockPtr = std::shared_ptr<ResizableHeapBlock>
 Pointer to a resizable memory block, used for reliable communication.
using sen::kernel::BestEffortBufferList = std::vector<BestEffortBlockPtr>
 A list (vector) of fixed-size memory blocks.
using sen::kernel::TransportFactory = std::function<std::unique_ptr<Transport>(const std::string&, std::unique_ptr<Tracer> tracer)>
 A function that creates a transport given a session name.

Functions

bool sen::kernel::operator== (const ParticipantAddr &lhs, const ParticipantAddr &rhs) noexcept
bool sen::kernel::operator!= (const ParticipantAddr &lhs, const ParticipantAddr &rhs) noexcept
uint32_t sen::kernel::getKernelProtocolVersion () noexcept
 The protocol version of kernel messaging.

Variables

constexpr std::size_t sen::kernel::maxBestEffortMessageSize = 65527U
 The maximum UDP payload size.