YARP
Yet Another Robot Platform
yarp::os::StringInputStream Class Reference

An InputStream that reads from a string. More...

#include <yarp/os/StringInputStream.h>

+ Inheritance diagram for yarp::os::StringInputStream:

Detailed Description

An InputStream that reads from a string.

Handy For testing purposes.

Definition at line 24 of file StringInputStream.h.

Public Member Functions

 StringInputStream ()
 
void reset ()
 
void reset (const std::string &str)
 
void add (const std::string &txt)
 
void add (const Bytes &b)
 
yarp::conf::ssize_t read (Bytes &b) override
 Read a block of data from the stream. More...
 
void close () override
 Terminate the stream. More...
 
virtual std::string toString () const
 
bool isOk () const override
 Check if the stream is ok or in an error state. More...
 
- Public Member Functions inherited from yarp::os::InputStream
 InputStream ()
 Constructor. More...
 
virtual ~InputStream ()
 Destructor. More...
 
virtual void check ()
 Perform maintenance actions, if needed. More...
 
virtual int read ()
 Read and return a single byte. More...
 
virtual yarp::conf::ssize_t read (Bytes &b, size_t offset, yarp::conf::ssize_t len)
 Read a block of data from the stream. More...
 
virtual yarp::conf::ssize_t partialRead (yarp::os::Bytes &b)
 Like read, but solicit partial responses. More...
 
virtual void interrupt ()
 Interrupt the stream. More...
 
virtual bool setReadTimeout (double timeout)
 Set activity timeout. More...
 
std::string readLine (int terminal='\n', bool *success=nullptr)
 Read a block of text terminated with a specific marker (or EOF). More...
 
yarp::conf::ssize_t readFull (Bytes &b)
 Keep reading until buffer is full. More...
 
yarp::conf::ssize_t readDiscard (size_t len)
 Read and discard a fixed number of bytes. More...
 
virtual bool setReadEnvelopeCallback (readEnvelopeCallbackType callback, void *data)
 Install a callback that the InputStream will have to call when the envelope is read from a message in carriers that cannot be escaped. More...
 

Private Attributes

std::string data
 
unsigned int at
 

Additional Inherited Members

- Public Types inherited from yarp::os::InputStream
typedef void(* readEnvelopeCallbackType) (void *, const yarp::os::Bytes &envelope)
 Callback type for setting the envelope from a message in carriers that cannot be escaped. More...
 

Constructor & Destructor Documentation

◆ StringInputStream()

yarp::os::StringInputStream::StringInputStream ( )
inline

Definition at line 29 of file StringInputStream.h.

Member Function Documentation

◆ add() [1/2]

void yarp::os::StringInputStream::add ( const std::string &  txt)
inline

Definition at line 47 of file StringInputStream.h.

◆ add() [2/2]

void yarp::os::StringInputStream::add ( const Bytes b)
inline

Definition at line 52 of file StringInputStream.h.

◆ close()

void yarp::os::StringInputStream::close ( )
inlineoverridevirtual

Terminate the stream.

Implements yarp::os::InputStream.

Definition at line 74 of file StringInputStream.h.

◆ isOk()

bool yarp::os::StringInputStream::isOk ( ) const
inlineoverridevirtual

Check if the stream is ok or in an error state.

Returns
true iff the stream is ok

Implements yarp::os::InputStream.

Definition at line 81 of file StringInputStream.h.

◆ read()

yarp::conf::ssize_t yarp::os::StringInputStream::read ( Bytes b)
inlineoverridevirtual

Read a block of data from the stream.

Should block and wait for data.

Parameters
b[out]the block of data to read to
Returns
the number of bytes read, or -1 upon error

Implements yarp::os::InputStream.

Definition at line 59 of file StringInputStream.h.

◆ reset() [1/2]

void yarp::os::StringInputStream::reset ( )
inline

Definition at line 35 of file StringInputStream.h.

◆ reset() [2/2]

void yarp::os::StringInputStream::reset ( const std::string &  str)
inline

Definition at line 41 of file StringInputStream.h.

◆ toString()

virtual std::string yarp::os::StringInputStream::toString ( ) const
inlinevirtual

Definition at line 76 of file StringInputStream.h.

Member Data Documentation

◆ at

unsigned int yarp::os::StringInputStream::at
private

Definition at line 88 of file StringInputStream.h.

◆ data

std::string yarp::os::StringInputStream::data
private

Definition at line 87 of file StringInputStream.h.


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