HardFOC Core
API reference
Loading...
Searching...
No Matches
Classes | Namespaces | Functions | Variables
PipePort.cpp File Reference

Host pipe bus (PipeHub) and its ICanPort (PipePort). POSIX only. More...

#include "PipePort.h"
#include <cerrno>
#include <chrono>
#include <cstring>
#include <deque>
#include <fcntl.h>
#include <poll.h>
#include <sys/socket.h>
#include <sys/un.h>
#include <unistd.h>
#include "HfCanFrameRecord.h"

Classes

struct  hf::can::PipeHub::Client
 

Namespaces

namespace  hf
 
namespace  hf::can
 
namespace  hf::can::anonymous_namespace{PipePort.cpp}
 

Functions

bool hf::can::anonymous_namespace{PipePort.cpp}::SetNonBlocking (int fd)
 
void hf::can::anonymous_namespace{PipePort.cpp}::NoSigPipe (int fd)
 
bool hf::can::anonymous_namespace{PipePort.cpp}::MakeAddr (const std::string &path, sockaddr_un &addr)
 
bool hf::can::anonymous_namespace{PipePort.cpp}::MakeWakePipe (int(&fds)[2])
 
void hf::can::anonymous_namespace{PipePort.cpp}::PokeFd (int fd)
 
void hf::can::anonymous_namespace{PipePort.cpp}::CloseFd (int &fd)
 
void hf::can::anonymous_namespace{PipePort.cpp}::DrainFd (int fd)
 
bool hf::can::anonymous_namespace{PipePort.cpp}::Flush (int fd, std::vector< uint8_t > &buf, std::size_t &off)
 
bool hf::can::anonymous_namespace{PipePort.cpp}::Fill (int fd, std::vector< uint8_t > &in)
 

Variables

constexpr int hf::can::anonymous_namespace{PipePort.cpp}::kSendFlags = 0
 
constexpr std::size_t hf::can::anonymous_namespace{PipePort.cpp}::kDatagramRecordBytes = 1024U
 
constexpr std::size_t hf::can::anonymous_namespace{PipePort.cpp}::kPortOutHighWater = std::size_t{64} * 1024U
 

Detailed Description

Host pipe bus (PipeHub) and its ICanPort (PipePort). POSIX only.

SPDX-License-Identifier: GPL-3.0-or-later