OpenDDS  Snapshot(2023/04/28-20:55)
Public Member Functions | Private Attributes | List of all members
OpenDDS::DCPS::DataWriterImpl::EncodingMode Class Reference

#include <DataWriterImpl.h>

Collaboration diagram for OpenDDS::DCPS::DataWriterImpl::EncodingMode:
Collaboration graph
[legend]

Public Member Functions

 EncodingMode ()
 
 EncodingMode (const TypeSupportImpl *ts, Encoding::Kind kind, bool swap_the_bytes)
 
bool valid () const
 
const Encodingencoding () const
 
bool bound () const
 
SerializedSizeBound buffer_size_bound () const
 
size_t buffer_size (const Sample &sample) const
 

Private Attributes

bool valid_
 
Encoding encoding_
 
size_t header_size_
 
SerializedSizeBound bound_
 
SerializedSizeBound key_only_bound_
 

Detailed Description

Used to hold the encoding and get the buffer sizes needed to store the results of the encoding.

Definition at line 614 of file DataWriterImpl.h.

Constructor & Destructor Documentation

◆ EncodingMode() [1/2]

OpenDDS::DCPS::DataWriterImpl::EncodingMode::EncodingMode ( )
inline

Definition at line 616 of file DataWriterImpl.h.

◆ EncodingMode() [2/2]

OpenDDS::DCPS::DataWriterImpl::EncodingMode::EncodingMode ( const TypeSupportImpl ts,
Encoding::Kind  kind,
bool  swap_the_bytes 
)
inline

Definition at line 622 of file DataWriterImpl.h.

623  : valid_(true)
624  , encoding_(kind, swap_the_bytes)
626  , bound_(ts->serialized_size_bound(encoding_))
627  , key_only_bound_(ts->key_only_serialized_size_bound(encoding_))
628  {
629  }
static bool is_encapsulated(Kind kind)
Definition: Serializer.inl:139
static const size_t serialized_size
Definition: Serializer.h:251

Member Function Documentation

◆ bound()

bool OpenDDS::DCPS::DataWriterImpl::EncodingMode::bound ( ) const
inline

Definition at line 641 of file DataWriterImpl.h.

642  {
643  return bound_;
644  }

◆ buffer_size()

size_t OpenDDS::DCPS::DataWriterImpl::EncodingMode::buffer_size ( const Sample sample) const
inline

◆ buffer_size_bound()

SerializedSizeBound OpenDDS::DCPS::DataWriterImpl::EncodingMode::buffer_size_bound ( ) const
inline

Definition at line 646 of file DataWriterImpl.h.

Referenced by OpenDDS::DCPS::DataWriterImpl::setup_serialization().

647  {
648  return bound_ ? SerializedSizeBound(header_size_ + bound_.get()) : SerializedSizeBound();
649  }

◆ encoding()

const Encoding& OpenDDS::DCPS::DataWriterImpl::EncodingMode::encoding ( ) const
inline

◆ valid()

bool OpenDDS::DCPS::DataWriterImpl::EncodingMode::valid ( void  ) const
inline

Definition at line 631 of file DataWriterImpl.h.

Referenced by OpenDDS::DCPS::DataWriterImpl::setup_serialization().

632  {
633  return valid_;
634  }

Member Data Documentation

◆ bound_

SerializedSizeBound OpenDDS::DCPS::DataWriterImpl::EncodingMode::bound_
private

Definition at line 661 of file DataWriterImpl.h.

◆ encoding_

Encoding OpenDDS::DCPS::DataWriterImpl::EncodingMode::encoding_
private

Definition at line 659 of file DataWriterImpl.h.

◆ header_size_

size_t OpenDDS::DCPS::DataWriterImpl::EncodingMode::header_size_
private

Definition at line 660 of file DataWriterImpl.h.

◆ key_only_bound_

SerializedSizeBound OpenDDS::DCPS::DataWriterImpl::EncodingMode::key_only_bound_
private

Definition at line 662 of file DataWriterImpl.h.

◆ valid_

bool OpenDDS::DCPS::DataWriterImpl::EncodingMode::valid_
private

Definition at line 658 of file DataWriterImpl.h.


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