Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
rosbag::Bag Class Reference

#include <bag.h>

Public Member Functions

 Bag ()
 
 Bag (Bag &&other)
 
 Bag (std::string const &filename, uint32_t mode=bagmode::Read)
 Open a bag file. More...
 
void close ()
 Close the bag file. More...
 
uint32_t getChunkThreshold () const
 Get the threshold for creating new chunks. More...
 
CompressionType getCompression () const
 Get the compression method to use for writing chunks. More...
 
std::string getFileName () const
 Get the filename of the bag. More...
 
uint32_t getMajorVersion () const
 Get the major-version of the open bag file. More...
 
uint32_t getMinorVersion () const
 Get the minor-version of the open bag file. More...
 
BagMode getMode () const
 Get the mode the bag is in. More...
 
uint64_t getSize () const
 Get the current size of the bag file (a lower bound) More...
 
bool isOpen () const
 
void open (std::string const &filename, uint32_t mode=bagmode::Read)
 Open a bag file. More...
 
Bagoperator= (Bag &&other)
 
void setChunkThreshold (uint32_t chunk_threshold)
 Set the threshold for creating new chunks. More...
 
void setCompression (CompressionType compression)
 Set the compression method to use for writing chunks. More...
 
void setEncryptorPlugin (const std::string &plugin_name, const std::string &plugin_param=std::string())
 Set encryptor of the bag file. More...
 
void swap (Bag &)
 
template<class T >
void write (std::string const &topic, ros::MessageEvent< T > const &event)
 Write a message into the bag file. More...
 
template<class T >
void write (std::string const &topic, ros::Time const &time, boost::shared_ptr< T > const &msg, boost::shared_ptr< ros::M_string > connection_header=boost::shared_ptr< ros::M_string >())
 Write a message into the bag file. More...
 
template<class T >
void write (std::string const &topic, ros::Time const &time, boost::shared_ptr< T const > const &msg, boost::shared_ptr< ros::M_string > connection_header=boost::shared_ptr< ros::M_string >())
 Write a message into the bag file. More...
 
template<class T >
void write (std::string const &topic, ros::Time const &time, T const &msg, boost::shared_ptr< ros::M_string > connection_header=boost::shared_ptr< ros::M_string >())
 Write a message into the bag file. More...
 
 ~Bag ()
 

Private Member Functions

void appendConnectionRecordToBuffer (Buffer &buf, ConnectionInfo const *connection_info)
 
void appendDataLengthToBuffer (Buffer &buf, uint32_t data_len)
 
void appendHeaderToBuffer (Buffer &buf, ros::M_string const &fields)
 
 Bag (const Bag &)
 
ros::M_string::const_iterator checkField (ros::M_string const &fields, std::string const &field, unsigned int min_len, unsigned int max_len, bool required) const
 
void closeWrite ()
 
void decompressBz2Chunk (ChunkHeader const &chunk_header) const
 
void decompressChunk (uint64_t chunk_pos) const
 
void decompressLz4Chunk (ChunkHeader const &chunk_header) const
 
void decompressRawChunk (ChunkHeader const &chunk_header) const
 
template<class T >
void doWrite (std::string const &topic, ros::Time const &time, T const &msg, boost::shared_ptr< ros::M_string > const &connection_header)
 
uint32_t getChunkOffset () const
 
void init ()
 
template<class T >
boost::shared_ptr< T > instantiateBuffer (IndexEntry const &index_entry) const
 deserializes the message held in record_buffer_ More...
 
bool isOp (ros::M_string &fields, uint8_t reqOp) const
 
void openAppend (std::string const &filename)
 
void openRead (std::string const &filename)
 
void openWrite (std::string const &filename)
 
Bagoperator= (const Bag &)
 
void read (char *b, std::streamsize n) const
 
void readChunkHeader (ChunkHeader &chunk_header) const
 
void readChunkInfoRecord ()
 
void readConnectionIndexRecord200 ()
 
void readConnectionRecord ()
 
bool readDataLength (uint32_t &data_size) const
 
bool readField (ros::M_string const &fields, std::string const &field_name, bool required, ros::Time &data) const
 
