![]()  | 
  
    MySQL 9.5.0
    
   Source Code Documentation 
   | 
 
This is a default header created per stage and contains information to decode it. More...
#include <gcs_internal_message_headers.h>
Public Member Functions | |
| Gcs_dynamic_header (Stage_code stage_code, unsigned long long payload_length) noexcept | |
| Constructor for the dynamic header.  More... | |
| Gcs_dynamic_header () noexcept=default | |
| Default constructor is to be used when creating an empty dynamic header.  More... | |
| Gcs_dynamic_header (Gcs_dynamic_header &&) noexcept=default | |
| These constructors are to be used when move semantics may be needed.  More... | |
| Gcs_dynamic_header & | operator= (Gcs_dynamic_header &&) noexcept=default | 
| Gcs_dynamic_header (const Gcs_dynamic_header &) noexcept=default | |
| These constructors are to be used when copy semantics may be needed.  More... | |
| Gcs_dynamic_header & | operator= (const Gcs_dynamic_header &) noexcept=default | 
| unsigned short | get_dynamic_header_length () const | 
| Return the dynamic header length.  More... | |
| Stage_code | get_stage_code () const | 
| Return the stage code.  More... | |
| unsigned long long | get_payload_length () const | 
| Return the payload length the packet had before this stage was applied.  More... | |
| void | set_payload_length (unsigned long long new_length) | 
| Set the payload length the packet had before this stage was applied.  More... | |
| unsigned long long | decode (const unsigned char *buffer) | 
| Decode the contents of the buffer and sets the field values according to the values decoded.  More... | |
| unsigned long long | encode (unsigned char *buffer) const | 
| Encode the contents of this instance into the buffer.  More... | |
| void | dump (std::ostringstream &output) const | 
| Create a string representation of the dynamic header to be logged.  More... | |
Static Public Member Functions | |
| static constexpr unsigned long long | calculate_length () | 
| Return length of dynamic header.  More... | |
Static Public Attributes | |
| static constexpr unsigned short | WIRE_HD_LEN_OFFSET = 0 | 
| The offset of the header length within the stage header.  More... | |
| static constexpr unsigned short | WIRE_HD_LEN_SIZE = 2 | 
| On-the-wire field size for the stage type code.  More... | |
| static constexpr unsigned short | WIRE_HD_TYPE_OFFSET = WIRE_HD_LEN_SIZE | 
| The offset of the stage type code within the stage header.  More... | |
| static constexpr unsigned short | WIRE_HD_TYPE_SIZE = 4 | 
| On-the-wire field size for the stage type code.  More... | |
| static constexpr unsigned short | WIRE_HD_PAYLOAD_LEN_OFFSET | 
| The offset of the payload length within the stage header.  More... | |
| static constexpr unsigned short | WIRE_HD_PAYLOAD_LEN_SIZE = 8 | 
| On-the-wire field size for the stage payload length.  More... | |
Private Attributes | |
| unsigned short | m_dynamic_header_length {0} | 
| Dynamic header length.  More... | |
| Stage_code | m_stage_code {Stage_code::ST_UNKNOWN} | 
| Stage that created the dynamic header.  More... | |
| unsigned long long | m_payload_length {0} | 
| Payload length when the packet went through the stage.  More... | |
This is a default header created per stage and contains information to decode it.
The on-the-wire-layout representation of a dynamic header is:
+---------------—+--------—+-----------------------------------—+ | field | wire size | description | +==================+===========+======================================+ | dyn_hdr_len | 2 bytes | length of the dynamic header | | stage_code | 4 bytes | stage code | | old_payload_len | 8 bytes | length of the previous stage payload | +---------------—+--------—+-----------------------------------—+
      
  | 
  explicitnoexcept | 
Constructor for the dynamic header.
| stage_code | Stage code. | 
| payload_length | Payload length while the packet is in the stage. | 
      
  | 
  explicitdefaultnoexcept | 
Default constructor is to be used when creating an empty dynamic header.
      
  | 
  defaultnoexcept | 
These constructors are to be used when move semantics may be needed.
      
  | 
  defaultnoexcept | 
These constructors are to be used when copy semantics may be needed.
      
  | 
  inlinestaticconstexpr | 
Return length of dynamic header.
| unsigned long long Gcs_dynamic_header::decode | ( | const unsigned char * | buffer | ) | 
Decode the contents of the buffer and sets the field values according to the values decoded.
The buffer MUST be encoded in little endian format.
| buffer | The buffer to decode from. | 
| void Gcs_dynamic_header::dump | ( | std::ostringstream & | output | ) | const | 
Create a string representation of the dynamic header to be logged.
| output | Reference to the output stream where the string will be created. | 
| unsigned long long Gcs_dynamic_header::encode | ( | unsigned char * | buffer | ) | const | 
Encode the contents of this instance into the buffer.
The encoding SHALL be done in little endian format.
| buffer | The buffer to encode to. | 
| unsigned short Gcs_dynamic_header::get_dynamic_header_length | ( | ) | const | 
Return the dynamic header length.
| unsigned long long Gcs_dynamic_header::get_payload_length | ( | ) | const | 
Return the payload length the packet had before this stage was applied.
| Stage_code Gcs_dynamic_header::get_stage_code | ( | ) | const | 
Return the stage code.
      
  | 
  defaultnoexcept | 
      
  | 
  defaultnoexcept | 
| void Gcs_dynamic_header::set_payload_length | ( | unsigned long long | new_length | ) | 
Set the payload length the packet had before this stage was applied.
| new_length | payload length before this stage | 
      
  | 
  private | 
Dynamic header length.
      
  | 
  private | 
Payload length when the packet went through the stage.
      
  | 
  private | 
Stage that created the dynamic header.
      
  | 
  staticconstexpr | 
The offset of the header length within the stage header.
      
  | 
  staticconstexpr | 
On-the-wire field size for the stage type code.
      
  | 
  staticconstexpr | 
The offset of the payload length within the stage header.
      
  | 
  staticconstexpr | 
On-the-wire field size for the stage payload length.
      
  | 
  staticconstexpr | 
The offset of the stage type code within the stage header.
      
  | 
  staticconstexpr | 
On-the-wire field size for the stage type code.