AMPS C/C++ Client Class Reference
AMPS C/C++ Client Version 5.3.3.2
AMPS::Buffer Class Referenceabstract

Abstract base class for implementing a buffer to be used by a StoreImpl for storage of publish messages for possible replay to AMPS. More...

#include <Buffer.hpp>

+ Inheritance diagram for AMPS::Buffer:

Public Member Functions

virtual size_t getSize () const =0
 Get the current size of the Buffer in bytes. More...
 
virtual void setSize (size_t newSize_)=0
 Set the size for the buffer. More...
 
virtual size_t getPosition () const =0
 Get the current position in the buffer. More...
 
virtual void setPosition (size_t position_)=0
 Set the buffer postion to a location. More...
 
virtual void putByte (char byte_)=0
 Put a byte into the buffer at the current position and advance. More...
 
virtual char getByte ()=0
 Get the next byte from the buffer and advance. More...
 
virtual void putUint32 (amps_uint32_t i_)=0
 Put an unsigned 32-bit int value into the buffer at the current position and advance past the end of it. More...
 
virtual amps_uint32_t getUint32 ()=0
 Get the unsigned 32-bit int value at the current buffer position and advance past it. More...
 
virtual void putInt32 (amps_int32_t i_)=0
 Put a 32-bit int value into the buffer and advance past it. More...
 
virtual amps_int32_t getInt32 ()=0
 Get the 32-bit int value at the current buffer position and advance past it. More...
 
virtual void putSizet (size_t s_)=0
 Put a size_t value into the buffer at the current position and advance past it. More...
 
virtual size_t getSizet ()=0
 Get a size_t value at the current buffer position and advance past it. More...
 
virtual void putUint64 (amps_uint64_t ui_)=0
 Put an amps_uint64_t value into the buffer at the current position and advance past it. More...
 
virtual amps_uint64_t getUint64 ()=0
 Get an unsigned 64-bit int value at the current buffer position and advance past it. More...
 
virtual void putInt64 (amps_int64_t i_)=0
 Put an amps_int64_t value into the buffer at the current position and advance past it. More...
 
virtual amps_int64_t getInt64 ()=0
 Get a 64-bit int value at the current buffer position and advance past it. More...
 
virtual void putBytes (const char *data_, size_t dataLength_)=0
 Put the given length of bytes in data into the buffer at the current position and advance past them. More...
 
virtual void putBytes (const ByteArray &bytes_)=0
 Put the given bytes into the buffer at the current position and advance past them. More...
 
virtual ByteArray getBytes (size_t numBytes_)=0
 Get the given number of bytes from the buffer. More...
 
virtual void copyBytes (char *buffer_, size_t numBytes_)=0
 Copy the given number of bytes from this buffer to the given buffer. More...
 
virtual void zero (size_t offset_, size_t length_)=0
 Set the given number of bytes in the buffer to zero starting at the given position. More...
 
virtual void copyBytes (size_t destination_, size_t source_, size_t number_)=0
 Move the given number of bytes at the given location to the new location Buffer should do this in the most optimal fashion. More...
 

Detailed Description

Abstract base class for implementing a buffer to be used by a StoreImpl for storage of publish messages for possible replay to AMPS.

Member Function Documentation

virtual void AMPS::Buffer::copyBytes ( char *  buffer_,
size_t  numBytes_ 
)
pure virtual

Copy the given number of bytes from this buffer to the given buffer.

Parameters
buffer_The destination for the copied bytes.
numBytes_The number of bytes to get from the buffer.

Implemented in AMPS::MemoryStoreBuffer.

virtual void AMPS::Buffer::copyBytes ( size_t  destination_,
size_t  source_,
size_t  number_ 
)
pure virtual

Move the given number of bytes at the given location to the new location Buffer should do this in the most optimal fashion.

Parameters
destination_The destination offset to copy the bytes to
source_The source offset in the buffer to copy from
number_The number of bytes to move

Implemented in AMPS::MemoryStoreBuffer.

virtual char AMPS::Buffer::getByte ( )
pure virtual

Get the next byte from the buffer and advance.

Returns
The byte at the current position.

Implemented in AMPS::MemoryStoreBuffer.

virtual ByteArray AMPS::Buffer::getBytes ( size_t  numBytes_)
pure virtual

Get the given number of bytes from the buffer.

Parameters
numBytes_The number of bytes to get from the buffer.
Returns
The bytes from the buffer.

Implemented in AMPS::MemoryStoreBuffer.

virtual amps_int32_t AMPS::Buffer::getInt32 ( )
pure virtual