bool readField (ros::M_string const &fields, std::string const &field_name, bool required, std::string &data) const
 
template<typename T >
bool readField (ros::M_string const &fields, std::string const &field_name, bool required, T *data) const
 
bool readField (ros::M_string const &fields, std::string const &field_name, unsigned int min_len, unsigned int max_len, bool required, std::string &data) const
 
void readFileHeaderRecord ()
 
bool readHeader (ros::Header &header) const
 
void readHeaderFromBuffer (Buffer &buffer, uint32_t offset, ros::Header &header, uint32_t &data_size, uint32_t &bytes_read) const
 
ros::Header readMessageDataHeader (IndexEntry const &index_entry)
 
void readMessageDataHeaderFromBuffer (Buffer &buffer, uint32_t offset, ros::Header &header, uint32_t &data_size, uint32_t &bytes_read) const
 
template<typename Stream >
void readMessageDataIntoStream (IndexEntry const &index_entry, Stream &stream) const
 
void readMessageDataRecord102 (uint64_t offset, ros::Header &header) const
 
uint32_t readMessageDataSize (IndexEntry const &index_entry) const
 
void readMessageDefinitionRecord102 ()
 
void readTopicIndexRecord102 ()
 
void readVersion ()
 
void seek (uint64_t pos, int origin=std::ios_base::beg) const
 
void startReadingVersion102 ()
 
void startReadingVersion200 ()
 
void startWriting ()
 
void startWritingChunk (ros::Time time)
 
void stopWriting ()
 
void stopWritingChunk ()
 
std::string toHeaderString (ros::Time const *field) const
 
template<typename T >
std::string toHeaderString (T const *field) const
 
void write (char const *s, std::streamsize n)
 
void write (std::string const &s)
 
void writeChunkHeader (CompressionType compression, uint32_t compressed_size, uint32_t uncompressed_size)
 
void writeChunkInfoRecords ()
 
void writeConnectionRecord (ConnectionInfo const *connection_info, const bool encrypt)
 
void writeConnectionRecords ()
 
void writeDataLength (uint32_t data_len)
 
void writeFileHeaderRecord ()
 
void writeHeader (ros::M_string const &fields)
 
void writeIndexRecords ()
 
template<class T >
void writeMessageDataRecord (uint32_t conn_id, ros::Time const &time, T const &msg)
 
void writeVersion ()
 

Private Attributes

uint32_t bag_revision_
 
Buffer chunk_buffer_
 reusable buffer to read chunk into More...
 
uint32_t chunk_count_
 
bool chunk_open_
 
uint32_t chunk_threshold_
 
std::vector< ChunkInfochunks_
 
CompressionType compression_
 
uint32_t connection_count_
 
std::map< uint32_t, std::multiset< IndexEntry > > connection_indexes_
 
std::map< uint32_t, ConnectionInfo * > connections_
 
std::map< uint32_t, std::multiset< IndexEntry > > curr_chunk_connection_indexes_
 
uint64_t curr_chunk_data_pos_
 
ChunkInfo curr_chunk_info_
 
Buffercurrent_buffer_
 
Buffer decompress_buffer_
 reusable buffer to decompress chunks into More...
 
uint64_t decompressed_chunk_
 position of decompressed chunk More...
 
boost::shared_ptr< rosbag::EncryptorBaseencryptor_
 
pluginlib::ClassLoader< rosbag::EncryptorBaseencryptor_loader_
 
ChunkedFile file_
 
uint64_t file_header_pos_
 
uint64_t file_size_
 
Buffer header_buffer_
 reusable buffer in which to assemble the record header before writing to file More...
 
std::map< ros::M_string, uint32_t > header_connection_ids_
 
uint64_t index_data_pos_
 
BagMode mode_
 
Buffer outgoing_chunk_buffer_
 reusable buffer to read chunk into More...
 
Buffer record_buffer_
 reusable buffer in which to assemble the record data before writing to file More...
 
std::map< std::string, uint32_t > topic_connection_ids_
 
int version_
 

Friends

class MessageInstance
 
class View
 

Detailed Description

