Public Member Functions | Private Attributes | Static Private Attributes | List of all members
dai::XLinkStream Class Reference

#include <XLinkStream.hpp>

Public Member Functions

streamId_t getStreamId () const
 
XLinkStreamoperator= (const XLinkStream &)=delete
 
XLinkStreamoperator= (XLinkStream &&stream)
 
std::vector< std::uint8_t > read ()
 
void read (std::vector< std::uint8_t > &data)
 
bool read (std::vector< std::uint8_t > &data, std::chrono::milliseconds timeout)
 
void read (std::vector< std::uint8_t > &data, XLinkTimespec &timestampReceived)
 
std::vector< std::uint8_t > read (XLinkTimespec &timestampReceived)
 
StreamPacketDesc readMove ()
 
bool readMove (StreamPacketDesc &packet, const std::chrono::milliseconds timeout)
 
streamPacketDesc_t * readRaw ()
 
bool readRaw (streamPacketDesc_t *&pPacket, std::chrono::milliseconds timeout)
 
void readRawRelease ()
 
void write (const std::uint8_t *data, std::size_t size)
 
bool write (const std::uint8_t *data, std::size_t size, std::chrono::milliseconds timeout)
 
void write (const std::vector< std::uint8_t > &data)
 
bool write (const std::vector< std::uint8_t > &data, std::chrono::milliseconds timeout)
 
void write (const void *data, std::size_t size)
 
bool write (const void *data, std::size_t size, std::chrono::milliseconds timeout)
 
void writeSplit (const std::vector< uint8_t > &data, std::size_t split)
 
void writeSplit (const void *data, std::size_t size, std::size_t split)
 
 XLinkStream (const std::shared_ptr< XLinkConnection > conn, const std::string &name, std::size_t maxWriteSize)
 
 XLinkStream (const XLinkStream &)=delete
 
 XLinkStream (XLinkStream &&stream)
 
 ~XLinkStream ()
 

Private Attributes

std::shared_ptr< XLinkConnectionconnection
 
streamId_t streamId {INVALID_STREAM_ID}
 
std::string streamName
 

Static Private Attributes

constexpr static int STREAM_OPEN_RETRIES = 5
 
constexpr static std::chrono::milliseconds WAIT_FOR_STREAM_RETRY {50}
 

Detailed Description

Definition at line 37 of file XLinkStream.hpp.

Constructor & Destructor Documentation

◆ XLinkStream() [1/3]

dai::XLinkStream::XLinkStream ( const std::shared_ptr< XLinkConnection conn,
const std::string &  name,
std::size_t  maxWriteSize 
)

Definition at line 16 of file XLinkStream.cpp.

◆ XLinkStream() [2/3]

dai::XLinkStream::XLinkStream ( const XLinkStream )
delete

◆ XLinkStream() [3/3]

dai::XLinkStream::XLinkStream ( XLinkStream &&  stream)

Definition at line 36 of file XLinkStream.cpp.

◆ ~XLinkStream()

dai::XLinkStream::~XLinkStream ( )

Definition at line 50 of file XLinkStream.cpp.

Member Function Documentation

◆ getStreamId()

streamId_t dai::XLinkStream::getStreamId ( ) const

Definition at line 230 of file XLinkStream.cpp.

◆ operator=() [1/2]

XLinkStream& dai::XLinkStream::operator= ( const XLinkStream )
delete

◆ operator=() [2/2]

XLinkStream & dai::XLinkStream::operator= ( XLinkStream &&  stream)

Definition at line 41 of file XLinkStream.cpp.

◆ read() [1/5]

std::vector< std::uint8_t > dai::XLinkStream::read ( )

Definition at line 113 of file XLinkStream.cpp.

◆ read() [2/5]

void dai::XLinkStream::read ( std::vector< std::uint8_t > &  data)

Definition at line 94 of file XLinkStream.cpp.

◆ read() [3/5]

bool dai::XLinkStream::read ( std::vector< std::uint8_t > &  data,
std::chrono::milliseconds  timeout 
)

