CPacket Class Reference

#include <Packet.h>

Inheritance diagram for CPacket:

Inheritance graph
[legend]
Collaboration diagram for CPacket:

Collaboration graph
[legend]
List of all members.

Public Types

enum  { seekStart, seekEnd }

Public Member Functions

virtual void Reset ()
virtual void ToBuffer (CBuffer *pBuffer) const =0
void Seek (DWORD nPosition, int nRelative=seekStart)
void Shorten (DWORD nLength)
virtual CString ReadString (UINT cp, DWORD nMaximum=0xFFFFFFFF)
virtual CString ReadStringASCII (DWORD nMaximum=0xFFFFFFFF)
virtual void WriteString (LPCTSTR pszString, BOOL bNull=TRUE)
virtual int GetStringLen (LPCTSTR pszString) const
virtual CString ReadStringUTF8 (DWORD nMaximum=0xFFFFFFFF)
virtual void WriteStringUTF8 (LPCTSTR pszString, BOOL bNull=TRUE)
virtual int GetStringLenUTF8 (LPCTSTR pszString) const
auto_array< BYTE > ReadZLib (DWORD nLength, DWORD *pnOutput)
void WriteZLib (LPCVOID pData, DWORD nLength)
BYTE * WriteGetPointer (DWORD nLength, DWORD nOffset=0xFFFFFFFF)
virtual LPCTSTR GetType () const
CString ToHex () const
CString ToASCII () const
virtual void Debug (LPCTSTR pszReason) const
void SmartDump (const SOCKADDR_IN *pAddress, BOOL bUDP, BOOL bOutgoing, DWORD nNeighbourUnique=0) const
virtual BOOL GetRazaHash (Hashes::Sha1Hash &oHash, DWORD nLength=0xFFFFFFFF) const
void RazaSign ()
BOOL RazaVerify () const
int GetRemaining ()
void Read (LPVOID pData, int nLength)
BYTE ReadByte ()
template<typename Descriptor, template< typename > class StoragePolicy, template< typename > class CheckingPolicy, template< typename > class ValidationPolicy>
void Read (Hashes::Hash< Descriptor, StoragePolicy, CheckingPolicy, ValidationPolicy > &oHash)
BYTE PeekByte ()
WORD ReadShortLE ()
WORD ReadShortBE ()
DWORD ReadLongLE ()
DWORD ReadLongBE ()
QWORD ReadInt64 ()
BOOL Ensure (DWORD nLength)
BOOL Write (LPCVOID pData, DWORD nLength)
template<typename Descriptor, template< typename > class StoragePolicy, template< typename > class CheckingPolicy, template< typename > class ValidationPolicy>
void Write (const Hashes::Hash< Descriptor, StoragePolicy, CheckingPolicy, ValidationPolicy > &oHash)
void WriteByte (BYTE nValue)
void WriteShortLE (WORD nValue)
void WriteShortBE (WORD nValue)
void WriteLongLE (DWORD nValue)
void WriteLongBE (DWORD nValue)
void WriteInt64 (QWORD nValue)
void AddRef ()
void Release ()
void ReleaseChain ()
virtual void Delete ()=0

Public Attributes

PROTOCOLID m_nProtocol
CPacketm_pNext
DWORD m_nReference
BYTE * m_pBuffer
DWORD m_nBuffer
DWORD m_nLength
DWORD m_nPosition
BOOL m_bBigEndian

Protected Member Functions

 CPacket (PROTOCOLID nProtocol)
virtual ~CPacket ()

Static Protected Attributes

static CHAR m_szSCHAR [PACKET_BUF_SCHAR+1]
static WCHAR m_szWCHAR [PACKET_BUF_WCHAR+1]

Friends

class CPacketPool

Member Enumeration Documentation

anonymous enum

Enumerator:
seekStart 
seekEnd 


Constructor & Destructor Documentation

CPacket::CPacket ( PROTOCOLID  nProtocol  )  [protected]

CPacket::~CPacket (  )  [protected, virtual]


Member Function Documentation

void CPacket::Reset (  )  [virtual]

Reimplemented in CG2Packet.

virtual void CPacket::ToBuffer ( CBuffer pBuffer  )  const [pure virtual]

Implemented in CBTPacket, CEDPacket, CG1Packet, and CG2Packet.

void CPacket::Seek ( DWORD  nPosition,
int  nRelative = seekStart 
)

void CPacket::Shorten ( DWORD  nLength  ) 

CString CPacket::ReadString ( UINT  cp,
DWORD  nMaximum = 0xFFFFFFFF 
) [virtual]

CString CPacket::ReadStringASCII ( DWORD  nMaximum = 0xFFFFFFFF  )  [virtual]

