Bitcoin Core  0.20.99
P2P Digital Currency
Public Member Functions | Private Member Functions | Private Attributes | List of all members
V1TransportDeserializer Class Referencefinal

#include <net.h>

Inheritance diagram for V1TransportDeserializer:
[legend]
Collaboration diagram for V1TransportDeserializer:
[legend]

Public Member Functions

 V1TransportDeserializer (const CChainParams &chain_params, const NodeId node_id, int nTypeIn, int nVersionIn)
 
bool Complete () const override
 
void SetVersion (int nVersionIn) override
 
int Read (const char *pch, unsigned int nBytes) override
 
Optional< CNetMessageGetMessage (std::chrono::microseconds time, uint32_t &out_err_raw_size) override
 
- Public Member Functions inherited from TransportDeserializer
virtual ~TransportDeserializer ()
 

Private Member Functions

const uint256GetMessageHash () const
 
int readHeader (const char *pch, unsigned int nBytes)
 
int readData (const char *pch, unsigned int nBytes)
 
void Reset ()
 

Private Attributes

const CChainParamsm_chain_params
 
const NodeId m_node_id
 
CHash256 hasher
 
uint256 data_hash
 
bool in_data
 
CDataStream hdrbuf
 
CMessageHeader hdr
 
CDataStream vRecv
 
unsigned int nHdrPos
 
unsigned int nDataPos
 

Detailed Description

Definition at line 761 of file net.h.

Constructor & Destructor Documentation

◆ V1TransportDeserializer()

V1TransportDeserializer::V1TransportDeserializer ( const CChainParams chain_params,
const NodeId  node_id,
int  nTypeIn,
int  nVersionIn 
)
inline

Definition at line 791 of file net.h.

Member Function Documentation

◆ Complete()

bool V1TransportDeserializer::Complete ( ) const
inlineoverridevirtual

Implements TransportDeserializer.

Definition at line 800 of file net.h.

◆ GetMessage()

Optional< CNetMessage > V1TransportDeserializer::GetMessage ( std::chrono::microseconds  time,
uint32_t &  out_err_raw_size 
)
overridevirtual

Implements TransportDeserializer.

Definition at line 749 of file net.cpp.

Here is the call graph for this function:

◆ GetMessageHash()

const uint256 & V1TransportDeserializer::GetMessageHash ( ) const
private

Definition at line 741 of file net.cpp.

◆ Read()

int V1TransportDeserializer::Read ( const char *  pch,
unsigned int  nBytes 
)
inlineoverridevirtual

Implements TransportDeserializer.

Definition at line 811 of file net.h.

◆ readData()

int V1TransportDeserializer::readData ( const char *  pch,
unsigned int  nBytes 
)
private

Definition at line 724 of file net.cpp.

Here is the call graph for this function:

◆ readHeader()

int V1TransportDeserializer::readHeader ( const char *  pch,
unsigned int  nBytes 
)
private

Definition at line 684 of file net.cpp.

Here is the call graph for this function:

◆ Reset()

void V1TransportDeserializer::Reset ( )
inlineprivate

Definition at line 779 of file net.h.

Here is the call graph for this function:

◆ SetVersion()

void V1TransportDeserializer::SetVersion ( int  nVersionIn)
inlineoverridevirtual

Implements TransportDeserializer.

Definition at line 806 of file net.h.

Here is the call graph for this function:

Member Data Documentation

◆ data_hash

uint256 V1TransportDeserializer::data_hash
mutableprivate

Definition at line 767 of file net.h.

◆ hasher

CHash256 V1TransportDeserializer::hasher
mutableprivate

Definition at line 766 of file net.h.

◆ hdr

CMessageHeader V1TransportDeserializer::hdr
private

Definition at line 770 of file net.h.

◆ hdrbuf

CDataStream V1TransportDeserializer::hdrbuf
private

Definition at line 769 of file net.h.

◆ in_data

bool V1TransportDeserializer::in_data
private

Definition at line 768 of file net.h.

◆ m_chain_params

const CChainParams& V1TransportDeserializer::m_chain_params
private

Definition at line 764 of file net.h.

◆ m_node_id

const NodeId V1TransportDeserializer::m_node_id
private

Definition at line 765 of file net.h.

◆ nDataPos

unsigned int V1TransportDeserializer::nDataPos
private

Definition at line 773 of file net.h.

◆ nHdrPos

unsigned int V1TransportDeserializer::nHdrPos
private

Definition at line 772 of file net.h.

◆ vRecv

CDataStream V1TransportDeserializer::vRecv
private

Definition at line 771 of file net.h.


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