35 #ifndef ROSBAG_STREAM_H 36 #define ROSBAG_STREAM_H 44 #include "../../../roslz4/include/roslz4/lz4s.h" 46 #include "../../../rosbag_storage/include/rosbag/exceptions.h" 47 #include "../../../rosbag_storage/include/rosbag/macros.h" 70 virtual CompressionType getCompressionType()
const = 0;
72 virtual void write(
void* ptr,
size_t size) = 0;
73 virtual void read (
void* ptr,
size_t size) = 0;
77 virtual void startWrite();
78 virtual void stopWrite();
80 virtual void startRead();
81 virtual void stopRead();
84 FILE* getFilePointer();
86 void setCompressedIn(
uint64_t nbytes);
89 int getUnusedLength();
90 void setUnused(
char* unused);
91 void setUnusedLength(
int nUnused);
103 std::shared_ptr<Stream> getStream(CompressionType
type)
const;
115 CompressionType getCompressionType()
const;
117 void write(
void* ptr,
size_t size);
118 void read(
void* ptr,
size_t size);
131 CompressionType getCompressionType()
const;
134 void write(
void* ptr,
size_t size);
138 void read(
void* ptr,
size_t size);
144 void writeStream(
int action);
std::shared_ptr< Stream > lz4_stream_
ChunkedFile reads and writes files which contain interleaved chunks of compressed and uncompressed da...
std::shared_ptr< Stream > uncompressed_stream_
unsigned __int64 uint64_t
GLsizei GLsizei GLchar * source
#define ROSBAG_DECL
#include <ros/macros.h> // for the DECL's