diff -r 3406c99bc375 -r 07b41fa8d1dd stif/stif_plat/inc/StifTFwIfProt.h --- a/stif/stif_plat/inc/StifTFwIfProt.h Thu Jul 15 20:25:38 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,422 +0,0 @@ -/* -* Copyright (c) 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: This file contains the header file of the -* CStifTFwIfProt. -* -*/ - -#ifndef STIF_TFW_IF_PROT_H -#define STIF_TFW_IF_PROT_H - -// INCLUDES -#include -#include -#include -#include - -// CONSTANTS -// Protocol identifier length -const TInt KProtocolIdLength=8; -// Default allocation size for message created with CreateL -const TInt KDefaultMsgSize=0x200; -// Maximum length for value added to type-value parameter -const TInt KMaxValueLength=12; - -// MACROS -// Macros for identifier manipulation -#define DEVID(x) ((TUint16)( ( 0xffff0000 & ((TUint32)(x)) ) >> 16 )) -#define TESTID(x) ((TUint16)( 0x0000ffff & ((TUint32)(x)) )) -#define SETID(d,t) ((TUint32)(( ( 0x0000ffff & ((TUint32)(d)) ) << 16 )|( 0x0000ffff & ((TUint32)(t)) ))) -#define GETDEVID(x) ((TUint32)( 0xffff0000 & ((TUint32)(x)) )) - -// DATA TYPES -typedef TPtrC (*KeywordFunc)( TInt aKeyword ); -// typedef TBuf TRemoteProtMsg; - -// FUNCTION PROTOTYPES -// None - -// FORWARD DECLARATIONS -// None - -// CLASS DECLARATION - -// DESCRIPTION - -// CStifTFwIfProt is the control protocol interface -class CStifTFwIfProt - :public CBase - { - public: // Enumerations - - // Message type - enum TMsgType - { - EMsgReserve, - EMsgRelease, - EMsgRemote, - EMsgResponse, - }; - - // Command types - enum TCmdType - { - ECmdRun, - ECmdPause, - ECmdResume, - ECmdCancel, - ECmdRequest, - ECmdRelease, - ECmdSendReceive, - ECmdSetEvent, - ECmdUnsetEvent, - - ECmdUnknown, - }; - - // Remote device type - enum TRemoteType - { - ERemotePhone, - //ERemoteCallBox, ... - - ERemoteUnknown, - }; - - // Run parameters - enum TRunParams - { - ERunModule, - ERunInifile, - ERunTestcasefile, - ERunTestcasenum, - ERunTitle, - }; - - // Response parameters - enum TRespParam - { - ERespResult, - }; - - // Run status - enum TRunStatus - { - ERunStarted, - ERunError, - ERunReady, - }; - - // Run status parameters - enum TRunStatusParams - { - ERunResult, - ERunCategory, - }; - - // Execution result category - enum TResultCategory - { - EResultNormal = 0, - EResultPanic, - EResultException, - EResultTimeout, - EResultLeave, - }; - - // Event status - enum TEventStatus - { - EEventActive, - EEventSet, - EEventError, - }; - - // Event status - enum TEventStatusParams - { - EEventResult, - EEventType, - }; - - private: // Enumerations - - public: // Constructors and destructor - - /** - * Two-phased constructor. - */ - IMPORT_C static CStifTFwIfProt* NewL(); - - /** - * Destructor. - */ - IMPORT_C virtual ~CStifTFwIfProt(); - - public: // New functions - - /* - * Get message handle - */ - virtual const TDesC& Message(){ return iMessage; }; - - /** - * Set message. - */ - IMPORT_C TInt SetL( const TDesC& aMessage ); - - /** - * Create message. - */ - IMPORT_C void CreateL( TInt aLength = KDefaultMsgSize ); - - /** - * Append string to message. - */ - IMPORT_C TInt Append( const TDesC& aStr ); - - /** - * Append hexadecimal protocol identifier to message. - */ - IMPORT_C TInt AppendId( TUint32 aId ); - - /** - * Append keyword string to message. - */ - IMPORT_C TInt Append( KeywordFunc aFunc, TInt aKeyword ); - - /** - * Append keyword type-value string to message. - */ - IMPORT_C TInt Append( KeywordFunc aFunc, TInt aKeyword, TInt aValue ); - - /** - * Append keyword type-value string to message. - */ - IMPORT_C TInt Append( KeywordFunc aFunc, - TInt aKeyword, - const TDesC& aStr ); - - /** - * Append keyword type-value string to message. - */ - IMPORT_C TInt Append( KeywordFunc aFunc, - TInt aKeyword, - KeywordFunc aValueFunc, - TInt aValue ); - - /** - * Get protocol source identifier. - */ - IMPORT_C TUint32 SrcId(); - - /** - * Get protocol source device identifier. - */ - IMPORT_C TUint16 SrcDevId(); - - /** - * Get protocol source test identifier. - */ - IMPORT_C TUint16 SrcTestId(); - - /** - * Get protocol destination identifier. - */ - IMPORT_C TUint32 DstId(); - - /** - * Get protocol destination device identifier. - */ - IMPORT_C TUint16 DstDevId(); - - /** - * Get protocol destination test identifier. - */ - IMPORT_C TUint16 DstTestId(); - - /** - * Set protocol source identifier. - */ - IMPORT_C TInt SetSrcId( TUint32 aSrcId ); - - /** - * Set protocol destination identifier. - */ - IMPORT_C TInt SetDstId( TUint32 aDstId ); - - /** - * Set message type. - */ - IMPORT_C TInt SetMsgType( TMsgType aMsgType ); - - /** - * Set response type. - */ - IMPORT_C TInt SetRespType( TMsgType aRespType ); - - /** - * Set message type. - */ - IMPORT_C TInt SetCmdType( TCmdType aCmdType ); - - /* - * String containers. - */ - IMPORT_C static TPtrC MsgType( TInt aKeyword ); - - IMPORT_C static TPtrC CmdType( TInt aKeyword ); - - IMPORT_C static TPtrC RemoteType( TInt aKeyword ); - - IMPORT_C static TPtrC RunParams( TInt aKeyword ); - - IMPORT_C static TPtrC RunStatus( TInt aKeyword ); - - IMPORT_C static TPtrC RunStatusParams( TInt aKeyword ); - - IMPORT_C static TPtrC ResultCategory( TInt aKeyword ); - - IMPORT_C static TPtrC EventStatus( TInt aKeyword ); - - IMPORT_C static TPtrC EventStatusParams( TInt aKeyword ); - - IMPORT_C static TPtrC EventType( TInt aKeyword ); - - IMPORT_C static TPtrC RespParam( TInt aKeyword ); - - public: // Functions from base classes - - /** - * From - - protected: // New functions - - /** - * - */ - // - - protected: // Functions from base classes - - /** - * From - */ - // - - private: - /** - * C++ default constructor. - */ - CStifTFwIfProt(); - - /** - * By default Symbian OS constructor is private. - */ - void ConstructL(); - - /** - * Parsing functions. - */ - TInt ParseMessageL(); - - void ParseHeaderL(); - - void ParseReserveL(); - - void ParseRemoteL(); - - void ParseResponseL(); - - void ParseCmdResponseL(); - - static TInt Parse( TDesC& aKeyword, KeywordFunc aFunc ); - - static TInt ParseOptArg( const TDesC& aOptArg, TPtrC& aArg, TPtrC& aVal ); - - public: //Data - // Message type - TMsgType iMsgType; - // Remote type - TRemoteType iRemoteType; - // Response request type - TMsgType iRespType; - // Remote command type (valid only if TMsgType is EMsgRemote) - TCmdType iCmdType; - TPtrC iCmdDes; - - // Run parameters (valid only if run command) - // Test module name - TPtrC iModule; - // Test module initialization file - TPtrC iIniFile; - // Test module initialization file - TPtrC iTestCaseFile; - // Test case number - TInt iTestCaseNumber; - // Test case title - TPtrC iTitle; - - // Event parameters - // Event name - TPtrC iEventName; - - // Result from request or command - TInt iResult; - - // Response status - union - { - TRunStatus iRunStatus; - TEventStatus iEventStatus; - }; - // Result category - TResultCategory iResultCategory; - // Event response parameters - // Event type - TEventIf::TEventType iEventType; - - protected: // Data - // - - private: // Data - // Message buffer - HBufC* iMessageBuf; - // Message ptr - TPtr iMessage; - - // Message parser - CStifItemParser* iItem; - - // SrcId - TInt32 iSrcId; - // DstId - TInt32 iDstId; - - public: // Friend classes - // - - protected: // Friend classes - // - - private: // Friend classes - // - - }; - -#endif // STIF_TFW_IF_PROT_H - -// End of File