Definition at line 131 of file bag.h.

Constructor & Destructor Documentation

◆ Bag() [1/4]

rosbag::Bag::Bag ( )

Definition at line 58 of file bag.cpp.

◆ Bag() [2/4]

rosbag::Bag::Bag ( std::string const &  filename,
uint32_t  mode = bagmode::Read 
)
explicit

Open a bag file.

Parameters
filenameThe bag file to open
modeThe mode to use (either read, write or append)

Can throw BagException

◆ ~Bag()

rosbag::Bag::~Bag ( )

Definition at line 83 of file bag.cpp.

◆ Bag() [3/4]

rosbag::Bag::Bag ( Bag &&  other)

Definition at line 71 of file bag.cpp.

◆ Bag() [4/4]

rosbag::Bag::Bag ( const Bag )
private

Member Function Documentation

◆ appendConnectionRecordToBuffer()

void rosbag::Bag::appendConnectionRecordToBuffer ( Buffer buf,
ConnectionInfo const *  connection_info 
)
private

Definition at line 688 of file bag.cpp.

◆ appendDataLengthToBuffer()

void rosbag::Bag::appendDataLengthToBuffer ( Buffer buf,
uint32_t  data_len 
)
private

Definition at line 1021 of file bag.cpp.

◆ appendHeaderToBuffer()

void rosbag::Bag::appendHeaderToBuffer ( Buffer buf,
ros::M_string const &  fields 
)
private

Definition at line 1007 of file bag.cpp.

◆ checkField()

M_string::const_iterator rosbag::Bag::checkField ( ros::M_string const &  fields,
std::string const &  field,
unsigned int  min_len,
unsigned int  max_len,
bool  required 
) const
private

Definition at line 1099 of file bag.cpp.

◆ close()

void rosbag::Bag::close ( )

Close the bag file.

Definition at line 165 of file bag.cpp.

◆ closeWrite()

void rosbag::Bag::closeWrite ( )
private

Definition at line 186 of file bag.cpp.

◆ decompressBz2Chunk()

void rosbag::Bag::decompressBz2Chunk ( ChunkHeader const &  chunk_header) const
private

Definition at line 842 of file bag.cpp.

◆ decompressChunk()

void rosbag::Bag::decompressChunk ( uint64_t  chunk_pos) const
private

Definition at line 778 of file bag.cpp.

◆ decompressLz4Chunk()

void rosbag::Bag::decompressLz4Chunk ( ChunkHeader const &  chunk_header) const
private

Definition at line 857 of file bag.cpp.

◆ decompressRawChunk()

void rosbag::Bag::decompressRawChunk ( ChunkHeader const &  chunk_header) const
private

Definition at line 832 of file bag.cpp.

◆ doWrite()

template<class T >
void rosbag::Bag::doWrite ( std::string const &  topic,
ros::Time const &  time,
T const &  msg,
boost::shared_ptr< ros::M_string > const &  connection_header 
)
private

Definition at line 516 of file bag.h.

◆ getChunkOffset()

uint32_t rosbag::Bag::getChunkOffset ( ) const
private

Definition at line 423 of file bag.cpp.

◆ getChunkThreshold()

uint32_t rosbag::Bag::getChunkThreshold ( ) const

Get the threshold for creating new chunks.

Definition at line 194 of file bag.cpp.

◆ getCompression()

CompressionType rosbag::Bag::getCompression ( ) const

Get the compression method to use for writing chunks.

Definition at line 203 of file bag.cpp.

◆ getFileName()

string rosbag::Bag::getFileName ( ) const

Get the filename of the bag.

Definition at line 190 of file bag.cpp.

◆ getMajorVersion()

uint32_t rosbag::Bag::getMajorVersion ( ) const

Get the major-version of the open bag file.

Definition at line 258 of file bag.cpp.

◆ getMinorVersion()

uint32_t rosbag::Bag::getMinorVersion ( ) const

Get the minor-version of the open bag file.

Definition at line 259 of file bag.cpp.

◆ getMode()

BagMode rosbag::Bag::getMode ( ) const

Get the mode the bag is in.

