diff -r 7259cf1302ad -r 169364e7e4b4 hti/PC_Tools/HTIGateway/HtiCommon/HtiCommon.h --- a/hti/PC_Tools/HTIGateway/HtiCommon/HtiCommon.h Tue Jul 06 16:05:13 2010 +0300 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,154 +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: -*/ -#ifndef __HTI_COMMON__ -#define __HTI_COMMON__ - -#ifdef _EXPORT_HTI_COMMON_ - #define EXPORT_FROM_DLL __declspec(dllexport) -#else - #define EXPORT_FROM_DLL __declspec(dllimport) -#endif - -#include - -// CONSTANTS -const int HTIMSG_TIMEOUT_5_SECONDS = 5000; // milliseconds -const int HTIMSG_TIMEOUT_10_SECONDS = 10000; -const int HTIMSG_TIMEOUT_30_SECONDS = 30000; -const int HTIMSG_TIMEOUT_60_SECONDS = 30000; - -// GENERAL UTIL FUNCTIONS -/** -* Checks if a string parameter is valid. Not null or empty. -*/ -EXPORT_FROM_DLL int check_mandatory_string_parameter(struct soap* soap, - char* parameter, - char* parameterName); -/** -* Checks if a wide character string parameter is valid. Not null or empty. -*/ -EXPORT_FROM_DLL int check_mandatory_wcstring_parameter(struct soap* soap, - wchar_t* parameter, - char* parameterName); -/** -* A little addition to basic soap functions. Same as soap_receiver_fault -* but can add formatted data to faultstring. -*/ -EXPORT_FROM_DLL int soap_receiver_fault_format(struct soap *soap, - const char *faultstring, - const char *faultdetail, ...); -/** -* Prints bytes to the screen -*/ -EXPORT_FROM_DLL void dump( BYTE *data, int dataLen ); - - -// CLASSES -// Class for HTI message manipulation -class HtiMsgHelper -{ -public: - /** - * Constructors. - */ - EXPORT_FROM_DLL HtiMsgHelper( struct soap *soap ); - EXPORT_FROM_DLL HtiMsgHelper( struct soap *soap, DWORD serviceId ); - EXPORT_FROM_DLL HtiMsgHelper( struct soap *soap, DWORD serviceId, BYTE command ); - - /** - * Destructor. - */ - EXPORT_FROM_DLL ~HtiMsgHelper(); - - /** - * General util methods. - */ - EXPORT_FROM_DLL BYTE* GetMsgBody() { return m_msgBody; }; - EXPORT_FROM_DLL int GetMsgLen() { return m_msgBodyLen; }; - - /** - * Methods for getting data from HTI message. - */ - EXPORT_FROM_DLL BYTE GetByte( int offset ) { return *(BYTE*)(m_msgBody+offset); }; - EXPORT_FROM_DLL WORD GetWord( int offset ) { return *(WORD*)(m_msgBody+offset); }; - EXPORT_FROM_DLL DWORD GetDWord( int offset ) { return *(DWORD*)(m_msgBody+offset); }; - EXPORT_FROM_DLL int GetInt( int offset ) { return *(int*)(m_msgBody+offset); }; - EXPORT_FROM_DLL char* GetSoapString( int offset, int len ); - EXPORT_FROM_DLL wchar_t* GetSoapWCString( int offset, int len ); - - /** - * Received HTI message checking methods - */ - EXPORT_FROM_DLL int CheckMsgExactLen( int len ); - EXPORT_FROM_DLL int CheckMsgMinLen( int len ); - EXPORT_FROM_DLL int CheckCommandCode( BYTE code ); - - /** - * Methods for adding data to HTI message. - */ - EXPORT_FROM_DLL void AddByte( BYTE data ); - EXPORT_FROM_DLL void AddWord( WORD data ); - EXPORT_FROM_DLL void AddDWord( DWORD data ); - EXPORT_FROM_DLL void AddInt( int data ); - EXPORT_FROM_DLL void AddUInt64( unsigned __int64 data ); - EXPORT_FROM_DLL void AddString( char* string ); - EXPORT_FROM_DLL void AddWCString( wchar_t* string ); - EXPORT_FROM_DLL void AddData( void* data, int dataLen ); - - // does not add if null or length is zero - EXPORT_FROM_DLL void AddStringWithLengthByte( char* string ); - EXPORT_FROM_DLL void AddWCStringWithLengthByte( wchar_t* string ); - - // adds at least the lenght byte - EXPORT_FROM_DLL void AddStringWithLengthByteZero( char* string ); - EXPORT_FROM_DLL void AddStringWithLengthWordZero( char* string ); - EXPORT_FROM_DLL void AddWCStringWithLengthByteZero( wchar_t* string ); - - /** - * Methods for sending and receiving. - * Can be replaced if needed. - */ - virtual EXPORT_FROM_DLL void SendMsg(); - virtual EXPORT_FROM_DLL int ReceiveMsg( int timeout ); - virtual EXPORT_FROM_DLL int SendReceiveMsg( int timeout ); - -protected: - /** - * Increases m_msgBody for adding new data - */ - void IncBodySize( int size ); - -protected: - /** - * soap env. - */ - struct soap *m_soap; - - /** - * Service id used in sending the message. - */ - DWORD m_serviceId; - - /** - * The actual message and its length in bytes. - * Destroyed when message is sent. Received message is not destroyed - * because we dont have ownership. - */ - BYTE* m_msgBody; - int m_msgBodyLen; -}; - -#endif //__HTI_COMMON__ \ No newline at end of file