CMTPTypeObjectInfo Class Reference

class CMTPTypeObjectInfo : public CMTPTypeCompoundBase

Defines the MTP ObjectInfo dataset. The ObjectInfo dataset describes the core properties of an MTP data object, and is generated in response to a GetObjectInfo operation request.

Inherits from

Public Member Functions
~CMTPTypeObjectInfo()
IMPORT_C CMTPTypeObjectInfo *NewL()
IMPORT_C CMTPTypeObjectInfo *NewLC()
IMPORT_C TUintType()
Private Member Functions
CMTPTypeObjectInfo()
voidConstructL()
const TElementInfo &ElementInfo(TInt)
MMTPType *NewFlatChunkL(const TElementInfo &)
MMTPType *NewStringChunkL(const TElementInfo &)
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::CommitChunkL(TPtr8 &)
CMTPTypeCompoundBase::CommitRequired()const
CMTPTypeCompoundBase::FirstReadChunk(TPtrC8 &)const
CMTPTypeCompoundBase::FirstWriteChunk(TPtr8 &)
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 &)
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::ValidateChunkCount()const
CMTPTypeCompoundBase::WriteableElementL(TInt)const
CMTPTypeCompoundBase::~CMTPTypeCompoundBase()
Public Member Enumerations
enumTMTPObjectInfoElement {
EStorageID, EObjectFormat, EProtectionStatus, EObjectCompressedSize, EThumbFormat, EThumbCompressedSize, EThumbPixWidth, EThumbPixHeight, EImagePixWidth, EImagePixHeight, EImageBitDepth, EParentObject, EAssociationType, EAssociationDescription, ESequenceNumber, EFilename, EDateCreated, EDateModified, EKeywords, ENumElements
}
Private Member Enumerations
enumTChunkIds {
EIdFlat1Chunk, EIdFilenameChunk, EIdDateCreatedChunk, EIdDateModifiedChunk, EIdKeywordsChunk, EIdNumChunks
}
Inherited Enumerations
CMTPTypeCompoundBase:TReadWriteSequenceState
Private Attributes
const TUintKFlatChunkSize
RMTPTypeCompoundFlatChunk iChunkFlat
RPointerArray< CMTPTypeString >iChunksString
const TFixedArray< TElementInfo, ENumElements >iElementInfo
const CMTPTypeCompoundBase::TElementInfoiElementMetaData
Inherited Attributes
CMTPTypeCompoundBase::KJustInTimeConstruction
CMTPTypeCompoundBase::KMTPNotApplicable
CMTPTypeCompoundBase::KVariableChunkCount
CMTPTypeCompoundBase::iChunks
CMTPTypeCompoundBase::iWriteChunk
CMTPTypeCompoundBase::iWriteSequenceState

Constructor & Destructor Documentation

CMTPTypeObjectInfo()

CMTPTypeObjectInfo()[private]

~CMTPTypeObjectInfo()

IMPORT_C~CMTPTypeObjectInfo()[virtual]

Destructor.

Member Functions Documentation

ConstructL()

voidConstructL()[private]

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.

NewFlatChunkL(const TElementInfo &)

MMTPType *NewFlatChunkL(const TElementInfo &aElementInfo)[private]

Parameters

const TElementInfo & aElementInfo

NewL()

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

NewLC()

IMPORT_C CMTPTypeObjectInfo *NewLC()[static]
MTP ObjectInfo dataset factory method. This method is used to create an empty MTP ObjectInfo dataset type.
leave
One of the system wide error codes, if unsuccessful.

NewStringChunkL(const TElementInfo &)

MMTPType *NewStringChunkL(const TElementInfo &aElementInfo)[private]

Parameters

const TElementInfo & aElementInfo

Type()

IMPORT_C TUintType()const [virtual]

Member Enumerations Documentation

Enum TChunkIds

Data chunk identifiers.

Enumerators

EIdFlat1Chunk

The first flat data chunk ID.

EIdFilenameChunk

The EFilename element data chunk ID.

EIdDateCreatedChunk

The EDateCreated element data chunk ID.

EIdDateModifiedChunk

The EDateModified element data chunk ID.

EIdKeywordsChunk

The EKeywords element data chunk ID.

EIdNumChunks

The number of data chunks.

Enum TMTPObjectInfoElement

MTP ObjectInfo dataset element identifiers.

Enumerators

EStorageID

StorageID.

EObjectFormat

Object Format.

EProtectionStatus

Protection Status.

EObjectCompressedSize

Object Compressed Size.

EThumbFormat

Thumb Format.

EThumbCompressedSize

Thumb Compressed Size.

EThumbPixWidth

Thumb Pix Width.

EThumbPixHeight

Thumb Pix Height.

EImagePixWidth

Image Pix Width.

EImagePixHeight

Image Pix Height.

EImageBitDepth

Image Bit Depth.

EParentObject

Parent Object.

EAssociationType

Association Type.

EAssociationDescription

Association Description.

ESequenceNumber

Sequence Number.

EFilename

Filename.

EDateCreated

Date Created.

EDateModified

Date Modified.

EKeywords

Keywords.

ENumElements

The number of dataset elements.

Member Data Documentation

const TUint KFlatChunkSize

const TUintKFlatChunkSize[private, static]

The size in bytes of the flat data chunk.

RMTPTypeCompoundFlatChunk iChunkFlat

RMTPTypeCompoundFlatChunk iChunkFlat[private]

The flat data chunk comprising elements EStorageID to EParentObject.

RPointerArray< CMTPTypeString > iChunksString

RPointerArray< CMTPTypeString >iChunksString[private]

MTP string type data chunks (EFilename, EDateCreated, EDateModified, and EKeywords).

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.