Definition at line 191 of file bag.cpp.

◆ getSize()

uint64_t rosbag::Bag::getSize ( ) const

Get the current size of the bag file (a lower bound)

Definition at line 192 of file bag.cpp.

◆ init()

void rosbag::Bag::init ( )
private

Definition at line 87 of file bag.cpp.

◆ instantiateBuffer()

template<class T >
boost::shared_ptr< T > rosbag::Bag::instantiateBuffer ( IndexEntry const &  index_entry) const
private

deserializes the message held in record_buffer_

Definition at line 431 of file bag.h.

◆ isOp()

bool rosbag::Bag::isOp ( ros::M_string fields,
uint8_t  reqOp 
) const
private

Definition at line 989 of file bag.cpp.

◆ isOpen()

bool rosbag::Bag::isOpen ( ) const

Definition at line 1182 of file bag.cpp.

◆ open()

void rosbag::Bag::open ( std::string const &  filename,
uint32_t  mode = bagmode::Read 
)

Open a bag file.

Parameters
filenameThe bag file to open
modeThe mode to use (either read, write or append)

Can throw BagException

Definition at line 105 of file bag.cpp.

◆ openAppend()

void rosbag::Bag::openAppend ( std::string const &  filename)
private

Definition at line 143 of file bag.cpp.

◆ openRead()

void rosbag::Bag::openRead ( std::string const &  filename)
private

Definition at line 124 of file bag.cpp.

◆ openWrite()

void rosbag::Bag::openWrite ( std::string const &  filename)
private

Definition at line 137 of file bag.cpp.

◆ operator=() [1/2]

Bag & rosbag::Bag::operator= ( Bag &&  other)

Definition at line 76 of file bag.cpp.

◆ operator=() [2/2]

Bag& rosbag::Bag::operator= ( const Bag )
private

◆ read()

void rosbag::Bag::read ( char *  b,
std::streamsize  n 
) const
private

Definition at line 1147 of file bag.cpp.

◆ readChunkHeader()

void rosbag::Bag::readChunkHeader ( ChunkHeader chunk_header) const
private

Definition at line 502 of file bag.cpp.

◆ readChunkInfoRecord()

void rosbag::Bag::readChunkInfoRecord ( )
private

Definition at line 944 of file bag.cpp.

◆ readConnectionIndexRecord200()

void rosbag::Bag::readConnectionIndexRecord200 ( )
private

Definition at line 611 of file bag.cpp.

◆ readConnectionRecord()

void rosbag::Bag::readConnectionRecord ( )
private

Definition at line 698 of file bag.cpp.

◆ readDataLength()

bool rosbag::Bag::readDataLength ( uint32_t &  data_size) const
private

Definition at line 1094 of file bag.cpp.

◆ readField() [1/4]

bool rosbag::Bag::readField ( ros::M_string const &  fields,
std::string const &  field_name,
bool  required,
ros::Time data 
) const
private

◆ readField() [2/4]

bool rosbag::Bag::readField ( ros::M_string const &  fields,
std::string const &  field_name,
bool  required,
std::string &  data 
) const
private

◆ readField() [3/4]

template<typename T >
bool rosbag::Bag::readField ( ros::M_string const &  fields,
std::string const &  field_name,
bool  required,
T *  data 
) const
private

Definition at line 394 of file bag.h.

◆ readField() [4/4]

bool rosbag::Bag::readField ( ros::M_string const &  fields,
std::string const &  field_name,
unsigned int  min_len,
unsigned int  max_len,
bool  required,
std::string &  data 
) const
private

◆ readFileHeaderRecord()

void rosbag::Bag::readFileHeaderRecord ( )
private

Definition at line 387 of file bag.cpp.

◆ readHeader()

bool rosbag::Bag::readHeader ( ros::Header header) const
private

Definition at line 1076 of file bag.cpp.

◆ readHeaderFromBuffer()

void rosbag::Bag::readHeaderFromBuffer ( Buffer buffer,
uint32_t  offset,
ros::Header header,
uint32_t &  data_size,
uint32_t &  bytes_read 
) const
private
Todo:
clean this up

