CSmsTPSRROperations Class Reference

class CSmsTPSRROperations : public CSmsCtrlNonIEOperation

Inherits from

Constructor & Destructor Documentation

CSmsTPSRROperations(TSmsNonIEIdentifier, CSmsMessage &)

CSmsTPSRROperations(TSmsNonIEIdentifieraId,
CSmsMessage &aMessage
)

Status Reporting.

Note:

This should be the last thing that should be configured in CSmsMessage. If anything is changed after this then the number of PDUs might change which will affect status reporting.

Parameters

TSmsNonIEIdentifier aId
CSmsMessage & aMessage

~CSmsTPSRROperations()

~CSmsTPSRROperations()[inline]

Member Functions Documentation

GetScheme()

IMPORT_C TSmsStatusReportSchemeGetScheme()const

Gets the current scheme being used.

capability
None

GetStatusReport(TUint)

IMPORT_C TIntGetStatusReport(TUintaSegmentSequenceNum)const

Gets the selective status for a PDU if the scheme is set to the TPSRR Scheme.

capability
None

Parameters

TUint aSegmentSequenceNumThe segment sequence number of the PDU whose status report is required.

ResetSchemeL()

IMPORT_C voidResetSchemeL()

If the current scheme is set to TPSRR Scheme then this method sets the scheme to the Default scheme.

capability
None

SetDefaultL(TBool)

IMPORT_C voidSetDefaultL(TBoolaEnable)

Sets the default value of the status report to requested or not requested as per aEnable.

capability
None

Parameters

TBool aEnableTo set the default to Requested or Not Requested.

SetLastSegmentStatusReportL(TBool)

IMPORT_C voidSetLastSegmentStatusReportL(TBoolaEnable)

Sets the TPSRR bit for the last PDU depending on the value of aEnable. First the scheme is obtained by calling the GetStatusReportScheme. Then the array iTPSRRStatusReport is traversed to find the last segement. Once that is done the TPSRR bit for it is updated. If the last segment is not present in the array then it is appended to it with its TPSRR status.

leave
KErrNotFound If the scheme is not valid.
capability
None

Parameters

TBool aEnableETrue to set the TPSRR bit to TSmsFirstOctet::ESmsStatusReportRequested or EFalse to set it to TSmsFirstOctet::ESmsStatusReportNotRequested.

SetSchemeL()

IMPORT_C voidSetSchemeL()

This method is called to set the scheme to TPSRR Scheme. First iStatusReportScheme, which is obtained by calling GetStatusReportScheme, is deleted and the set to NULL. Then a new scheme is created and a default value is set. The last segment is set to have TPSRR bit as Requested. This should be the last method to be called in a message sending process as all the operations in this interface depend on the number of PDUs being set.

leave
If ValidateOperationL or NumMessagePDUsL leaves.
capability
None

SetSegmentStatusReportL(TUint, TBool)

IMPORT_C TIntSetSegmentStatusReportL(TUintaSegmentSequenceNum,
TBoolaEnable
)

Sets the TPSRR bit for any PDU depending on the value of aEnable. First the scheme is obtained by calling the GetStatusReportScheme. Then the array iTPSRRStatusReport is traversed to find the segment which has the reference number = aSegmentSequenceNum. Once that is done the TPSRR bit for it is updated.

If the refernce number is not found then it is added to the array.

leave
If ValidateOperationL or AppendL leaves.
capability
None

Parameters

TUint aSegmentSequenceNumSegment Sequence number of the PDU that is to be updated.
TBool aEnableETrue to set the TPSRR bit to TSmsFirstOctet::ESmsStatusReportRequested or EFalse to set it to TSmsFirstOctet::ESmsStatusReportNotRequested.

ValidateOperationL()

voidValidateOperationL()const [protected, virtual]

Identifies whether the message type or version supports this operation

leave
If the message type or version does not support this operation.

operator=(const CSmsTPSRROperations &)

voidoperator=(const CSmsTPSRROperations &)[protected]

Prevent clients from using the assignment operator by including it in the class definition but making it protected and not exporting it.

capability
None

Parameters

const CSmsTPSRROperations &

operator==(const CSmsTPSRROperations &)

TBool operator==(const CSmsTPSRROperations &)[protected]

Prevent clients from using the equality operator by including it in the class definition but making it protected and not exporting it.

capability
None

Parameters

const CSmsTPSRROperations &