TObexInternalHeader Class Reference

class TObexInternalHeader : public TObexData

Two parts to headers: header IDs (HI) and header values (HV). There are some strange things going on in this class, due it sourcing data (HV) from either obex or epoc, and having to then either stream it obex or return it to epoc. Might be tidier having a finer class hierarcy, but the implemented method does allow for complete generality.

Partly due to this strangeness, this is only used internally. There is also a CObexHeader class which is used for the external representation of a data header. CObexHeader

Inherits from

Public Member Functions
TObexInternalHeader ()
IMPORT_C TInt GetHVText ( TDes &)
IMPORT_C THeaderID HI ()
IMPORT_C TUint16 HISize ()
IMPORT_C THeaderType HIType ()
IMPORT_C TUint8 * HVByteSeq ()
IMPORT_C TInt HVInt ()
IMPORT_C TUint16 HVSize ()
IMPORT_C void Set ( THeaderID , TInt )
IMPORT_C void Set ( THeaderID , TUint8 *, TInt )
IMPORT_C void Set ( THeaderID , const TDesC &)
IMPORT_C void SetDeferred ( THeaderID , TPtr8 *, TInt , TInt )
IMPORT_C void SetHI ( THeaderID )
Protected Member Functions
TUint16 DoTotalSize ()
TUint16 ParseIn ( TUint8 *, const TUint16 )
TUint16 WriteOut ( TUint8 *, const TUint16 )
Inherited Functions
TObexData::TotalSize()const
Public Member Enumerations
enum THVRepresentation { EHVObexDefault , EHVMachineText , EHVInt , EHVDefered }
enum THeaderType { EUnicode  = 0x00, EByteSeq  = 0x40, E1Byte  = 0x80, E4Byte  = 0xC0 }
enum TWellKnownHI {
ECount  = 0x00 | E4Byte, EName  = 0x01 | EUnicode, EType  = 0x02 | EByteSeq, ELength  = 0x03 | E4Byte, ETime  = 0x04 | EByteSeq, EDescription  = 0x05 | EUnicode, ETarget  = 0x06 | EByteSeq, EHttp  = 0x07 | EByteSeq, EBody  = 0x08 | EByteSeq, EEndOfBody  = 0x09 | EByteSeq, EWho  = 0x0A | EByteSeq, EConnectionID  = 0x0B | E4Byte, EAppParam  = 0x0C | EByteSeq, EAuthChallenge  = 0x0D | EByteSeq, EAuthResponse  = 0x0E | EByteSeq, ECreatorID  = 0x0F | E4Byte, EWanUUID  = 0x10 | EByteSeq, EObjectClass  = 0x11 | EByteSeq
}
Public Member Type Definitions
typedef TUint8 THeaderID
Public Attributes
TPtr8 * iDefered
TInt iInt
TText * iMachine
TUint8 * iObex
Private Attributes
THeaderID iHI
union TObexInternalHeader::@57 iHV
TUint16 iHVMaxSize
THVRepresentation iHVRep
TUint16 iHVSize

Constructor & Destructor Documentation

TObexInternalHeader()

IMPORT_C TObexInternalHeader ( )

Member Functions Documentation

DoTotalSize()

TUint16 DoTotalSize ( ) const [protected, virtual]

GetHVText(TDes &)

IMPORT_C TInt GetHVText ( TDes & aString ) const

Parameters

TDes & aString

HI()

IMPORT_C THeaderID HI ( ) const

HISize()

IMPORT_C TUint16 HISize ( ) const

HIType()

IMPORT_C THeaderType HIType ( ) const

HVByteSeq()

IMPORT_C TUint8 * HVByteSeq ( ) const

HVInt()

IMPORT_C TInt HVInt ( ) const

HVSize()

IMPORT_C TUint16 HVSize ( ) const

ParseIn(TUint8 *, const TUint16)

TUint16 ParseIn ( TUint8 * aSource,
const TUint16 aMaxSize
) [protected, virtual]

Parameters

TUint8 * aSource
const TUint16 aMaxSize

Set(THeaderID, TInt)

IMPORT_C void Set ( THeaderID aHID,
TInt aValue
)

Parameters

THeaderID aHID
TInt aValue

Set(THeaderID, TUint8 *, TInt)

IMPORT_C void Set ( THeaderID aHID,
TUint8 * aHV,
TInt aHVSize
)

Parameters

THeaderID aHID
TUint8 * aHV
TInt aHVSize

Set(THeaderID, const TDesC &)

IMPORT_C void Set ( THeaderID aHID,
const TDesC & aString
)

Parameters

THeaderID aHID
const TDesC & aString

SetDeferred(THeaderID, TPtr8 *, TInt, TInt)

IMPORT_C void SetDeferred ( THeaderID aHID,
TPtr8 * aDataInserter,
TInt aMinSize,
TInt aMaxSize = 0
)

Parameters

THeaderID aHID
TPtr8 * aDataInserter
TInt aMinSize
TInt aMaxSize = 0

SetHI(THeaderID)

IMPORT_C void SetHI ( THeaderID aHID )

Parameters

THeaderID aHID

WriteOut(TUint8 *, const TUint16)

TUint16 WriteOut ( TUint8 * aDest,
const TUint16 aMaxSize
) const [protected, virtual]

Parameters

TUint8 * aDest
const TUint16 aMaxSize

Member Enumerations Documentation

Enum THVRepresentation

Enumerators

EHVObexDefault
EHVMachineText
EHVInt
EHVDefered

Enum THeaderType

Enumerators

EUnicode = 0x00
EByteSeq = 0x40
E1Byte = 0x80
E4Byte = 0xC0

Enum TWellKnownHI

Enumerators

ECount = 0x00 | E4Byte
EName = 0x01 | EUnicode
EType = 0x02 | EByteSeq
ELength = 0x03 | E4Byte
ETime = 0x04 | EByteSeq
EDescription = 0x05 | EUnicode
ETarget = 0x06 | EByteSeq
EHttp = 0x07 | EByteSeq
EBody = 0x08 | EByteSeq
EEndOfBody = 0x09 | EByteSeq
EWho = 0x0A | EByteSeq
EConnectionID = 0x0B | E4Byte
EAppParam = 0x0C | EByteSeq
EAuthChallenge = 0x0D | EByteSeq
EAuthResponse = 0x0E | EByteSeq
ECreatorID = 0x0F | E4Byte
EWanUUID = 0x10 | EByteSeq
EObjectClass = 0x11 | EByteSeq

Member Type Definitions Documentation

Typedef THeaderID

typedef TUint8 THeaderID

Member Data Documentation

TPtr8 * iDefered

TPtr8 * iDefered

THeaderID iHI

THeaderID iHI [private]

union TObexInternalHeader::@57 iHV

union TObexInternalHeader::@57 iHV [private]

TUint16 iHVMaxSize

TUint16 iHVMaxSize [private]

THVRepresentation iHVRep

THVRepresentation iHVRep [private]

TUint16 iHVSize

TUint16 iHVSize [private]

TInt iInt

TInt iInt

TText * iMachine

TText * iMachine

TUint8 * iObex

TUint8 * iObex