CMTPTypeServiceObjPropExtnForm Class Reference

class CMTPTypeServiceObjPropExtnForm : public CMTPTypeCompoundBase

Defines the MTP ObjectPropDesc Service Object Property Extension FORM dataset. The dataset is a component element of the ObjectPropDesc dataset. CMTPTypeObjectPropDesc

Inherits from

Public Member Functions
~CMTPTypeServiceObjPropExtnForm()
IMPORT_C MMTPType *CommitChunkL(TPtr8 &)
IMPORT_C TBoolCommitRequired()
IMPORT_C TIntFirstWriteChunk(TPtr8 &)
IMPORT_C CMTPTypeServiceObjPropExtnForm *NewL(const TUint)
IMPORT_C CMTPTypeServiceObjPropExtnForm *NewL(const TUint, const TMTPTypeGuid, const TUint, const TDesC &, const TUint8, const MMTPType *)
IMPORT_C CMTPTypeServiceObjPropExtnForm *NewLC(const TUint)
IMPORT_C CMTPTypeServiceObjPropExtnForm *NewLC(const TUint, const TMTPTypeGuid, const TUint, const TDesC &, const TUint8, const MMTPType *)
IMPORT_C TIntNextWriteChunk(TPtr8 &)
IMPORT_C TUintType()
Private Member Functions
CMTPTypeServiceObjPropExtnForm(const TUint)
voidConstructL(const TMTPTypeGuid, const TUint, const TDesC &, const TUint8, const MMTPType *)
const TElementInfo &ElementInfo(TInt)
TBool HasFormField(TUint8)
TBool ReadableElementL(TInt)
TInt UpdateWriteSequenceErr(TInt)
TBool WriteableElementL(TInt)
Inherited Functions
CBase::CBase()
CBase::Delete(CBase *)
CBase::Extension_(TUint,TAny *&,TAny *)
CBase::operator new(TUint)
CBase::operator new(TUint,TAny *)
CBase::operator new(TUint,TLeave)
CBase::operator new(TUint,TLeave,TUint)
CBase::operator new(TUint,TUint)
CBase::~CBase()
CMTPTypeCompoundBase::CMTPTypeCompoundBase(TBool,TUint)
CMTPTypeCompoundBase::ChunkAppendL(const MMTPType &)
CMTPTypeCompoundBase::ChunkCount()const
CMTPTypeCompoundBase::ChunkRemove(TUint)
CMTPTypeCompoundBase::FirstReadChunk(TPtrC8 &)const
CMTPTypeCompoundBase::GetL(TInt,MMTPType &)const
CMTPTypeCompoundBase::Int16L(TInt)const
CMTPTypeCompoundBase::Int32L(TInt)const
CMTPTypeCompoundBase::Int64L(TInt)const
CMTPTypeCompoundBase::Int8L(TInt)const
CMTPTypeCompoundBase::NextReadChunk(TPtrC8 &)const
CMTPTypeCompoundBase::NextWriteChunk(TPtr8 &,TUint)
CMTPTypeCompoundBase::Reset()
CMTPTypeCompoundBase::SetExpectedChunkCount(TUint)
CMTPTypeCompoundBase::SetInt16L(TInt,TInt16)
CMTPTypeCompoundBase::SetInt32L(TInt,TInt32)
CMTPTypeCompoundBase::SetInt64L(TInt,TInt64)
CMTPTypeCompoundBase::SetInt8L(TInt,TInt8)
CMTPTypeCompoundBase::SetL(TInt,const MMTPType &)
CMTPTypeCompoundBase::SetStringL(TInt,const TDesC &)
CMTPTypeCompoundBase::SetUint16L(TInt,TUint16)
CMTPTypeCompoundBase::SetUint32L(TInt,TUint32)
CMTPTypeCompoundBase::SetUint64L(TInt,TUint64)
CMTPTypeCompoundBase::SetUint8L(TInt,TUint8)
CMTPTypeCompoundBase::Size()const
CMTPTypeCompoundBase::StringCharsL(TInt)const
CMTPTypeCompoundBase::StringNumCharsL(TInt)const
CMTPTypeCompoundBase::Uint16L(TInt)const
CMTPTypeCompoundBase::Uint32L(TInt)const
CMTPTypeCompoundBase::Uint64L(TInt)const
CMTPTypeCompoundBase::Uint8L(TInt)const
CMTPTypeCompoundBase::Validate()const
CMTPTypeCompoundBase::ValidateChunkCount()const
CMTPTypeCompoundBase::~CMTPTypeCompoundBase()
Public Member Enumerations
enumTMTPObjectPropDescElement {
EPKeyNamespace, EPKeyID, EPropertyName, EFormFlag, EForm, ENumElements
}
Private Member Enumerations
enumTChunkIds { EIdFlat1Chunk, EIdNameChunk, EIdFlat2Chunk, EIdFormChunk, EIdNumChunks }
enumTWriteSequenceState { EIdle, EFlat1Chunk, ENameChunk, EFlat2Chunk, EFormChunk }
Inherited Enumerations
CMTPTypeCompoundBase:TReadWriteSequenceState
Private Attributes
const TUintKFlat1ChunkSize
const TUintKFlat2ChunkSize
const TUintKNumChunksWithForm
const TUintKNumChunksWithoutForm
RMTPTypeCompoundFlatChunk iChunkFlat1
RMTPTypeCompoundFlatChunk iChunkFlat2
CMTPTypeObjectPropDesc::RMTPTypeObjectPropDescForm iChunkForm
CMTPTypeString *iChunkName
TUint iDataType
const TFixedArray< TElementInfo, ENumElements >iElementInfo
const CMTPTypeCompoundBase::TElementInfoiElementMetaData
TBool iInitialised
TUint iWriteSequenceCompletionState
TUint iWriteSequenceErr
TUint iWriteSequenceState
Inherited Attributes
CMTPTypeCompoundBase::KJustInTimeConstruction
CMTPTypeCompoundBase::KMTPNotApplicable
CMTPTypeCompoundBase::KVariableChunkCount
CMTPTypeCompoundBase::iChunks
CMTPTypeCompoundBase::iWriteChunk

