21 #ifndef INCLUDE_OLA_IO_IOSTACK_H_ 22 #define INCLUDE_OLA_IO_IOSTACK_H_ 25 #include <ola/io/IOVecInterface.h> 26 #include <ola/io/InputBuffer.h> 27 #include <ola/io/OutputBuffer.h> 49 unsigned int Size()
const;
53 return m_blocks.empty() ||
Size() == 0;
57 void Write(
const uint8_t *data,
unsigned int length);
60 unsigned int Read(uint8_t *data,
unsigned int length);
61 unsigned int Read(std::string *output,
unsigned int length);
65 void Pop(
unsigned int n);
73 void Dump(std::ostream *output);
76 typedef std::deque<class MemoryBlock*> BlockVector;
90 #endif // INCLUDE_OLA_IO_IOSTACK_H_ void MoveToIOQueue(class IOQueue *queue)
Definition: IOStack.cpp:204
#define DISALLOW_COPY_AND_ASSIGN(TypeName)
Creates dummy copy constructor and assignment operator declarations.
Definition: Macro.h:44
Definition: OutputBuffer.h:36
void Dump(std::ostream *output)
Definition: IOStack.cpp:220
unsigned int Size() const
Definition: IOStack.cpp:71
~IOStack()
Definition: IOStack.cpp:57
void Write(const uint8_t *data, unsigned int length)
Definition: IOStack.cpp:86
Definition: IOVecInterface.h:36
Definition: IOVecInterface.h:53
unsigned int Read(uint8_t *data, unsigned int length)
Definition: IOStack.cpp:106
The namespace containing all OLA symbols.
Definition: Credentials.cpp:44
IOStack()
Definition: IOStack.cpp:43
MemoryBlockPool. This class is not thread safe.
Definition: MemoryBlockPool.h:35
void Pop(unsigned int n)
Definition: IOStack.cpp:182
const struct IOVec * AsIOVec(int *io_count) const
Definition: IOStack.cpp:157