Definition at line 195 of file XLinkStream.cpp.

◆ read() [4/5]

void dai::XLinkStream::read ( std::vector< std::uint8_t > &  data,
XLinkTimespec &  timestampReceived 
)

Definition at line 103 of file XLinkStream.cpp.

◆ read() [5/5]

std::vector< std::uint8_t > dai::XLinkStream::read ( XLinkTimespec &  timestampReceived)

Definition at line 119 of file XLinkStream.cpp.

◆ readMove() [1/2]

StreamPacketDesc dai::XLinkStream::readMove ( )

Definition at line 125 of file XLinkStream.cpp.

◆ readMove() [2/2]

bool dai::XLinkStream::readMove ( StreamPacketDesc packet,
const std::chrono::milliseconds  timeout 
)

Definition at line 208 of file XLinkStream.cpp.

◆ readRaw() [1/2]

streamPacketDesc_t * dai::XLinkStream::readRaw ( )

Definition at line 135 of file XLinkStream.cpp.

◆ readRaw() [2/2]

bool dai::XLinkStream::readRaw ( streamPacketDesc_t *&  pPacket,
std::chrono::milliseconds  timeout 
)

Definition at line 219 of file XLinkStream.cpp.

◆ readRawRelease()

void dai::XLinkStream::readRawRelease ( )

Definition at line 145 of file XLinkStream.cpp.

◆ write() [1/6]

void dai::XLinkStream::write ( const std::uint8_t *  data,
std::size_t  size 
)

Definition at line 80 of file XLinkStream.cpp.

◆ write() [2/6]

bool dai::XLinkStream::write ( const std::uint8_t *  data,
std::size_t  size,
std::chrono::milliseconds  timeout 
)

Definition at line 176 of file XLinkStream.cpp.

◆ write() [3/6]

void dai::XLinkStream::write ( const std::vector< std::uint8_t > &  data)

Definition at line 90 of file XLinkStream.cpp.

◆ write() [4/6]

bool dai::XLinkStream::write ( const std::vector< std::uint8_t > &  data,
std::chrono::milliseconds  timeout 
)

Definition at line 191 of file XLinkStream.cpp.

◆ write() [5/6]

void dai::XLinkStream::write ( const void *  data,
std::size_t  size 
)

Definition at line 86 of file XLinkStream.cpp.

◆ write() [6/6]

bool dai::XLinkStream::write ( const void *  data,
std::size_t  size,
std::chrono::milliseconds  timeout 
)

Definition at line 187 of file XLinkStream.cpp.

◆ writeSplit() [1/2]

void dai::XLinkStream::writeSplit ( const std::vector< uint8_t > &  data,
std::size_t  split 
)

Definition at line 168 of file XLinkStream.cpp.

◆ writeSplit() [2/2]

void dai::XLinkStream::writeSplit ( const void *  data,
std::size_t  size,
std::size_t  split 
)

Definition at line 151 of file XLinkStream.cpp.

Member Data Documentation

◆ connection

std::shared_ptr<XLinkConnection> dai::XLinkStream::connection
private

Definition at line 42 of file XLinkStream.hpp.

◆ STREAM_OPEN_RETRIES

constexpr int dai::XLinkStream::STREAM_OPEN_RETRIES = 5
staticconstexprprivate

Definition at line 39 of file XLinkStream.hpp.

◆ streamId

streamId_t dai::XLinkStream::streamId {INVALID_STREAM_ID}
private

Definition at line 44 of file XLinkStream.hpp.

◆ streamName

std::string dai::XLinkStream::streamName
private

Definition at line 43 of file XLinkStream.hpp.

◆ WAIT_FOR_STREAM_RETRY

constexpr std::chrono::milliseconds dai::XLinkStream::WAIT_FOR_STREAM_RETRY {50}
staticconstexprprivate

Definition at line 40 of file XLinkStream.hpp.


The documentation for this class was generated from the following files:


depthai
Author(s): Martin Peterlin
autogenerated on Sat Mar 22 2025 02:58:20