CMdERelationCondition Class Reference

class CMdERelationCondition

Search condition for relations.

Public Member Functions
~CMdERelationCondition ()
IMPORT_C TBool Guid ( TInt64 &, TInt64 &)
TUint32 InternalQueryOptimizationFlags ( TUint32 &)
IMPORT_C TBool LastModifiedDateRange (TMdETimeRange &)
IMPORT_C CMdELogicCondition & LeftL ()
CMdERelationCondition * NewL ( TItemId , const RArray < TItemId > *, TRelationConditionSide, const CMdERelationDef *, const TMdEIntRange *)
CMdERelationCondition * NewLC ( TItemId , const RArray < TItemId > *, TRelationConditionSide, const CMdERelationDef *, const TMdEIntRange *)
IMPORT_C const TMdEIntRange * ParameterRange ()
IMPORT_C const CMdERelationDef * RelationDef ()
IMPORT_C TItemId RelationId ()
IMPORT_C const RArray < TItemId > * RelationIds ()
TUint32 RequiredBufferSize ()
IMPORT_C CMdELogicCondition & RightL ()
void SerializeL (CMdCSerializationBuffer &, TMdCOffset &)
IMPORT_C void SetGuid (const TInt64 &, const TInt64 &)
IMPORT_C void SetLastModifiedDateRangeL (const TMdETimeRange &)
IMPORT_C void SetSide (TRelationConditionSide)
TRelationConditionSide Side ()
Private Member Functions
CMdERelationCondition ( TItemId , TRelationConditionSide, const CMdERelationDef *)
void ConstructL (const RArray < TItemId > *, const TMdEIntRange *)
Private Attributes
TInt64 iGuidHigh
TInt64 iGuidLow
TMdETimeRange * iLastModifiedDateRange
CMdELogicCondition * iLeftCondition
TMdEIntRange * iParameterRange
const CMdERelationDef * iRelationDef
const TItemId iRelationId
RArray < TItemId > * iRelationIds
CMdELogicCondition * iRightCondition
TRelationConditionSide iSide

Constructor & Destructor Documentation

CMdERelationCondition(TItemId, TRelationConditionSide, const CMdERelationDef *)

CMdERelationCondition ( TItemId aRelationId,
TRelationConditionSide aSide,
const CMdERelationDef * aRelationDef
) [private]

Constructor.

Parameters

TItemId aRelationId The relation ID which an relation must match.
TRelationConditionSide aSide The side on which an object must be.
const CMdERelationDef * aRelationDef relation definition

~CMdERelationCondition()

~CMdERelationCondition ( ) [virtual]

Destructor.

Member Functions Documentation

ConstructL(const RArray< TItemId > *, const TMdEIntRange *)

void ConstructL ( const RArray < TItemId > * aRelationIds,
const TMdEIntRange * aParameterRange
) [private]

Second-phase constructor. Creates two LogicConditions as children of this relation condition and creates range condition for parameter. Ownership of the parameter stays with caller.

Parameters

const RArray < TItemId > * aRelationIds The relation IDs which an relation must match.
const TMdEIntRange * aParameterRange parameter range conditions

Guid(TInt64 &, TInt64 &)

IMPORT_C TBool Guid ( TInt64 & aGuidHigh,
TInt64 & aGuidLow
) const

Gets the GUID which a relation must match.

Parameters

TInt64 & aGuidHigh reference where GuidHigh will be stored
TInt64 & aGuidLow reference where GuidLow will be stored

InternalQueryOptimizationFlags(TUint32 &)

TUint32 InternalQueryOptimizationFlags ( TUint32 & aFlags )

Get possible query's internal optimization flags from condition.

Parameters

TUint32 & aFlags

LastModifiedDateRange(TMdETimeRange &)

IMPORT_C TBool LastModifiedDateRange ( TMdETimeRange & aLastModifiedDateRange ) const

Gets the last modified date range which a relation must match.

Parameters

TMdETimeRange & aLastModifiedDateRange reference where last modified date range will be stored

LeftL()

IMPORT_C CMdELogicCondition & LeftL ( )

Returns the conditions for the object on the left side of the relation.

NewL(TItemId, const RArray< TItemId > *, TRelationConditionSide, const CMdERelationDef *, const TMdEIntRange *)

