13 #ifndef __SHAWN_APPS_TCPIP_STORAGE_H
14 #define __SHAWN_APPS_TCPIP_STORAGE_H
17 #include <shawn_config.h>
18 #include "_apps_enable_cmake.h"
45 StorageType::const_iterator
iter_;
54 void checkReadSafe(
unsigned int num)
const throw(std::invalid_argument);
69 Storage(
const unsigned char[],
int length=-1);
75 virtual unsigned int position()
const;
81 virtual unsigned char readChar()
throw(std::invalid_argument);
84 virtual
int readByte() throw(std::invalid_argument);
85 virtual
void writeByte(
int) throw(std::invalid_argument);
91 virtual std::
string readString() throw(std::invalid_argument);
92 virtual
void writeString(const std::
string& s) throw();
94 virtual std::vector<std::
string>
readStringList() throw(std::invalid_argument);
95 virtual
void writeStringList(const std::vector<std::
string> &s) throw();
97 virtual
int readShort() throw(std::invalid_argument);
98 virtual
void writeShort(
int) throw(std::invalid_argument);
100 virtual
int readInt() throw(std::invalid_argument);
103 virtual
float readFloat() throw(std::invalid_argument);
106 virtual
double readDouble() throw(std::invalid_argument);
109 virtual
void writePacket(
unsigned char* packet,
int length);
110 virtual
void writePacket(const std::vector<
unsigned char> &packet);
117 StorageType::const_iterator
begin()
const {
return store.begin(); }
118 StorageType::const_iterator
end()
const {
return store.end(); }
124 #endif // BUILD_TCPIP
void init()
Used in constructors to initialize local variables.
virtual std::vector< std::string > readStringList()
virtual unsigned int position() const
virtual double readDouble()
StorageType::size_type size() const
virtual void writePacket(unsigned char *packet, int length)
void checkReadSafe(unsigned int num) const
Check if the next num bytes can be read safely.
virtual void writeUnsignedByte(int)
virtual unsigned char readChar()
std::vector< unsigned char > StorageType
virtual void writeInt(int)
void writeByEndianess(const unsigned char *begin, unsigned int size)
Write size elements of array begin according to endianess.
virtual int readUnsignedByte()
virtual void writeChar(unsigned char)
Storage()
Standard Constructor.
void readByEndianess(unsigned char *array, int size)
Read size elements into array according to endianess.
StorageType::const_iterator end() const
virtual void writeByte(int)
virtual void writeStringList(const std::vector< std::string > &s)
void Socket::const throw(SocketException)
virtual void writeShort(int)
virtual std::string readString()
virtual void writeStorage(tcpip::Storage &store)
virtual void writeFloat(float)
virtual void writeString(const std::string &s)
StorageType::const_iterator iter_
unsigned char readCharUnsafe()
Read a byte without validity check.
virtual float readFloat()
StorageType::const_iterator begin() const
virtual void writeDouble(double)
std::string hexDump() const
Dump storage content as series of hex values.