Definition at line 1030 of file bag.cpp.

◆ readMessageDataHeader()

ros::Header rosbag::Bag::readMessageDataHeader ( IndexEntry const &  index_entry)
private

Definition at line 873 of file bag.cpp.

◆ readMessageDataHeaderFromBuffer()

void rosbag::Bag::readMessageDataHeaderFromBuffer ( Buffer buffer,
uint32_t  offset,
ros::Header header,
uint32_t &  data_size,
uint32_t &  bytes_read 
) const
private

Definition at line 1056 of file bag.cpp.

◆ readMessageDataIntoStream()

template<typename Stream >
void rosbag::Bag::readMessageDataIntoStream ( IndexEntry const &  index_entry,
Stream stream 
) const
private

Definition at line 403 of file bag.h.

◆ readMessageDataRecord102()

void rosbag::Bag::readMessageDataRecord102 ( uint64_t  offset,
ros::Header header 
) const
private

Definition at line 809 of file bag.cpp.

◆ readMessageDataSize()

uint32_t rosbag::Bag::readMessageDataSize ( IndexEntry const &  index_entry) const
private

Definition at line 892 of file bag.cpp.

◆ readMessageDefinitionRecord102()

void rosbag::Bag::readMessageDefinitionRecord102 ( )
private

Definition at line 734 of file bag.cpp.

◆ readTopicIndexRecord102()

void rosbag::Bag::readTopicIndexRecord102 ( )
private

Definition at line 549 of file bag.cpp.

◆ readVersion()

void rosbag::Bag::readVersion ( )
private

Definition at line 239 of file bag.cpp.

◆ seek()

void rosbag::Bag::seek ( uint64_t  pos,
int  origin = std::ios_base::beg 
) const
private

Definition at line 1148 of file bag.cpp.

◆ setChunkThreshold()

void rosbag::Bag::setChunkThreshold ( uint32_t  chunk_threshold)

Set the threshold for creating new chunks.

Definition at line 196 of file bag.cpp.

◆ setCompression()

void rosbag::Bag::setCompression ( CompressionType  compression)

Set the compression method to use for writing chunks.

Definition at line 205 of file bag.cpp.

◆ setEncryptorPlugin()

void rosbag::Bag::setEncryptorPlugin ( const std::string &  plugin_name,
const std::string &  plugin_param = std::string() 
)

Set encryptor of the bag file.

Parameters
plugin_nameThe name of the encryptor plugin
plugin_paramThe string parameter to be passed to the plugin initialization method

Call this method to specify an encryptor for writing bag contents. This method need not be called when reading or appending a bag file: The encryptor is read from the bag file header.

Definition at line 219 of file bag.cpp.

◆ startReadingVersion102()

void rosbag::Bag::startReadingVersion102 ( )
private

Definition at line 318 of file bag.cpp.

◆ startReadingVersion200()

void rosbag::Bag::startReadingVersion200 ( )
private

Definition at line 283 of file bag.cpp.

◆ startWriting()

void rosbag::Bag::startWriting ( )
private

Definition at line 263 of file bag.cpp.

◆ startWritingChunk()

void rosbag::Bag::startWritingChunk ( ros::Time  time)
private

Definition at line 430 of file bag.cpp.

◆ stopWriting()

void rosbag::Bag::stopWriting ( )
private

Definition at line 269 of file bag.cpp.

◆ stopWritingChunk()

void rosbag::Bag::stopWritingChunk ( )
private

Definition at line 448 of file bag.cpp.

◆ swap()

void rosbag::Bag::swap ( Bag other)

Definition at line 1150 of file bag.cpp.

◆ toHeaderString() [1/2]

std::string rosbag::Bag::toHeaderString ( ros::Time const *  field) const
private

Definition at line 1136 of file bag.cpp.

◆ toHeaderString() [2/2]

template<typename T >
std::string rosbag::Bag::toHeaderString ( T const *  field) const
private

Definition at line 389 of file bag.h.

◆ write() [1/6]

void rosbag::Bag::write ( char const *  s,
std::streamsize  n 
)
private

Definition at line 1145 of file bag.cpp.