Get the 32-bit int value at the current buffer position and advance past it.

Returns
The 32-bit int value at the current position.

Implemented in AMPS::MemoryStoreBuffer.

virtual amps_int64_t AMPS::Buffer::getInt64 ( )
pure virtual

Get a 64-bit int value at the current buffer position and advance past it.

Returns
The amps_int64_t value.

Implemented in AMPS::MemoryStoreBuffer.

virtual size_t AMPS::Buffer::getPosition ( ) const
pure virtual

Get the current position in the buffer.

Returns
The position in the buffer.

Implemented in AMPS::MemoryStoreBuffer.

virtual size_t AMPS::Buffer::getSize ( ) const
pure virtual

Get the current size of the Buffer in bytes.

Returns
The size in bytes.

Implemented in AMPS::MemoryStoreBuffer.

virtual size_t AMPS::Buffer::getSizet ( )
pure virtual

Get a size_t value at the current buffer position and advance past it.

Returns
The size_t value.

Implemented in AMPS::MemoryStoreBuffer.

virtual amps_uint32_t AMPS::Buffer::getUint32 ( )
pure virtual

Get the unsigned 32-bit int value at the current buffer position and advance past it.

Returns
The unsigned 32-bit int value.

Implemented in AMPS::MemoryStoreBuffer.

virtual amps_uint64_t AMPS::Buffer::getUint64 ( )
pure virtual

Get an unsigned 64-bit int value at the current buffer position and advance past it.

Returns
The amps_uint64_t value.

Implemented in AMPS::MemoryStoreBuffer.

virtual void AMPS::Buffer::putByte ( char  byte_)
pure virtual

Put a byte into the buffer at the current position and advance.

Parameters
byte_The byte to put in the buffer.

Implemented in AMPS::MemoryStoreBuffer.

virtual void AMPS::Buffer::putBytes ( const char *  data_,
size_t  dataLength_ 
)
pure virtual

Put the given length of bytes in data into the buffer at the current position and advance past them.

Parameters
data_A pointer to the beginning of the bytes to write.
dataLength_The number of bytes from data_ to write.

Implemented in AMPS::MemoryStoreBuffer.

virtual void AMPS::Buffer::putBytes ( const ByteArray &  bytes_)
pure virtual

Put the given bytes into the buffer at the current position and advance past them.

Parameters
bytes_The bytes to write into the buffer.

Implemented in AMPS::MemoryStoreBuffer.

virtual void AMPS::Buffer::putInt32 ( amps_int32_t  i_)
pure virtual

Put a 32-bit int value into the buffer and advance past it.

Parameters
i_The 32-bit int value.

Implemented in AMPS::MemoryStoreBuffer.

virtual void AMPS::Buffer::putInt64 ( amps_int64_t  i_)
pure virtual

Put an amps_int64_t value into the buffer at the current position and advance past it.

Parameters
i_The amps_int64_t value.

Implemented in AMPS::MemoryStoreBuffer.

virtual void AMPS::Buffer::putSizet ( size_t  s_)
pure virtual

Put a size_t value into the buffer at the current position and advance past it.

Parameters
s_The size_t value.

Implemented in AMPS::MemoryStoreBuffer.

virtual void AMPS::Buffer::putUint32 ( amps_uint32_t  i_)
pure virtual

Put an unsigned 32-bit int value into the buffer at the current position and advance past the end of it.

Parameters
i_The unsigned 32-bit int value to write to the buffer.

Implemented in AMPS::MemoryStoreBuffer.

virtual void AMPS::Buffer::putUint64 ( amps_uint64_t  ui_)
pure virtual

Put an amps_uint64_t value into the buffer at the current position and advance past it.

Parameters
ui_The amps_uint64_t value.

Implemented in AMPS::MemoryStoreBuffer.

virtual void AMPS::Buffer::setPosition ( size_t  position_)
pure virtual

Set the buffer postion to a location.

Parameters
position_The new buffer position.

Implemented in AMPS::MemoryStoreBuffer.

virtual void AMPS::Buffer::setSize ( size_t  newSize_)
pure virtual

Set the size for the buffer.

Parameters
newSize_The new size in bytes for the buffer.

Implemented in AMPS::MMapStoreBuffer, and AMPS::MemoryStoreBuffer.

virtual void AMPS::Buffer::zero ( size_t  offset_,
size_t  length_ 
)
pure virtual

Set the given number of bytes in the buffer to zero starting at the given position.

Parameters
offset_The position at which to start setting bytes to 0.
length_The number of bytes to set to zero.

Implemented in AMPS::MemoryStoreBuffer.


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