Constructor & Destructor Documentation

CMTPTypeServiceObjPropExtnForm(const TUint)

CMTPTypeServiceObjPropExtnForm(const TUintaDataType)[private]

Parameters

const TUint aDataType

~CMTPTypeServiceObjPropExtnForm()

IMPORT_C~CMTPTypeServiceObjPropExtnForm()[virtual]

Destructor.

Member Functions Documentation

CommitChunkL(TPtr8 &)

IMPORT_C MMTPType *CommitChunkL(TPtr8 &aChunk)[virtual]

Parameters

TPtr8 & aChunk

CommitRequired()

IMPORT_C TBoolCommitRequired()const [virtual]

ConstructL(const TMTPTypeGuid, const TUint, const TDesC &, const TUint8, const MMTPType *)

voidConstructL(const TMTPTypeGuidaPKNamespace,
const TUintaPKID,
const TDesC &aName,
const TUint8aFormFlag,
const MMTPType *aForm
)[private]

Parameters

const TMTPTypeGuid aPKNamespace
const TUint aPKID
const TDesC & aName
const TUint8 aFormFlag
const MMTPType * aForm

ElementInfo(TInt)

const TElementInfo &ElementInfo(TIntaElementId)const [private, virtual]

Provides the TElementInfo data for the specified element.

Parameters

TInt aElementIdThe identifier of the requested element.

FirstWriteChunk(TPtr8 &)

IMPORT_C TIntFirstWriteChunk(TPtr8 &aChunk)[virtual]

Parameters

TPtr8 & aChunk

HasFormField(TUint8)

TBool HasFormField(TUint8aFormFlag)const [private]

Parameters

TUint8 aFormFlag

NewL(const TUint)

IMPORT_C CMTPTypeServiceObjPropExtnForm *NewL(const TUintaDataType)[static]
MTP Service Object Property Extension FORM dataset factory method. This method is used to create an empty MTP Service Object Property Extension FORM of the specified Datatype.
leave
One of the system wide error codes, if unsuccessful.

Parameters

const TUint aDataTypeThe data type identifier datacode of the object property.

NewL(const TUint, const TMTPTypeGuid, const TUint, const TDesC &, const TUint8, const MMTPType *)

IMPORT_C CMTPTypeServiceObjPropExtnForm *NewL(const TUintaDataType,
const TMTPTypeGuidaPKNamespace,
const TUintaPKID,
const TDesC &aName,
const TUint8aFormFlag,
const MMTPType *aForm
)[static]

Parameters

const TUint aDataType
const TMTPTypeGuid aPKNamespace
const TUint aPKID
const TDesC & aName
const TUint8 aFormFlag
const MMTPType * aForm

NewLC(const TUint)

IMPORT_C CMTPTypeServiceObjPropExtnForm *NewLC(const TUintaDataType)[static]
MTP DevicePropDesc Service Object Property Extension FORM factory method. This method is used to create an empty MTP Service Object Property Extension FORM of the specified Datatype.
leave
One of the system wide error codes, if unsuccessful.

Parameters

const TUint aDataTypeThe data type identifier datacode of the the object property.

NewLC(const TUint, const TMTPTypeGuid, const TUint, const TDesC &, const TUint8, const MMTPType *)

