Namespaces | Classes | Typedefs | Functions | Variables
rosbag Namespace Reference

Namespaces

 bagmode
 
 compression
 

Classes

class  AesCbcEncryptor
 
class  Bag
 
struct  BagCallback
 
class  BagCallbackT
 
class  BagCallbackT< MessageInstance >
 
class  BagException
 Base class for rosbag exceptions. More...
 
class  BagFormatException
 Exception thrown on problems reading the bag format. More...
 
class  BagIOException
 Exception thrown when on IO problems. More...
 
class  BagPlayer
 
struct  BagQuery
 Pairs of queries and the bags they come from (used internally by View) More...
 
class  BagUnindexedException
 Exception thrown on problems reading the bag index. More...
 
class  Buffer
 
class  BZ2Stream
 
class  ChunkedFile
 ChunkedFile reads and writes files which contain interleaved chunks of compressed and uncompressed data. More...
 
struct  ChunkHeader
 
struct  ChunkInfo
 
struct  ConnectionInfo
 
class  EncryptorBase
 
class  FileAccessor
 
struct  IndexEntry
 
struct  IndexEntryCompare
 
class  LZ4Stream
 
class  MessageInstance
 A class pointing into a bag file. More...
 
struct  MessageRange
 
class  NoEncryptor
 
class  Query
 
class  Stream
 
class  StreamFactory
 
class  TopicQuery
 
class  TypeQuery
 
class  UncompressedStream
 
class  View
 
struct  ViewIterHelper
 The actual iterator data structure. More...
 
struct  ViewIterHelperCompare
 

Typedefs

typedef bagmode::BagMode BagMode
 
typedef compression::CompressionType CompressionType
 

Functions

static std::basic_string< unsigned char > decryptStringGpg (std::string const &user, std::string const &input)
 Decrypt string using GPGME. More...
 
static std::string encryptStringGpg (std::string &user, std::basic_string< unsigned char > const &input)
 Encrypt string using GPGME. More...
 
void getGpgKey (gpgme_ctx_t &ctx, std::string const &user, gpgme_key_t &key)
 Get GPG key. More...
 
void initGpgme ()
 Initialize GPGME library. More...
 
static std::string readHeaderField (ros::M_string const &header_fields, std::string const &field_name)
 
void swap (Buffer &a, Buffer &b)
 
void swap (ChunkedFile &a, ChunkedFile &b)
 
void swap (Bag &a, Bag &b)
 

Variables

static const std::string CALLERID_FIELD_NAME = "callerid"
 
static const std::string CHUNK_COUNT_FIELD_NAME = "chunk_count"
 
static const uint32_t CHUNK_INFO_VERSION = 1
 
static const std::string CHUNK_POS_FIELD_NAME = "chunk_pos"
 
static const std::string COMPRESSION_BZ2 = "bz2"
 
static const std::string COMPRESSION_FIELD_NAME = "compression"
 
static const std::string COMPRESSION_LZ4 = "lz4"
 
static const std::string COMPRESSION_NONE = "none"
 
static const std::string CONNECTION_COUNT_FIELD_NAME = "conn_count"
 
static const std::string CONNECTION_FIELD_NAME = "conn"
 
static const std::string COUNT_FIELD_NAME = "count"
 
static const std::string DEF_FIELD_NAME = "def"
 
static const std::string ENCRYPTOR_FIELD_NAME = "encryptor"
 
static const std::string END_TIME_FIELD_NAME = "end_time"
 
static const unsigned char FIELD_DELIM = '='
 
static const uint32_t FILE_HEADER_LENGTH = 4 * 1024
 
static const std::string INDEX_POS_FIELD_NAME = "index_pos"
 
static const uint32_t INDEX_VERSION = 1
 
static const std::string LATCHING_FIELD_NAME = "latching"
 
static const std::string MD5_FIELD_NAME = "md5"
 
static const std::string NSEC_FIELD_NAME = "nsec"
 
static const unsigned char OP_CHUNK = 0x05
 
static const unsigned char OP_CHUNK_INFO = 0x06
 
static const unsigned char OP_CONNECTION = 0x07
 
static const std::string OP_FIELD_NAME = "op"
 
static const unsigned char OP_FILE_HEADER = 0x03
 
static const unsigned char OP_INDEX_DATA = 0x04
 
static const unsigned char OP_MSG_DATA = 0x02
 
static const unsigned char OP_MSG_DEF = 0x01
 
