CMTPTypeInterdependentProperties Class Reference

class CMTPTypeInterdependentProperties : public CMTPTypeCompoundBase

Defines the MTP InterdependentPropDesc array element dataset. The InterdependentPropDesc array element dataset is itself an array of MTP ObjectPropDesc datasets that specifies one possible definition for the interdependent properties that are contained in that array.

Inherits from

Public Member Functions
~CMTPTypeInterdependentProperties ()
IMPORT_C void AppendL ( CMTPTypeObjectPropDesc *)
IMPORT_C MMTPType * CommitChunkL ( TPtr8 &)
IMPORT_C TBool CommitRequired ()
IMPORT_C TInt FirstWriteChunk ( TPtr8 &)
IMPORT_C CMTPTypeInterdependentProperties * NewL ()
IMPORT_C CMTPTypeInterdependentProperties * NewLC ()
IMPORT_C TInt NextWriteChunk ( TPtr8 &)
IMPORT_C TUint32 NumberOfPropDescs ()
IMPORT_C CMTPTypeObjectPropDesc & ObjectPropDesc ( TUint )
IMPORT_C TUint Type ()
Private Member Functions
CMTPTypeInterdependentProperties ()
void AppendElementChunkL ( CMTPTypeObjectPropDesc *)
void ConstructL ()
const TElementInfo & ElementInfo ( TInt )
TInt UpdateWriteSequenceErr ( TInt )
TInt ValidateChunkCount ()
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::ReadableElementL(TInt)const
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::WriteableElementL(TInt)const
CMTPTypeCompoundBase::~CMTPTypeCompoundBase()
Private Member Enumerations
enum TReadWriteSequenceState { EIdle , EInProgress }
Private Attributes
const TUint KNumberOfPropDescsChunk
const TUint KObjectPropDescChunks
TMTPTypeUint32 iChunkNumberOfPropDescs
RPointerArray < CMTPTypeObjectPropDesc > iChunksObjectPropDesc
CMTPTypeCompoundBase::TElementInfo iInfoNumberOfPropDescs
CMTPTypeCompoundBase::TElementInfo iInfoObjectPropDesc
TInt iWriteSequenceErr
TUint iWriteSequenceState
Inherited Attributes
CMTPTypeCompoundBase::KJustInTimeConstruction
CMTPTypeCompoundBase::KMTPNotApplicable
CMTPTypeCompoundBase::KVariableChunkCount
CMTPTypeCompoundBase::iChunks
CMTPTypeCompoundBase::iWriteChunk

Constructor & Destructor Documentation

CMTPTypeInterdependentProperties()

CMTPTypeInterdependentProperties ( ) [private]

~CMTPTypeInterdependentProperties()

IMPORT_C ~CMTPTypeInterdependentProperties ( ) [virtual]

Destructor.

Member Functions Documentation

AppendElementChunkL(CMTPTypeObjectPropDesc *)

void AppendElementChunkL ( CMTPTypeObjectPropDesc * aElement ) [private]

Parameters

CMTPTypeObjectPropDesc * aElement

AppendL(CMTPTypeObjectPropDesc *)

IMPORT_C void AppendL ( CMTPTypeObjectPropDesc * aObjectPropDesc )
Appends the specified ObjectPropDesc dataset to the InterdependentPropDesc array element array. Ownership of the specified ObjectPropDesc dataset is passed to the InterdependentPropDesc array element array.
leave
One of the system wide error codes, if unsuccessful.

Parameters

CMTPTypeObjectPropDesc * aObjectPropDesc The ObjectPropDesc dataset to append. Ownership IS transferred.

CommitChunkL(TPtr8 &)

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

Parameters

TPtr8 & aChunk

CommitRequired()

IMPORT_C TBool CommitRequired ( ) const [virtual]

ConstructL()

void ConstructL ( ) [private]

ElementInfo(TInt)

const TElementInfo & ElementInfo ( TInt aElementId ) const [private, virtual]

Provides the TElementInfo data for the specified element.

Parameters

TInt aElementId The identifier of the requested element.

FirstWriteChunk(TPtr8 &)

IMPORT_C TInt FirstWriteChunk ( TPtr8 & aChunk ) [virtual]

Parameters

TPtr8 & aChunk

NewL()

IMPORT_C CMTPTypeInterdependentProperties * NewL ( ) [static]
MTP InterdependentPropDesc array element dataset factory method. This method is used to create an empty MTP InterdependentPropDesc array element dataset.
leave
One of the system wide error codes, if unsuccessful.

NewLC()

IMPORT_C CMTPTypeInterdependentProperties * NewLC ( ) [static]
MTP InterdependentPropDesc array element dataset factory method. This method is used to create an empty MTP InterdependentPropDesc array element dataset. A pointer to the data type is placed on the cleanup stack.
leave
One of the system wide error codes, if unsuccessful.

NextWriteChunk(TPtr8 &)

IMPORT_C TInt NextWriteChunk ( TPtr8 & aChunk ) [virtual]

Parameters

TPtr8 & aChunk

NumberOfPropDescs()

IMPORT_C TUint32 NumberOfPropDescs ( ) const

Provides the NumberOfPropDescs element value.

ObjectPropDesc(TUint)

IMPORT_C CMTPTypeObjectPropDesc & ObjectPropDesc ( TUint aIndex ) const
Provides a non-const reference to the InterdependentPropDesc value quadruple element at the specified index.
leave
One of the system wide error codes, if unsuccessful.

Parameters

TUint aIndex The index of the required element.

Type()

IMPORT_C TUint Type ( ) const [virtual]

UpdateWriteSequenceErr(TInt)

TInt UpdateWriteSequenceErr ( TInt aErr ) [private]

Parameters

TInt aErr

ValidateChunkCount()

TInt ValidateChunkCount ( ) const [private, virtual]

Validates that the number of chunks making up the compound type is valid. This method is invoked on variable length compound types by the default Valid implementation. Valid KVariableChunkCount

Member Enumerations Documentation

Enum TReadWriteSequenceState

The write data stream states.

Enumerators

EIdle

Data stream is inactive.

EInProgress

Data stream is in progress.

Member Data Documentation

const TUint KNumberOfPropDescsChunk

const TUint KNumberOfPropDescsChunk [private, static]

The NumberOfPropDescs element data chunk ID.

const TUint KObjectPropDescChunks

const TUint KObjectPropDescChunks [private, static]

The ObjectPropDesc array starting element data chuck ID.

TMTPTypeUint32 iChunkNumberOfPropDescs

TMTPTypeUint32 iChunkNumberOfPropDescs [private]

The NumberOfPropDescs element data chunk.

RPointerArray< CMTPTypeObjectPropDesc > iChunksObjectPropDesc

RPointerArray < CMTPTypeObjectPropDesc > iChunksObjectPropDesc [private]

The ObjectPropDesc elements array data chunks.

CMTPTypeCompoundBase::TElementInfo iInfoNumberOfPropDescs

CMTPTypeCompoundBase::TElementInfo iInfoNumberOfPropDescs [private]

The NumberOfPropDescs element metadata content.

CMTPTypeCompoundBase::TElementInfo iInfoObjectPropDesc

CMTPTypeCompoundBase::TElementInfo iInfoObjectPropDesc [private]

The ObjectPropDesc array elements metadata content. Note that this is declared mutable to allow state updates while processing a read data stream.

TInt iWriteSequenceErr

TInt iWriteSequenceErr [private]

The write data stream error state.

TUint iWriteSequenceState

TUint iWriteSequenceState [private]

The write data stream state variable.