Class FastBuffer
Defined in File FastBuffer.h
Class Documentation
-
class FastBuffer
This class represents a stream of bytes that contains (or will contain) serialized data. This class is used by the serializers to serialize or deserialize using their representation.
Public Types
-
typedef _FastBuffer_iterator iterator
Public Functions
-
FastBuffer() = default
This constructor creates an internal stream and assigns it to the eprosima::fastcdr::FastBuffers object. The user can obtain this internal stream using the function eprosima::fastcdr::FastBuffers::getBuffer(). Be careful because this internal stream is deleted in the destruction of the eprosima::fastcdr::FastBuffers object.
-
FastBuffer(char *const buffer, const size_t bufferSize)
This constructor assigns the user’s stream of bytes to the eprosima::fastcdr::FastBuffers object. The user’s stream will be used to serialize.
- Parameters:
buffer – The user’s buffer that will be used. This buffer is not deallocated in the object’s destruction. Cannot be NULL.
bufferSize – The length of user’s buffer.
-
inline FastBuffer(FastBuffer &&fbuffer)
Move constructor.
-
inline FastBuffer &operator=(FastBuffer &&fbuffer)
Move assignment.
-
virtual ~FastBuffer()
Default destructor.
-
inline char *getBuffer() const
This function returns the stream that the eprosima::fastcdr::FastBuffers uses to serialize data.
- Returns:
The stream used by eprosima::fastcdr::FastBuffers to serialize data.
-
inline size_t getBufferSize() const
This function returns the size of the allocated memory of the stream that the eprosima::fastcdr::FastBuffers uses to serialize data.
- Returns:
The size of the allocated memory of the stream used by the eprosima::fastcdr::FastBuffers to serialize data.
-
inline iterator begin()
This function returns a iterator that points to the begining of the stream.
- Returns:
The new iterator.
-
inline iterator end()
This function returns a iterator that points to the end of the stream.
- Returns:
The new iterator.
-
bool reserve(size_t size)
This function reserves memory for the internal raw buffer. It will only do so if the buffer is not yet allocated and is not externally set.
- Parameters:
size – The size of the memory to be allocated.
- Returns:
True if the allocation suceeded. False if the raw buffer was set externally or is already allocated.
-
bool resize(size_t min_size_inc)
This function resizes the raw buffer. It will call the user’s defined function for this purpose.
- Parameters:
min_size_inc – The minimun growth expected of the current raw buffer.
- Returns:
True if the operation works. False if it does not.
-
typedef _FastBuffer_iterator iterator