BmnRoot
Loading...
Searching...
No Matches
fles::StorableMicroslice Class Reference

The StorableMicroslice class contains the data of a single microslice. More...

#include <StorableMicroslice.h>

Inheritance diagram for fles::StorableMicroslice:
[legend]
Collaboration diagram for fles::StorableMicroslice:
[legend]

Public Member Functions

 StorableMicroslice (const StorableMicroslice &ms)
 Copy constructor.
 
void operator= (const StorableMicroslice &)=delete
 Delete assignment operator (not implemented).
 
 StorableMicroslice (StorableMicroslice &&ms) noexcept
 Move constructor.
 
 StorableMicroslice (const Microslice &ms)
 Construct by copying from given Microslice object.
 
 StorableMicroslice (MicrosliceDescriptor d, const uint8_t *content_p)
 Construct by copying from given data array.
 
 StorableMicroslice (MicrosliceDescriptor d, std::vector< uint8_t > content_v)
 Construct by copying from given data vector.
 
MicrosliceDescriptordesc ()
 Retrieve non-const microslice descriptor reference.
 
uint8_t * content ()
 Retrieve a non-const pointer to the microslice data.
 
void initialize_crc ()
 
 StorableMicroslice (const StorableMicroslice &ms)
 Copy constructor.
 
void operator= (const StorableMicroslice &)=delete
 Delete assignment operator (not implemented).
 
 StorableMicroslice (StorableMicroslice &&ms) noexcept
 Move constructor.
 
 StorableMicroslice (const Microslice &ms)
 Construct by copying from given Microslice object.
 
 StorableMicroslice (MicrosliceDescriptor d, const uint8_t *content_p)
 Construct by copying from given data array.
 
 StorableMicroslice (MicrosliceDescriptor d, std::vector< uint8_t > content_v)
 Construct by copying from given data vector.
 
MicrosliceDescriptordesc ()
 Retrieve non-const microslice descriptor reference.
 
uint8_t * content ()
 Retrieve a non-const pointer to the microslice data.
 
void initialize_crc ()
 
- Public Member Functions inherited from fles::Microslice
virtual ~Microslice ()=0
 
const MicrosliceDescriptordesc () const
 Retrieve microslice descriptor reference.
 
const uint8_t * content () const
 Retrieve a pointer to the microslice data.
 
uint32_t compute_crc () const
 Compute CRC-32 checksum of microslice data content.
 
bool check_crc () const
 Compare computed CRC-32 checksum to value in header.
 
virtual ~Microslice ()=0
 
const MicrosliceDescriptordesc () const
 Retrieve microslice descriptor reference.
 
const uint8_t * content () const
 Retrieve a pointer to the microslice data.
 
uint32_t compute_crc () const
 Compute CRC-32 checksum of microslice data content.
 
bool check_crc () const
 Compare computed CRC-32 checksum to value in header.
 

Friends

class boost::serialization::access
 
class InputArchive< Microslice, StorableMicroslice, ArchiveType::MicrosliceArchive >
 
class InputArchiveLoop< Microslice, StorableMicroslice, ArchiveType::MicrosliceArchive >
 

Additional Inherited Members

- Protected Member Functions inherited from fles::Microslice
 Microslice ()=default
 
 Microslice (MicrosliceDescriptor *desc_ptr, uint8_t *content_ptr)
 Construct microslice with given content.
 
 Microslice ()=default
 
 Microslice (MicrosliceDescriptor *desc_ptr, uint8_t *content_ptr)
 Construct microslice with given content.
 
- Protected Attributes inherited from fles::Microslice
MicrosliceDescriptordesc_ptr_
 Pointer to the microslice descriptor.
 
uint8_t * content_ptr_
 Pointer to the microslice data content.
 

Detailed Description

The StorableMicroslice class contains the data of a single microslice.

Both metadata and content are stored within the object.

Definition at line 31 of file StorableMicroslice.h.

Constructor & Destructor Documentation

◆ StorableMicroslice() [1/10]

fles::StorableMicroslice::StorableMicroslice ( const StorableMicroslice ms)

Copy constructor.

◆ StorableMicroslice() [2/10]

fles::StorableMicroslice::StorableMicroslice ( StorableMicroslice &&  ms)
noexcept

Move constructor.

◆ StorableMicroslice() [3/10]