static const std::string SEC_FIELD_NAME = "sec"
 
static const std::string SIZE_FIELD_NAME = "size"
 
static const std::string START_TIME_FIELD_NAME = "start_time"
 
static const std::string TIME_FIELD_NAME = "time"
 
static const std::string TOPIC_FIELD_NAME = "topic"
 
static const std::string TYPE_FIELD_NAME = "type"
 
static const std::string VER_FIELD_NAME = "ver"
 
static const std::string VERSION = "2.0"
 

Typedef Documentation

◆ BagMode

Definition at line 93 of file bag.h.

◆ CompressionType

Definition at line 62 of file stream.h.

Function Documentation

◆ decryptStringGpg()

static std::basic_string<unsigned char> rosbag::decryptStringGpg ( std::string const &  user,
std::string const &  input 
)
static

Decrypt string using GPGME.

Returns
Decrypted string
Parameters
userUser name of the GPG key to be used for decryption
inputEncrypted string

This method decrypts the given encrypted string. This method throws BagException in case of errors.

Definition at line 118 of file aes_encryptor.cpp.

◆ encryptStringGpg()

static std::string rosbag::encryptStringGpg ( std::string &  user,
std::basic_string< unsigned char > const &  input 
)
static

Encrypt string using GPGME.

Returns
Encrypted string
Parameters
userUser name of the GPG key to be used for encryption
inputInput string to be encrypted

This method encrypts the given string using the GPG key owned by the specified user. This method throws BagException in case of errors.

Definition at line 60 of file aes_encryptor.cpp.

◆ getGpgKey()

void rosbag::getGpgKey ( gpgme_ctx_t &  ctx,
std::string const &  user,
gpgme_key_t &  key 
)

Get GPG key.

Parameters
ctxGPGME context
userUser name of the GPG key
keyGPG key found

This method outputs a GPG key in the system keyring corresponding to the given user name. This method throws BagException if the key is not found or error occurred.

Definition at line 53 of file gpgme_utils.cpp.

◆ initGpgme()

void rosbag::initGpgme ( )

Initialize GPGME library.

This method initializes GPGME library, and set locale.

Definition at line 42 of file gpgme_utils.cpp.

◆ readHeaderField()

static std::string rosbag::readHeaderField ( ros::M_string const &  header_fields,
std::string const &  field_name 
)
static

Definition at line 167 of file aes_encryptor.cpp.

◆ swap() [1/3]

void rosbag::swap ( Buffer a,
Buffer b 
)
inline

Definition at line 67 of file buffer.h.

◆ swap() [2/3]

void rosbag::swap ( ChunkedFile a,
ChunkedFile b 
)
inline

Definition at line 105 of file chunked_file.h.

◆ swap() [3/3]

void rosbag::swap ( Bag a,
Bag b 
)
inline

Definition at line 674 of file bag.h.

Variable Documentation

◆ CALLERID_FIELD_NAME

const std::string rosbag::CALLERID_FIELD_NAME = "callerid"
static

Definition at line 73 of file constants.h.

◆ CHUNK_COUNT_FIELD_NAME

const std::string rosbag::CHUNK_COUNT_FIELD_NAME = "chunk_count"
static

Definition at line 56 of file constants.h.

◆ CHUNK_INFO_VERSION

const uint32_t rosbag::CHUNK_INFO_VERSION = 1
static

Definition at line 93 of file constants.h.

◆ CHUNK_POS_FIELD_NAME

const std::string rosbag::CHUNK_POS_FIELD_NAME = "chunk_pos"
static

Definition at line 63 of file constants.h.

◆ COMPRESSION_BZ2

const std::string rosbag::COMPRESSION_BZ2 = "bz2"
static

Definition at line 97 of file constants.h.

◆ COMPRESSION_FIELD_NAME

const std::string rosbag::COMPRESSION_FIELD_NAME = "compression"
static

Definition at line 58 of file constants.h.

◆ COMPRESSION_LZ4

const std::string rosbag::COMPRESSION_LZ4 = "lz4"
static

Definition at line 98 of file constants.h.

◆ COMPRESSION_NONE

const std::string rosbag::COMPRESSION_NONE = "none"
static

Definition at line 96 of file constants.h.

◆ CONNECTION_COUNT_FIELD_NAME

const std::string rosbag::CONNECTION_COUNT_FIELD_NAME = "conn_count"
static

Definition at line 55 of file constants.h.

◆ CONNECTION_FIELD_NAME