void CPacket::WriteString ( LPCTSTR  pszString,
BOOL  bNull = TRUE 
) [virtual]

Reimplemented in CG2Packet.

int CPacket::GetStringLen ( LPCTSTR  pszString  )  const [virtual]

Reimplemented in CG2Packet.

CString CPacket::ReadStringUTF8 ( DWORD  nMaximum = 0xFFFFFFFF  )  [virtual]

void CPacket::WriteStringUTF8 ( LPCTSTR  pszString,
BOOL  bNull = TRUE 
) [virtual]

int CPacket::GetStringLenUTF8 ( LPCTSTR  pszString  )  const [virtual]

auto_array< BYTE > CPacket::ReadZLib ( DWORD  nLength,
DWORD *  pnOutput 
)

void CPacket::WriteZLib ( LPCVOID  pData,
DWORD  nLength 
)

BYTE * CPacket::WriteGetPointer ( DWORD  nLength,
DWORD  nOffset = 0xFFFFFFFF 
)

LPCTSTR CPacket::GetType (  )  const [virtual]

Reimplemented in CBTPacket, CEDPacket, CG1Packet, and CG2Packet.

CString CPacket::ToHex (  )  const

CString CPacket::ToASCII (  )  const

void CPacket::Debug ( LPCTSTR  pszReason  )  const [virtual]

Reimplemented in CEDPacket, CG1Packet, and CG2Packet.

void CPacket::SmartDump ( const SOCKADDR_IN *  pAddress,
BOOL  bUDP,
BOOL  bOutgoing,
DWORD  nNeighbourUnique = 0 
) const

BOOL CPacket::GetRazaHash ( Hashes::Sha1Hash oHash,
DWORD  nLength = 0xFFFFFFFF 
) const [virtual]

Reimplemented in CG1Packet.

void CPacket::RazaSign (  ) 

BOOL CPacket::RazaVerify (  )  const

int CPacket::GetRemaining (  )  [inline]

void CPacket::Read ( LPVOID  pData,
int  nLength 
) [inline]

BYTE CPacket::ReadByte (  )  [inline]

template<typename Descriptor, template< typename > class StoragePolicy, template< typename > class CheckingPolicy, template< typename > class ValidationPolicy>
void CPacket::Read ( Hashes::Hash< Descriptor, StoragePolicy, CheckingPolicy, ValidationPolicy > &  oHash  )  [inline]

BYTE CPacket::PeekByte (  )  [inline]

WORD CPacket::ReadShortLE (  )  [inline]

WORD CPacket::ReadShortBE (  )  [inline]

DWORD CPacket::ReadLongLE (  )  [inline]

DWORD CPacket::ReadLongBE (  )  [inline]

QWORD CPacket::ReadInt64 (  )  [inline]

BOOL CPacket::Ensure ( DWORD  nLength  )  [inline]

BOOL CPacket::Write ( LPCVOID  pData,
DWORD  nLength 
) [inline]

template<typename Descriptor, template< typename > class StoragePolicy, template< typename > class CheckingPolicy, template< typename > class ValidationPolicy>
void CPacket::Write ( const Hashes::Hash< Descriptor, StoragePolicy, CheckingPolicy, ValidationPolicy > &  oHash  )  [inline]

void CPacket::WriteByte ( BYTE  nValue  )  [inline]

void CPacket::WriteShortLE ( WORD  nValue  )  [inline]

void CPacket::WriteShortBE ( WORD  nValue  )  [inline]

void CPacket::WriteLongLE ( DWORD  nValue  )  [inline]

void CPacket::WriteLongBE ( DWORD  nValue  )  [inline]

void CPacket::WriteInt64 ( QWORD  nValue  )  [inline]

void CPacket::AddRef (  )  [inline]

void CPacket::Release (  )  [inline]

void CPacket::ReleaseChain (  )  [inline]

virtual void CPacket::Delete (  )  [inline, pure virtual]

Implemented in CBTPacket, CEDPacket, CG1Packet, and CG2Packet.


Friends And Related Function Documentation

friend class CPacketPool [friend]


Member Data Documentation

PROTOCOLID CPacket::m_nProtocol

CPacket* CPacket::m_pNext

DWORD CPacket::m_nReference

BYTE* CPacket::m_pBuffer

DWORD CPacket::m_nBuffer

DWORD CPacket::m_nLength

DWORD CPacket::m_nPosition

BOOL CPacket::m_bBigEndian

CHAR CPacket::m_szSCHAR [static, protected]

WCHAR CPacket::m_szWCHAR [static, protected]


The documentation for this class was generated from the following files:
Generated on Wed Aug 8 03:46:31 2007 for Shareaza by  doxygen 1.5.2