#include <gsmunonieoperations.h>
class CSmsTPSRROperations : public CSmsCtrlNonIEOperation, public CSmsCtrlNonIEOperation |
Public Member Functions | |
---|---|
CSmsTPSRROperations(TSmsNonIEIdentifier, CSmsMessage &) | |
~CSmsTPSRROperations() | |
IMPORT_C TSmsStatusReportScheme | GetScheme() |
IMPORT_C TInt | GetStatusReport(TUint) |
IMPORT_C void | ResetSchemeL() |
IMPORT_C void | SetDefaultL(TBool) |
IMPORT_C void | SetLastSegmentStatusReportL(TBool) |
IMPORT_C void | SetSchemeL() |
IMPORT_C TInt | SetSegmentStatusReportL(TUint, TBool) |
Protected Member Functions | |
---|---|
virtual void | ValidateOperationL() |
void | operator=(const CSmsTPSRROperations &) |
TBool | operator==(const CSmsTPSRROperations &) |
Inherited Attributes | |
---|---|
CSmsNonIEOperation::iMessage |
CSmsTPSRROperations | ( | TSmsNonIEIdentifier | aId, |
CSmsMessage & | aMessage | ||
) |
Status Reporting.
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.
~CSmsTPSRROperations | ( | ) | [inline] |
IMPORT_C TSmsStatusReportScheme | GetScheme | ( | ) | const |
Gets the current scheme being used.
Capability | |
---|---|
None |
IMPORT_C void | ResetSchemeL | ( | ) |
If the current scheme is set to TPSRR Scheme then this method sets the scheme to the Default scheme.
Capability | |
---|---|
None |
IMPORT_C void | SetDefaultL | ( | TBool | aEnable | ) |
Sets the default value of the status report to requested or not requested as per aEnable.
Parameters | |
---|---|
aEnable | To set the default to Requested or Not Requested. |
Capability | |
---|---|
None |
IMPORT_C void | SetLastSegmentStatusReportL | ( | TBool | aEnable | ) |
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.
Parameters | |
---|---|
aEnable | ETrue to set the TPSRR bit to TSmsFirstOctet::ESmsStatusReportRequested or EFalse to set it to TSmsFirstOctet::ESmsStatusReportNotRequested. |
Leave Codes | |
---|---|
KErrNotFound | If the scheme is not valid. |
Capability | |
---|---|
None |
IMPORT_C void | SetSchemeL | ( | ) |
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 Codes | |
---|---|
If | ValidateOperationL or NumMessagePDUsL leaves. |
Capability | |
---|---|
None |
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.
Parameters | |
---|---|
aSegmentSequenceNum | Segment Sequence number of the PDU that is to be updated. |
aEnable | ETrue to set the TPSRR bit to TSmsFirstOctet::ESmsStatusReportRequested or EFalse to set it to TSmsFirstOctet::ESmsStatusReportNotRequested. |
Leave Codes | |
---|---|
If | ValidateOperationL or AppendL leaves. |
Capability | |
---|---|
None |
void | ValidateOperationL | ( | ) | const [protected, virtual] |
Reimplemented from CSmsNonIEOperation::ValidateOperationL()const
Identifies whether the message type or version supports this operation
Leave Codes | |
---|---|
If | the message type or version does not support this operation. |
void | operator= | ( | 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 |
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 |