fles::StorableMicroslice::StorableMicroslice ( const Microslice ms)

Construct by copying from given Microslice object.

◆ StorableMicroslice() [4/10]

fles::StorableMicroslice::StorableMicroslice ( MicrosliceDescriptor  d,
const uint8_t *  content_p 
)

Construct by copying from given data array.

Copy the descriptor and the data pointed to by content into the StorableMicroslice. The size field of the descriptor must already be valid and will not be modified.

◆ StorableMicroslice() [5/10]

fles::StorableMicroslice::StorableMicroslice ( MicrosliceDescriptor  d,
std::vector< uint8_t >  content_v 
)

Construct by copying from given data vector.

Copy the descriptor and copy or move the data contained in content into the StorableMicroslice. The descriptor will be updated to match the size of the content vector.

Copying the vector is avoided if it is passed as an rvalue, like in:

StorableMicroslice {..., std::move(some_vector)}
StorableMicroslice {..., {1, 2, 3, 4, 5}}
StorableMicroslice {..., create_some_vector()}

◆ StorableMicroslice() [6/10]

fles::StorableMicroslice::StorableMicroslice ( const StorableMicroslice ms)

Copy constructor.

◆ StorableMicroslice() [7/10]

fles::StorableMicroslice::StorableMicroslice ( StorableMicroslice &&  ms)
noexcept

Move constructor.

◆ StorableMicroslice() [8/10]

fles::StorableMicroslice::StorableMicroslice ( const Microslice ms)

Construct by copying from given Microslice object.

◆ StorableMicroslice() [9/10]

fles::StorableMicroslice::StorableMicroslice ( MicrosliceDescriptor  d,
const uint8_t *  content_p 
)

Construct by copying from given data array.

Copy the descriptor and the data pointed to by content into the StorableMicroslice. The size field of the descriptor must already be valid and will not be modified.

◆ StorableMicroslice() [10/10]

fles::StorableMicroslice::StorableMicroslice ( MicrosliceDescriptor  d,
std::vector< uint8_t >  content_v 
)

Construct by copying from given data vector.

Copy the descriptor and copy or move the data contained in content into the StorableMicroslice. The descriptor will be updated to match the size of the content vector.

Copying the vector is avoided if it is passed as an rvalue, like in:

StorableMicroslice {..., std::move(some_vector)}
StorableMicroslice {..., {1, 2, 3, 4, 5}}
StorableMicroslice {..., create_some_vector()}

Member Function Documentation

◆ content() [1/2]

uint8_t * fles::StorableMicroslice::content ( )
inline

Retrieve a non-const pointer to the microslice data.

Definition at line 73 of file StorableMicroslice.h.

References fles::Microslice::content_ptr_.

◆ content() [2/2]

uint8_t * fles::StorableMicroslice::content ( )
inline

Retrieve a non-const pointer to the microslice data.

Definition at line 73 of file StorableMicroslice.h.

References fles::Microslice::content_ptr_.

◆ desc() [1/2]

MicrosliceDescriptor & fles::StorableMicroslice::desc ( )
inline

Retrieve non-const microslice descriptor reference.

Definition at line 70 of file StorableMicroslice.h.

References fles::Microslice::desc_ptr_.

◆ desc() [2/2]

MicrosliceDescriptor & fles::StorableMicroslice::desc ( )
inline

Retrieve non-const microslice descriptor reference.

Definition at line 70 of file StorableMicroslice.h.

References fles::Microslice::desc_ptr_.

◆ initialize_crc() [1/2]

void fles::StorableMicroslice::initialize_crc ( )

◆ initialize_crc() [2/2]

void fles::StorableMicroslice::initialize_crc ( )

◆ operator=() [1/2]

void fles::StorableMicroslice::operator= ( const StorableMicroslice )
delete

Delete assignment operator (not implemented).

◆ operator=() [2/2]

void fles::StorableMicroslice::operator= ( const StorableMicroslice )
delete

Delete assignment operator (not implemented).

Friends And Related Symbol Documentation

◆ boost::serialization::access

boost::serialization::access
friend

Definition at line 78 of file StorableMicroslice.h.

Referenced by initialize_crc().

◆ InputArchive< Microslice, StorableMicroslice, ArchiveType::MicrosliceArchive >

◆ InputArchiveLoop< Microslice, StorableMicroslice, ArchiveType::MicrosliceArchive >


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