--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/dependencies/aiwdialdata.h Fri Mar 26 04:17:01 2010 +0530
@@ -0,0 +1,213 @@
+/*
+* Copyright (c) 2005-2006 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: Dial data used with AIW for making calls.
+*
+*/
+
+
+#ifndef CAIWDIALDATA_H
+#define CAIWDIALDATA_H
+
+// INCLUDES
+#include <e32base.h>
+
+// FORWARD DECLARATIONS
+class CAiwGenericParamList;
+class CAiwInternalDialData;
+
+/** Constant used by aiwdialdata interface. */
+namespace AIWDialData
+ {
+ /** Maximum phone number length same as used by phone. */
+ const TInt KMaximumPhoneNumberLength = 100;
+
+ /** Default windowgroup value */
+ const TInt KAiwGoToIdle(0);
+ }
+
+// CLASS DECLARATION
+
+/**
+* Creating call using CAiwDialData API.
+*
+* @code
+*
+* - Client must be Service Handler client. For more information see
+* service handler desing document.
+*
+* - Client creates intance of CAiwDialData:
+*
+* CAiwDialData* dialData = CAiwDialData::NewLC();
+*
+* - Define call parameters(phone number is compulsory parameter ):
+*
+* dialData->SetCallType( CAiwDialData::EAIWVoice );
+* _LIT(phoneNumber, "050123456");
+* dialData->SetPhoneNumberL( phoneNumber );
+* dialData->SetWindowGroup( AIWDialData::KAiwGoToIdle );
+*
+* - Client creates reference to CAiwGenericParamList and fills paramlist:
+*
+* CAiwGenericParamList& paramList = iServiceHandler->InParamListL();
+* dialData->FillInParamListL( paramList );
+*
+* - Now client can give execute command to service handler.
+*
+* iServiceHandler->ExecuteServiceCmdL( KAiwCmdCall, paramList,
+* iServiceHandler->OutParamListL(),
+* 0, NULL );
+* @endcode
+*
+* Dial data for SDK applications.
+*
+* @lib aiwdialdata.lib
+* @since S60 3.2
+*/
+NONSHARABLE_CLASS( CAiwDialData ): public CBase
+ {
+ public: // Enum.
+
+ /** Different type of calls. */
+ enum TCallType
+ {
+ /* Voice call. If there is a VoIP service that is registered and set as preferred, the
+ * call is created as VoIP call, otherwise CS call. */
+ EAIWVoice = 0,
+ /** Video call. */
+ EAIWVideo = 1,
+ /** Forced video call, creates video call directly without
+ * queries. */
+ EAIWForcedVideo = 2,
+ /** Voip call. */
+ EAIWVoiP = 3,
+ /* Forced voice call, creates always CS voice call. Use this value if the call type is
+ * not allowed to be changed */
+ EAIWForcedCS = 4
+ };
+
+ public: // Constructors and destructor
+
+ /**
+ * Two-phased constructor for implementation class.
+ * Use this method for creating a instance with null items.
+ *
+ * @since S60 3.2
+ * @return A pointer to the new object.
+ */
+ IMPORT_C static CAiwDialData* NewL();
+
+ /**
+ * Two-phased constructor for implementation class. Leaves the
+ * pointer to the cleanup stack.
+ * Use this method for creating a instance with null items.
+ *
+ * @since S60 3.2
+ * @return A pointer to the new object.
+ */
+ IMPORT_C static CAiwDialData* NewLC();
+
+ /**
+ * Destructor.
+ */
+ virtual ~CAiwDialData();
+
+ public: // New
+
+ /**
+ * Composes data set package and inserts data to aInParamList.
+ *
+ * @since S60 3.2
+ * @param aInParamList In parameter used with CAiwService.
+ */
+ IMPORT_C void FillInParamListL( CAiwGenericParamList& aInParamList );
+
+ public: // Access - Setters
+
+ /**
+ * Sets the phone number.
+ *
+ * @since S60 3.2
+ * @param aPhoneNumber Phone number, which maximum length is
+ * KMaximumPhoneNumberLength.
+ * Default: empty.
+ * @leaves KErrArgument if aPhoneNumber length is over
+ * KMaximumPhoneNumberLength.
+ */
+ IMPORT_C void SetPhoneNumberL( const TDesC& aPhoneNumber );
+
+ /**
+ * Sets call type.
+ *
+ * @since S60 3.2
+ * @param aCallType defines the call type.
+ * Default: EAIWVoice.
+ */
+ IMPORT_C void SetCallType( TCallType aCallType );
+
+ /**
+ * Sets the window group identifier. When call is ended,
+ * set window group is actived.
+ *
+ * @since S60 3.2
+ * @param aWindowGroup Window group id.
+ * Default: KAiwGoToIdle.
+ */
+ IMPORT_C void SetWindowGroup( TInt aWindowGroup );
+
+ public: // Access - Getters
+
+ /**
+ * Phone number.
+ *
+ * @since S60 3.2
+ * @return Phone number.
+ */
+ IMPORT_C const TDesC& PhoneNumber() const;
+
+ /**
+ * Call type.
+ *
+ * @since S60 3.2
+ * @return Current call type.
+ */
+ IMPORT_C TCallType CallType() const;
+
+ /**
+ * Window group id.
+ *
+ * @since S60 3.2
+ * @return Window group id.
+ */
+ IMPORT_C TInt WindowGroup() const;
+
+ private:
+
+ /**
+ * C++ default constructor.
+ */
+ CAiwDialData();
+
+ /**
+ * By default Symbian 2nd phase constructor is private.
+ */
+ void ConstructL();
+
+ private:
+
+ CAiwInternalDialData* iInternalDialData;
+ };
+
+#endif // CAIWDIALDATA_H
+
+// End of File