IMPORT_C CMTPTypeServiceObjPropExtnForm *NewLC(const TUintaDataType,
const TMTPTypeGuidaPKNamespace,
const TUintaPKID,
const TDesC &aName,
const TUint8aFormFlag,
const MMTPType *aForm
)[static]

Parameters

const TUint aDataType
const TMTPTypeGuid aPKNamespace
const TUint aPKID
const TDesC & aName
const TUint8 aFormFlag
const MMTPType * aForm

NextWriteChunk(TPtr8 &)

IMPORT_C TIntNextWriteChunk(TPtr8 &aChunk)[virtual]

Parameters

TPtr8 & aChunk

ReadableElementL(TInt)

TBool ReadableElementL(TIntaElementId)const [private, virtual]

Indicates if the specified element can be read from.

Parameters

TInt aElementIdThe identifier of the requested element.

Type()

IMPORT_C TUintType()const [virtual]

UpdateWriteSequenceErr(TInt)

TInt UpdateWriteSequenceErr(TIntaErr)[private]

Parameters

TInt aErr

WriteableElementL(TInt)

TBool WriteableElementL(TIntaElementId)const [private, virtual]

Indicates if the specified element can be written to.

Parameters

TInt aElementIdThe identifier of the requested element.

Member Enumerations Documentation

Enum TChunkIds

Data chunk identifiers.

Enumerators

EIdFlat1Chunk

The first flat data chunk ID.

EIdNameChunk

The EPropertyName element data chunk ID.

EIdFlat2Chunk

The second flat data chunk ID.

EIdFormChunk

The EForm element data chunk ID.

EIdNumChunks

The number of data chunks.

Enum TMTPObjectPropDescElement

MTP ObjectPropDesc Service Object Property Extension FORM element dataset identifiers.

Enumerators

EPKeyNamespace

Object Property PKeyNamespace.

EPKeyID

Object Property PKeyID

EPropertyName

PropertyName

EFormFlag

Form Flag .

EForm

FORM element. This element depends EFormFlag and is absent if EFormFlag is ENone.

ENumElements

The number of dataset elements.

Enum TWriteSequenceState

The write data stream states.

Enumerators

EIdle

Data stream is inactive.

EFlat1Chunk

Streaming the first flat data chunk.

ENameChunk

Streaming the EDefaultValue data chunk..

EFlat2Chunk

Streaming the second flat data chunk.

EFormChunk

Streaming the EForm data chunk.

Member Data Documentation

const TUint KFlat1ChunkSize

const TUintKFlat1ChunkSize[private, static]

const TUint KFlat2ChunkSize

const TUintKFlat2ChunkSize[private, static]

The size in bytes of the second flat data chunk.

const TUint KNumChunksWithForm

const TUintKNumChunksWithForm[private, static]

The data chunk count of ObjectPropDesc datasets with an EForm of other than ENone.

const TUint KNumChunksWithoutForm

const TUintKNumChunksWithoutForm[private, static]

The data chunk count of ObjectPropDesc datasets with an EForm of ENone.

RMTPTypeCompoundFlatChunk iChunkFlat1

RMTPTypeCompoundFlatChunk iChunkFlat1[private]

The flat data chunk comprising elements EPKeyNamespace and EPKeyID.

RMTPTypeCompoundFlatChunk iChunkFlat2

RMTPTypeCompoundFlatChunk iChunkFlat2[private]

The flat data chunk comprising elements EFormFlag.

CMTPTypeObjectPropDesc::RMTPTypeObjectPropDescForm iChunkForm

CMTPTypeObjectPropDesc::RMTPTypeObjectPropDescForm iChunkForm[private]

The EForm element data chunk.

CMTPTypeString * iChunkName

CMTPTypeString *iChunkName[private]

The EPropertyName element data chunk.

TUint iDataType

TUint iDataType[private]

The property's MTP data type identifier datacode.

const TFixedArray< TElementInfo, ENumElements > iElementInfo

const TFixedArray< TElementInfo, ENumElements >iElementInfo[private]

The dataset element metadata table.

const CMTPTypeCompoundBase::TElementInfo iElementMetaData

const CMTPTypeCompoundBase::TElementInfoiElementMetaData[private, static]

The dataset element metadata table content.

TBool iInitialised

TBool iInitialised[private]

The initialised flag indicating if construction is completeand that read-only elements can no longer be modified.

TUint iWriteSequenceCompletionState

TUint iWriteSequenceCompletionState[private]

The write data stream completion state. This will be set to EFlat2Chunk for ObjectPropDesc datasets with an EForm of ENone, otherwise this will be EFormChunk.

TUint iWriteSequenceErr

TUint iWriteSequenceErr[private]

The write data stream error state.

TUint iWriteSequenceState

TUint iWriteSequenceState[private]

The write data stream state variable.