inc/mdccriteria.h
author Dremov Kirill (Nokia-D-MSW/Tampere) <kirill.dremov@nokia.com>
Wed, 13 Oct 2010 15:02:02 +0300
branchRCL_3
changeset 63 e538444823de
parent 0 c53acadfccc6
permissions -rw-r--r--
Revision: 201039 Kit: 201041

/*
* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies). 
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description:  common criteria object for MdE
*
*/

#ifndef MDCCRITERIA_H_
#define MDCCRITERIA_H_

#include "mdscommoninternal.h"
#include "mdcserializationtype.h"

TMdCSearchCriteria : protected TMdCSerializationType
{
	TInt16 iQueryResultType;
	TInt16 iQueryType;
	TDefId iNamespaceDefId;
	TDefId iObjectDefId;
	TMdCValueUnion iObjectDefIds;
	TUint32 iLimit;
	//TUint32 iOffset; NOT USED
	TUint32 iOptimizationFlags;
	TUint32 iRootConditionOffset;
	TMdCValueUnion iOrderRules;
	TMdCValueUnion iPropertyFilters;
};

TMdCOrderRule : protected TMdCSerializationType
{
	TInt16 iOrderRule;
	TUint16 iFlags;
	TDefId iPropertyDefId;
};

TMdCCondition : protected TMdCSerializationType
{
	TInt16 iConditionType;
	TInt16 iNegated;
};

TMdCLogicCondition : public TMdCCondition
{
	TInt16 iOperator;
	TUint32 iOptimizationFlags;
	TMdCValueUnion iChildConditions;
};

TMdCObjectCondition : public TMdCCondition
{
	TInt16 iConfidentialityLevel;
	TInt16 iCompareMethod;
	TUint32 iFlags;
	TUint32 iConditionOffset;
};

TMdCPropertyCondition : public TMdCCondition
{
	TDefId iObjectDefId;
	TDefId iPropertyDefId;
	TUint32 iConditionOffset;
};

TMdCRelationCondition : public TMdCCondition
{
	TInt16 iObjectSide;
	TItemId iRelationId;
	TMdCValueUnion iRelationIds;
	TDefId iRelationDefId;
	TUint32 iGuidOffset;
	TUint32 iParameterRangeOffset;
	TUint32 iLeftObjectConditionOffset;
	TUint32 iRightObjectConditionOffset;
	TUint32 iLastModifiedDateRangeOffset;
};

TMdCEventCondition : public TMdCCondition
{
	TInt16 iCompareMethod;
	TItemId iEventId;
	TDefId iEventDefId;
	TUint32 iCreationTimeOffset;
	TUint32 iObjectConditionOffset;
	TUint32 iSourceConditionOffset;
	TUint32 iParticipantConditionOffset;
	TUint32 iUriConditionOffset;
};

#endif /*MDCCRITERIA_H_*/