CMdERelationCondition * NewL ( TItemId aRelationId =  KNoId ,
const RArray < TItemId > * aRelationIds = NULL,
TRelationConditionSide aSide = ERelationConditionSideEither,
const CMdERelationDef * aRelationDef = NULL,
const TMdEIntRange * aParameterRange = NULL
) [static]

Parameters

TItemId aRelationId =  KNoId
const RArray < TItemId > * aRelationIds = NULL
TRelationConditionSide aSide = ERelationConditionSideEither
const CMdERelationDef * aRelationDef = NULL
const TMdEIntRange * aParameterRange = NULL

NewLC(TItemId, const RArray< TItemId > *, TRelationConditionSide, const CMdERelationDef *, const TMdEIntRange *)

CMdERelationCondition * NewLC ( TItemId aRelationId =  KNoId ,
const RArray < TItemId > * aRelationIds = NULL,
TRelationConditionSide aSide = ERelationConditionSideEither,
const CMdERelationDef * aRelationDef = NULL,
const TMdEIntRange * aParameterRange = NULL
) [static]

Parameters

TItemId aRelationId =  KNoId
const RArray < TItemId > * aRelationIds = NULL
TRelationConditionSide aSide = ERelationConditionSideEither
const CMdERelationDef * aRelationDef = NULL
const TMdEIntRange * aParameterRange = NULL

ParameterRange()

IMPORT_C const TMdEIntRange * ParameterRange ( ) const

Returns the relation parameter range.

RelationDef()

IMPORT_C const CMdERelationDef * RelationDef ( ) const

Returns a pointer to the relation definition.

RelationId()

IMPORT_C TItemId RelationId ( ) const

Returns the relation ID.

RelationIds()

IMPORT_C const RArray < TItemId > * RelationIds ( ) const

Returns the relation IDs.

RequiredBufferSize()

TUint32 RequiredBufferSize ( ) const

Get required size of serialized buffer when it is serialized.

RightL()

IMPORT_C CMdELogicCondition & RightL ( )

Returns the conditions for the object on the right side of the relation.

SerializeL(CMdCSerializationBuffer &, TMdCOffset &)

void SerializeL ( CMdCSerializationBuffer & aBuffer,
TMdCOffset & aFreespaceOffset
) const

Serialize own data to serialized buffer (correct position must be set before calling).

Parameters

CMdCSerializationBuffer & aBuffer serialized buffer.
TMdCOffset & aFreespaceOffset

SetGuid(const TInt64 &, const TInt64 &)

IMPORT_C void SetGuid ( const TInt64 & aGuidHigh,
const TInt64 & aGuidLow
)

Sets the GUID which a relation must match.

Parameters

const TInt64 & aGuidHigh new GuidHigh value
const TInt64 & aGuidLow new GuidLow value

SetLastModifiedDateRangeL(const TMdETimeRange &)

IMPORT_C void SetLastModifiedDateRangeL ( const TMdETimeRange & aLastModifiedDateRange )

Sets the last modified date range which a relation must match.

Parameters

const TMdETimeRange & aLastModifiedDateRange

SetSide(TRelationConditionSide)

IMPORT_C void SetSide ( TRelationConditionSide aSide )

Sets the side on which a matched object must be.

Parameters

TRelationConditionSide aSide

Side()

TRelationConditionSide Side ( ) const

Returns the side on which a matched object must be.

Member Data Documentation

TInt64 iGuidHigh

TInt64 iGuidHigh [private]

Conditions for the relation GUID.

TInt64 iGuidLow

TInt64 iGuidLow [private]

TMdETimeRange * iLastModifiedDateRange

TMdETimeRange * iLastModifiedDateRange [private]

Conditions for the relation last modified date.

CMdELogicCondition * iLeftCondition

CMdELogicCondition * iLeftCondition [private]

Conditions for the left object.

TMdEIntRange * iParameterRange

TMdEIntRange * iParameterRange [private]

Conditions for the relation parameter.

const CMdERelationDef * iRelationDef

const CMdERelationDef * iRelationDef [private]

Relation definition.

const TItemId iRelationId

const TItemId iRelationId [private]

RArray< TItemId > * iRelationIds

RArray < TItemId > * iRelationIds [private]

CMdELogicCondition * iRightCondition

CMdELogicCondition * iRightCondition [private]

Conditions for the right object.

TRelationConditionSide iSide

TRelationConditionSide iSide [private]

The side on which an object must be.