◆ write() [2/6]

void rosbag::Bag::write ( std::string const &  s)
private

◆ write() [3/6]

template<class T >
void rosbag::Bag::write ( std::string const &  topic,
ros::MessageEvent< T > const &  event 
)

Write a message into the bag file.

Parameters
topicThe topic name
eventThe message event to be added

Can throw BagIOException

Definition at line 369 of file bag.h.

◆ write() [4/6]

template<class T >
void rosbag::Bag::write ( std::string const &  topic,
ros::Time const &  time,
boost::shared_ptr< T > const &  msg,
boost::shared_ptr< ros::M_string connection_header = boost::shared_ptr<ros::M_string>() 
)

Write a message into the bag file.

Parameters
topicThe topic name
timeTimestamp of the message
msgThe message to be added
connection_headerA connection header.

Can throw BagIOException

Definition at line 384 of file bag.h.

◆ write() [5/6]

template<class T >
void rosbag::Bag::write ( std::string const &  topic,
ros::Time const &  time,
boost::shared_ptr< T const > const &  msg,
boost::shared_ptr< ros::M_string connection_header = boost::shared_ptr<ros::M_string>() 
)

Write a message into the bag file.

Parameters
topicThe topic name
timeTimestamp of the message
msgThe message to be added
connection_headerA connection header.

Can throw BagIOException

Definition at line 379 of file bag.h.

◆ write() [6/6]

template<class T >
void rosbag::Bag::write ( std::string const &  topic,
ros::Time const &  time,
T const &  msg,
boost::shared_ptr< ros::M_string connection_header = boost::shared_ptr<ros::M_string>() 
)

Write a message into the bag file.

Parameters
topicThe topic name
timeTimestamp of the message
msgThe message to be added
connection_headerA connection header.

Can throw BagIOException

Definition at line 374 of file bag.h.

◆ writeChunkHeader()

void rosbag::Bag::writeChunkHeader ( CompressionType  compression,
uint32_t  compressed_size,
uint32_t  uncompressed_size 
)
private

Definition at line 479 of file bag.cpp.

◆ writeChunkInfoRecords()

void rosbag::Bag::writeChunkInfoRecords ( )
private

Definition at line 910 of file bag.cpp.

◆ writeConnectionRecord()

void rosbag::Bag::writeConnectionRecord ( ConnectionInfo const *  connection_info,
const bool  encrypt 
)
private

Definition at line 668 of file bag.cpp.

◆ writeConnectionRecords()

void rosbag::Bag::writeConnectionRecords ( )
private

Definition at line 661 of file bag.cpp.

◆ writeDataLength()

void rosbag::Bag::writeDataLength ( uint32_t  data_len)
private

Definition at line 1003 of file bag.cpp.

◆ writeFileHeaderRecord()

void rosbag::Bag::writeFileHeaderRecord ( )
private

Definition at line 354 of file bag.cpp.

◆ writeHeader()

void rosbag::Bag::writeHeader ( ros::M_string const &  fields)
private

Definition at line 995 of file bag.cpp.

◆ writeIndexRecords()

void rosbag::Bag::writeIndexRecords ( )
private

Definition at line 520 of file bag.cpp.

◆ writeMessageDataRecord()

template<class T >
void rosbag::Bag::writeMessageDataRecord ( uint32_t  conn_id,
ros::Time const &  time,
T const &  msg 
)
private

Definition at line 630 of file bag.h.

◆ writeVersion()

void rosbag::Bag::writeVersion ( )
private

Definition at line 229 of file bag.cpp.

Friends And Related Function Documentation

◆ MessageInstance

friend class MessageInstance
friend

Definition at line 133 of file bag.h.

◆ View

friend class View
friend

Definition at line 134 of file bag.h.

Member Data Documentation

◆ bag_revision_

uint32_t rosbag::Bag::bag_revision_
private

Definition at line 352 of file bag.h.

◆ chunk_buffer_

Buffer rosbag::Bag::chunk_buffer_
mutableprivate

reusable buffer to read chunk into

Definition at line 377 of file bag.h.

◆ chunk_count_

