An abstraction for a block of bytes, with optional responsibility for allocating/destroying that block. More...
#include <yarp/os/ManagedBytes.h>
Inheritance diagram for yarp::os::ManagedBytes:Public Member Functions | |
| ManagedBytes () | |
| Constructor. | |
| ManagedBytes (size_t len) | |
| Constructor. | |
| ManagedBytes (const Bytes &ext, bool owned=false) | |
| Constructor. | |
| ManagedBytes (ManagedBytes &&other) noexcept | |
| Move constructor. | |
| ManagedBytes & | operator= (ManagedBytes &&other) noexcept |
| Move assignment operator. | |
| ManagedBytes (const ManagedBytes &alt) | |
| Copy constructor. | |
| const ManagedBytes & | operator= (const ManagedBytes &alt) |
| Assignment operator. | |
| virtual | ~ManagedBytes () |
| Destructor. | |
| void | allocate (size_t len) |
| Makes a data block of the specified length that will be deleted if this object is destroyed. | |
| bool | allocateOnNeed (size_t neededLen, size_t allocateLen) |
| void | copy () |
| Makes sure data block is owned, making a copy if necessary. | |
| size_t | length () const |
| size_t | used () const |
| const char * | get () const |
| char * | get () |
| void | clear () |
| Disassociate object with any data block (deleting block if appropriate). | |
| const Bytes & | bytes () const |
| Bytes & | bytes () |
| Bytes | usedBytes () |
| size_t | setUsed (size_t used) |
| explicitly declare how many of the bytes are in use. | |
| size_t | resetUsed () |
| bool | read (ConnectionReader &reader) override |
| Read this object from a network connection. | |
| bool | write (ConnectionWriter &writer) const override |
| Write this object to a network connection. | |
| bool | isOwner () const |
Public Member Functions inherited from yarp::os::Portable | |
| virtual Type | getType () const |
Public Member Functions inherited from yarp::os::PortReader | |
| virtual | ~PortReader () |
| Destructor. | |
| virtual Type | getReadType () const |
Public Member Functions inherited from yarp::os::PortWriter | |
| virtual | ~PortWriter () |
| Destructor. | |
| virtual void | onCompletion () const |
| This is called when the port has finished all writing operations. | |
| virtual void | onCommencement () const |
| This is called when the port is about to begin writing operations. | |
| virtual yarp::os::Type | getWriteType () const |
Additional Inherited Members | |
Static Public Member Functions inherited from yarp::os::Portable | |
| static bool | copyPortable (const PortWriter &writer, PortReader &reader) |
| Copy one portable to another, via writing and reading. | |
An abstraction for a block of bytes, with optional responsibility for allocating/destroying that block.
Definition at line 20 of file ManagedBytes.h.
|
explicit |
|
explicit |
Constructor.
Makes a data block of the specified length that will be deleted if this object is destroyed.
| len | length of data block |
Definition at line 27 of file ManagedBytes.cpp.
Constructor.
Represent external data.
| ext | address and length of data |
| owned | true if data should be deleted if this object is destroyed |
Definition at line 36 of file ManagedBytes.cpp.
|
noexcept |
Move constructor.
| other | the ManagedBytes to be moved |
Definition at line 67 of file ManagedBytes.cpp.
| ManagedBytes::ManagedBytes | ( | const ManagedBytes & | alt | ) |
Copy constructor.
| alt | the data to copy. If it is "owned" an independent copy is made. |
Definition at line 45 of file ManagedBytes.cpp.
|
virtual |
Destructor.
Definition at line 96 of file ManagedBytes.cpp.
Makes a data block of the specified length that will be deleted if this object is destroyed.
| len | length of data block |
Definition at line 102 of file ManagedBytes.cpp.
Definition at line 112 of file ManagedBytes.cpp.
| Bytes & ManagedBytes::bytes | ( | ) |
Definition at line 179 of file ManagedBytes.cpp.
Definition at line 174 of file ManagedBytes.cpp.
| void ManagedBytes::clear | ( | ) |
Disassociate object with any data block (deleting block if appropriate).
Definition at line 161 of file ManagedBytes.cpp.
| void ManagedBytes::copy | ( | ) |
Makes sure data block is owned, making a copy if necessary.
Definition at line 129 of file ManagedBytes.cpp.
| char * ManagedBytes::get | ( | ) |
Definition at line 156 of file ManagedBytes.cpp.
Definition at line 151 of file ManagedBytes.cpp.
|
inline |
Definition at line 157 of file ManagedBytes.h.
| size_t ManagedBytes::length | ( | ) | const |
Definition at line 141 of file ManagedBytes.cpp.
| const ManagedBytes & ManagedBytes::operator= | ( | const ManagedBytes & | alt | ) |
Assignment operator.
| alt | the data to copy. If it is "owned" an independent copy is made. |
Definition at line 81 of file ManagedBytes.cpp.
|
noexcept |
Move assignment operator.
| other | the MangedBytes to be moved |
Definition at line 72 of file ManagedBytes.cpp.
|
overridevirtual |
Read this object from a network connection.
Override this for your particular class.
| reader | an interface to the network connection for reading |
Implements yarp::os::Portable.
Definition at line 204 of file ManagedBytes.cpp.
| size_t ManagedBytes::resetUsed | ( | ) |
Definition at line 196 of file ManagedBytes.cpp.
explicitly declare how many of the bytes are in use.
| used | byte count |
Definition at line 189 of file ManagedBytes.cpp.
| size_t ManagedBytes::used | ( | ) | const |
Definition at line 146 of file ManagedBytes.cpp.
| Bytes ManagedBytes::usedBytes | ( | ) |
Definition at line 184 of file ManagedBytes.cpp.
|
overridevirtual |
Write this object to a network connection.
Override this for your particular class. Be aware that depending on the nature of the connections a port has, and what protocol they use, and how efficient the YARP implementation is, this method may be called once, twice, or many times, as the result of a single call to Port::write
| writer | an interface to the network connection for writing |
Implements yarp::os::Portable.
Definition at line 226 of file ManagedBytes.cpp.