const std::string rosbag::CONNECTION_FIELD_NAME = "conn"
static

Definition at line 57 of file constants.h.

◆ COUNT_FIELD_NAME

const std::string rosbag::COUNT_FIELD_NAME = "count"
static

Definition at line 53 of file constants.h.

◆ DEF_FIELD_NAME

const std::string rosbag::DEF_FIELD_NAME = "def"
static

Definition at line 69 of file constants.h.

◆ ENCRYPTOR_FIELD_NAME

const std::string rosbag::ENCRYPTOR_FIELD_NAME = "encryptor"
static

Definition at line 64 of file constants.h.

◆ END_TIME_FIELD_NAME

const std::string rosbag::END_TIME_FIELD_NAME = "end_time"
static

Definition at line 62 of file constants.h.

◆ FIELD_DELIM

const unsigned char rosbag::FIELD_DELIM = '='
static

Definition at line 47 of file constants.h.

◆ FILE_HEADER_LENGTH

const uint32_t rosbag::FILE_HEADER_LENGTH = 4 * 1024
static

Definition at line 87 of file constants.h.

◆ INDEX_POS_FIELD_NAME

const std::string rosbag::INDEX_POS_FIELD_NAME = "index_pos"
static

Definition at line 54 of file constants.h.

◆ INDEX_VERSION

const uint32_t rosbag::INDEX_VERSION = 1
static

Definition at line 90 of file constants.h.

◆ LATCHING_FIELD_NAME

const std::string rosbag::LATCHING_FIELD_NAME = "latching"
static

Definition at line 72 of file constants.h.

◆ MD5_FIELD_NAME

const std::string rosbag::MD5_FIELD_NAME = "md5"
static

Definition at line 67 of file constants.h.

◆ NSEC_FIELD_NAME

const std::string rosbag::NSEC_FIELD_NAME = "nsec"
static

Definition at line 71 of file constants.h.

◆ OP_CHUNK

const unsigned char rosbag::OP_CHUNK = 0x05
static

Definition at line 79 of file constants.h.

◆ OP_CHUNK_INFO

const unsigned char rosbag::OP_CHUNK_INFO = 0x06
static

Definition at line 80 of file constants.h.

◆ OP_CONNECTION

const unsigned char rosbag::OP_CONNECTION = 0x07
static

Definition at line 81 of file constants.h.

◆ OP_FIELD_NAME

const std::string rosbag::OP_FIELD_NAME = "op"
static

Definition at line 50 of file constants.h.

◆ OP_FILE_HEADER

const unsigned char rosbag::OP_FILE_HEADER = 0x03
static

Definition at line 77 of file constants.h.

◆ OP_INDEX_DATA

const unsigned char rosbag::OP_INDEX_DATA = 0x04
static

Definition at line 78 of file constants.h.

◆ OP_MSG_DATA

const unsigned char rosbag::OP_MSG_DATA = 0x02
static

Definition at line 76 of file constants.h.

◆ OP_MSG_DEF

const unsigned char rosbag::OP_MSG_DEF = 0x01
static

Definition at line 84 of file constants.h.

◆ SEC_FIELD_NAME

const std::string rosbag::SEC_FIELD_NAME = "sec"
static

Definition at line 70 of file constants.h.

◆ SIZE_FIELD_NAME

const std::string rosbag::SIZE_FIELD_NAME = "size"
static

Definition at line 59 of file constants.h.

◆ START_TIME_FIELD_NAME

const std::string rosbag::START_TIME_FIELD_NAME = "start_time"
static

Definition at line 61 of file constants.h.

◆ TIME_FIELD_NAME

const std::string rosbag::TIME_FIELD_NAME = "time"
static

Definition at line 60 of file constants.h.

◆ TOPIC_FIELD_NAME

const std::string rosbag::TOPIC_FIELD_NAME = "topic"
static

Definition at line 51 of file constants.h.

◆ TYPE_FIELD_NAME

const std::string rosbag::TYPE_FIELD_NAME = "type"
static

Definition at line 68 of file constants.h.

◆ VER_FIELD_NAME

const std::string rosbag::VER_FIELD_NAME = "ver"
static

Definition at line 52 of file constants.h.

◆ VERSION

const std::string rosbag::VERSION = "2.0"
static

Definition at line 44 of file constants.h.



rosbag_storage
Author(s): Dirk Thomas
autogenerated on Mon Feb 28 2022 23:33:55