diff -r 000000000000 -r c53acadfccc6 inc/mdcquery.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/inc/mdcquery.h Mon Jan 18 20:34:07 2010 +0200 @@ -0,0 +1,178 @@ +/* +* Copyright (c) 2002-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 query and condition definitions for MdE +* +*/ + +#ifndef __MDCQUERY_H__ +#define __MDCQUERY_H__ + +#include "mdscommoninternal.h" +#include "mdcserializationtype.h" + + +NONSHARABLE_CLASS(TMdCCondition) : protected TMdCSerializationType + { + protected: + TMdCCondition(TMdCStructTypes aType) : TMdCSerializationType( aType ) + { + } + + public: + /** + * Get condition reference from buffer. Doesn't change position of the + * buffer. Doesn't do type check. + * + * @param aBuffer serialization buffer + * + * @return reference to condition + */ + IMPORT_C static const TMdCCondition& GetFromBufferL( + CMdCSerializationBuffer& aBuffer ); + + public: + TInt16 iConditionType; + TInt16 iNegated; + }; + + +NONSHARABLE_CLASS(TMdCLogicCondition) : public TMdCCondition + { + public: + IMPORT_C TMdCLogicCondition(); + + IMPORT_C static const TMdCLogicCondition& GetFromBufferL( CMdCSerializationBuffer& aBuffer ); + IMPORT_C void SerializeL(CMdCSerializationBuffer& aBuffer); + IMPORT_C void DeserializeL(CMdCSerializationBuffer& aBuffer); + + public: + TInt16 iOperator; + TUint32 iOptimizationFlags; + TMdCValueUnion iChildConditions; + }; + +NONSHARABLE_CLASS(TMdCObjectCondition) : public TMdCCondition + { + public: + IMPORT_C TMdCObjectCondition(); + + IMPORT_C static const TMdCObjectCondition& GetFromBufferL( CMdCSerializationBuffer& aBuffer ); + IMPORT_C void SerializeL(CMdCSerializationBuffer& aBuffer); + IMPORT_C void DeserializeL(CMdCSerializationBuffer& aBuffer); + + public: + TInt16 iConfidentialityLevel; + TInt16 iCompareMethod; + TUint32 iFlags; + TMdCOffset iCondition; + }; + +NONSHARABLE_CLASS(TMdCEventCondition) : public TMdCCondition + { + public: + IMPORT_C TMdCEventCondition(); + + IMPORT_C static const TMdCEventCondition& GetFromBufferL( CMdCSerializationBuffer& aBuffer ); + IMPORT_C void SerializeL(CMdCSerializationBuffer& aBuffer); + IMPORT_C void DeserializeL(CMdCSerializationBuffer& aBuffer); + + public: + TInt16 iCompareMethod; + TItemId iEventId; + TDefId iEventDefId; + TMdCOffset iCreationTimeRange; + TMdCOffset iObjectCondition; + TMdCOffset iSourceCondition; + TMdCOffset iParticipantCondition; + TMdCOffset iUriCondition; + }; + +NONSHARABLE_CLASS(TMdCPropertyCondition) : public TMdCCondition + { + public: + IMPORT_C TMdCPropertyCondition(); + + IMPORT_C static const TMdCPropertyCondition& GetFromBufferL( CMdCSerializationBuffer& aBuffer ); + IMPORT_C void SerializeL(CMdCSerializationBuffer& aBuffer); + IMPORT_C void DeserializeL(CMdCSerializationBuffer& aBuffer); + + public: + TDefId iObjectDefId; + TDefId iPropertyDefId; + TMdCOffset iCondition; + }; + +NONSHARABLE_CLASS(TMdCRelationCondition) : public TMdCCondition + { + public: + IMPORT_C TMdCRelationCondition(); + + IMPORT_C static const TMdCRelationCondition& GetFromBufferL( CMdCSerializationBuffer& aBuffer ); + IMPORT_C void SerializeL(CMdCSerializationBuffer& aBuffer); + IMPORT_C void DeserializeL(CMdCSerializationBuffer& aBuffer); + + public: + TUint16 iObjectSide; + TDefId iRelationDefId; + TItemId iRelationId; + TMdCValueUnion iRelationIds; // IN + TMdCOffset iGuid; + TMdCOffset iParameterRange; + TMdCOffset iLeftObjectCondition; + TMdCOffset iRightObjectCondition; + TMdCOffset iLastModifiedDateRange; + }; + +NONSHARABLE_CLASS(TMdCSearchCriteria) : protected TMdCSerializationType + { + public: + IMPORT_C TMdCSearchCriteria(); + + IMPORT_C static const TMdCSearchCriteria& GetFromBufferL( CMdCSerializationBuffer& aBuffer ); + IMPORT_C void SerializeL(CMdCSerializationBuffer& aBuffer); + IMPORT_C void DeserializeL(CMdCSerializationBuffer& aBuffer); + + public: + TInt16 iQueryResultType; + TInt16 iQueryType; + TDefId iNamespaceDefId; + TDefId iObjectDefId; + TMdCValueUnion iObjectDefIds; + TUint32 iLimit; + TUint32 iOffset; + TUint32 iOptimizationFlags; + TMdCOffset iRootCondition; + TMdCValueUnion iOrderRules; + TMdCValueUnion iPropertyFilters; + }; + +NONSHARABLE_CLASS(TMdCOrderRule) : protected TMdCSerializationType + { + public: + IMPORT_C TMdCOrderRule(); + + IMPORT_C static const TMdCOrderRule& GetFromBufferL( CMdCSerializationBuffer& aBuffer ); + IMPORT_C void SerializeL(CMdCSerializationBuffer& aBuffer); + IMPORT_C void DeserializeL(CMdCSerializationBuffer& aBuffer); + + public: + TInt16 iOrderRule; + TBool iAscending; + TBool iCaseSensitive; + TDefId iPropertyDefId; + }; + + + +#endif /*__MDCQUERY_H__*/