uint32_t rosbag::Bag::chunk_count_
private

Definition at line 358 of file bag.h.

◆ chunk_open_

bool rosbag::Bag::chunk_open_
private

Definition at line 361 of file bag.h.

◆ chunk_threshold_

uint32_t rosbag::Bag::chunk_threshold_
private

Definition at line 351 of file bag.h.

◆ chunks_

std::vector<ChunkInfo> rosbag::Bag::chunks_
private

Definition at line 369 of file bag.h.

◆ compression_

CompressionType rosbag::Bag::compression_
private

Definition at line 350 of file bag.h.

◆ connection_count_

uint32_t rosbag::Bag::connection_count_
private

Definition at line 357 of file bag.h.

◆ connection_indexes_

std::map<uint32_t, std::multiset<IndexEntry> > rosbag::Bag::connection_indexes_
private

Definition at line 371 of file bag.h.

◆ connections_

std::map<uint32_t, ConnectionInfo*> rosbag::Bag::connections_
private

Definition at line 367 of file bag.h.

◆ curr_chunk_connection_indexes_

std::map<uint32_t, std::multiset<IndexEntry> > rosbag::Bag::curr_chunk_connection_indexes_
private

Definition at line 372 of file bag.h.

◆ curr_chunk_data_pos_

uint64_t rosbag::Bag::curr_chunk_data_pos_
private

Definition at line 363 of file bag.h.

◆ curr_chunk_info_

ChunkInfo rosbag::Bag::curr_chunk_info_
private

Definition at line 362 of file bag.h.

◆ current_buffer_

Buffer* rosbag::Bag::current_buffer_
mutableprivate

Definition at line 382 of file bag.h.

◆ decompress_buffer_

Buffer rosbag::Bag::decompress_buffer_
mutableprivate

reusable buffer to decompress chunks into

Definition at line 378 of file bag.h.

◆ decompressed_chunk_

uint64_t rosbag::Bag::decompressed_chunk_
mutableprivate

position of decompressed chunk

Definition at line 384 of file bag.h.

◆ encryptor_

boost::shared_ptr<rosbag::EncryptorBase> rosbag::Bag::encryptor_
private

Definition at line 389 of file bag.h.

◆ encryptor_loader_

pluginlib::ClassLoader<rosbag::EncryptorBase> rosbag::Bag::encryptor_loader_
private

Definition at line 387 of file bag.h.

◆ file_

ChunkedFile rosbag::Bag::file_
mutableprivate

Definition at line 348 of file bag.h.

◆ file_header_pos_

uint64_t rosbag::Bag::file_header_pos_
private

Definition at line 355 of file bag.h.

◆ file_size_

uint64_t rosbag::Bag::file_size_
private

Definition at line 354 of file bag.h.

◆ header_buffer_

Buffer rosbag::Bag::header_buffer_
mutableprivate

reusable buffer in which to assemble the record header before writing to file

Definition at line 374 of file bag.h.

◆ header_connection_ids_

std::map<ros::M_string, uint32_t> rosbag::Bag::header_connection_ids_
private

Definition at line 366 of file bag.h.

◆ index_data_pos_

uint64_t rosbag::Bag::index_data_pos_
private

Definition at line 356 of file bag.h.

◆ mode_

BagMode rosbag::Bag::mode_
private

Definition at line 347 of file bag.h.

◆ outgoing_chunk_buffer_

Buffer rosbag::Bag::outgoing_chunk_buffer_
mutableprivate

reusable buffer to read chunk into

Definition at line 380 of file bag.h.

◆ record_buffer_

Buffer rosbag::Bag::record_buffer_
mutableprivate

reusable buffer in which to assemble the record data before writing to file

Definition at line 375 of file bag.h.

◆ topic_connection_ids_

std::map<std::string, uint32_t> rosbag::Bag::topic_connection_ids_
private

Definition at line 365 of file bag.h.

◆ version_

int rosbag::Bag::version_
private

Definition at line 349 of file bag.h.


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


rosbag_storage
Author(s): Dirk Thomas , Jacob Perron
autogenerated on Sat Sep 14 2024 02:59:52