memana/analyzetoolclient/commandlineengine/internal/src/CATBase.cpp
author Matti Laitinen <matti.t.laitinen@nokia.com>
Thu, 11 Feb 2010 15:51:35 +0200
changeset 0 f0f2b8682603
permissions -rw-r--r--
Add initial version of AnalyzeTool client under EPL
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     1
/*
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     2
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). 
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     3
* All rights reserved.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     4
* This component and the accompanying materials are made available
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     5
* under the terms of "Eclipse Public License v1.0"
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     6
* which accompanies this distribution, and is available
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     7
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     8
*
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
     9
* Initial Contributors:
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    10
* Nokia Corporation - initial contribution.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    11
*
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    12
* Contributors:
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    13
*
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    14
* Description:  Definitions for the class CATBase.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    15
*
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    16
*/
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    17
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    18
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    19
#include "../inc/CATBase.h"
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    20
#include "../inc/CATParseXML.h"
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    21
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    22
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    23
// CATBase::CATBase
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    24
// Constructor.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    25
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    26
CATBase::CATBase(void)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    27
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    28
	LOG_FUNC_ENTRY("CATBase::CATBase");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    29
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    30
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    31
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    32
// CATBase::~CATBase
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    33
// Destructor.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    34
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    35
CATBase::~CATBase(void)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    36
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    37
	LOG_FUNC_ENTRY("CATBase::~CATBase");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    38
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    39
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    40
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    41
// CATBase::ChangeToLower
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    42
// Converts any uppercase letter to lowercase.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    43
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    44
void CATBase::ChangeToLower( string& sInput )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    45
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    46
	LOG_LOW_FUNC_ENTRY("CATBase::ChangeToLower");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    47
	int iLength = (int)sInput.size();
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    48
	for( int i = 0 ; i < iLength ; i++ )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    49
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    50
		sInput[i] = (char)tolower( sInput[i] );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    51
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    52
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    53
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    54
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    55
// CATBase::ChangeToUpper
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    56
// Converts any uppercase letter to lowercase.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    57
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    58
void CATBase::ChangeToUpper( string& sInput )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    59
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    60
	LOG_LOW_FUNC_ENTRY("CATBase::ChangeToUpper");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    61
	int iLength = (int)sInput.size();
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    62
	for( int i = 0 ; i < iLength ; i++ )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    63
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    64
		sInput[i] = (char)toupper( sInput[i] );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    65
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    66
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    67
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    68
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    69
// CATBase::TrimString
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    70
// Remove spaces and tabulatures from beginning and
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    71
// end of given string.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    72
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    73
void CATBase::TrimString( string& sInput )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    74
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    75
	LOG_LOW_FUNC_ENTRY("CATBase::TrimString");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    76
	if( sInput.empty() )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    77
		return;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    78
	//Remove spaces and tabulatures from beginning of string
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    79
	while( !sInput.empty() && ( sInput[0] == SPACE_CHAR_VALUE || sInput[0] == TAB_CHAR_VALUE ) )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    80
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    81
		sInput.erase( 0, 1 );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    82
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    83
	//Remove spaces and tabulatures from end of string
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    84
	while( !sInput.empty() && ( sInput[sInput.size()-1] == SPACE_CHAR_VALUE || sInput[sInput.size()-1] == TAB_CHAR_VALUE ) )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    85
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    86
		sInput.erase( sInput.size()-1, 1 );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    87
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    88
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    89
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    90
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    91
// CATBase::SearchFileWithExtension
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    92
// Searches files with given extension from path.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    93
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    94
bool CATBase::SearchFileWithExtension( const char* pPathAndExt, bool bPrintErrors, string& sErrorLog )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    95
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    96
	LOG_FUNC_ENTRY("CATBase::SearchFileWithExtension");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    97
	WIN32_FIND_DATA FindFileData;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    98
	HANDLE hFind;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
    99
	string sTemp( pPathAndExt );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   100
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   101
	//Find file
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   102
	hFind = FindFirstFile( sTemp.c_str(), &FindFileData );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   103
	if (hFind == INVALID_HANDLE_VALUE)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   104
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   105
		string sErrorString( "No " );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   106
		//Get extension
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   107
		string sExt( pPathAndExt );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   108
		sExt.erase( 0, sExt.find_last_of( "." ) );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   109
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   110
		sErrorString.append( sExt );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   111
		sErrorString.append( " files in directory: " );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   112
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   113
		string sWithoutExt( pPathAndExt );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   114
		sWithoutExt.erase( sWithoutExt.find_last_of( "." )-1, string::npos );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   115
		sErrorString.append( sWithoutExt );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   116
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   117
		if( bPrintErrors )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   118
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   119
			//string sTemp( pPathAndExt );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   120
			//printf( "Can not find: %s.\n", pPathAndExt );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   121
			printf( sErrorString.c_str() );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   122
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   123
		else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   124
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   125
			//Add line change if sErrorString not empty
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   126
			if( !sErrorLog.empty() )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   127
				sErrorString.insert( 0, "\n" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   128
			sErrorLog.append( sErrorString );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   129
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   130
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   131
	} 
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   132
	else 
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   133
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   134
		FindClose(hFind);
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   135
		return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   136
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   137
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   138
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   139
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   140
// CATBase::GetPathOrFileName
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   141
// Returns path to file or file name.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   142
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   143
string CATBase::GetPathOrFileName( bool bFileName, string sInput )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   144
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   145
	LOG_LOW_FUNC_ENTRY("CATBase::GetPathOrFileName");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   146
	string sRet;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   147
	size_t iPos = sInput.size();
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   148
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   149
	sInput = ChangeSlashToBackSlash( sInput );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   150
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   151
	//Find character '\' starting from end of string
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   152
	while( iPos > 0 && sInput[iPos] != '\\' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   153
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   154
		iPos--;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   155
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   156
	if( iPos > 0 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   157
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   158
		//Return file name
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   159
		if( bFileName )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   160
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   161
			sInput.erase( 0, iPos+1 );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   162
			sRet = sInput;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   163
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   164
		else //Return file path
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   165
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   166
			sInput.erase( iPos+1, string::npos );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   167
			sRet = sInput;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   168
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   169
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   170
	else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   171
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   172
		if( !bFileName )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   173
			return sRet;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   174
		sRet = sInput;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   175
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   176
	return sRet;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   177
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   178
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   179
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   180
// CATBase::GetFileNameUsingExt
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   181
// Searches files with given extension from path.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   182
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   183
string CATBase::GetFileNameUsingExt( const char* pPathAndExt )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   184
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   185
	LOG_FUNC_ENTRY("CATBase::GetFileNameUsingExt");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   186
	WIN32_FIND_DATA FindFileData;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   187
	HANDLE hFind;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   188
	string sRet;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   189
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   190
	//Find file
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   191
	hFind = FindFirstFile( pPathAndExt, &FindFileData );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   192
	if (hFind == INVALID_HANDLE_VALUE)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   193
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   194
		//if( bPrintErrors )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   195
		printf( "Can not find: %s.\n", pPathAndExt );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   196
		return sRet;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   197
	} 
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   198
	else 
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   199
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   200
		sRet.append( FindFileData.cFileName );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   201
		FindClose(hFind);
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   202
		return sRet;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   203
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   204
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   205
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   206
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   207
// CATBase::GetStringUntilNextSpace
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   208
// Function returns string from begin of given string until next space,
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   209
// characters until next space are removed from sInput string.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   210
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   211
string CATBase::GetStringUntilNextSpace( string& sInput, bool bEraseFromInput )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   212
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   213
	LOG_LOW_FUNC_ENTRY("CATBase::GetStringUntilNextSpace");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   214
	string sTemp( sInput );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   215
	size_t iSize = sTemp.find_first_of(' ');
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   216
	if( iSize != string::npos )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   217
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   218
		sTemp.resize( iSize );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   219
		if( bEraseFromInput )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   220
			sInput.erase( 0, (iSize+1) );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   221
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   222
	else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   223
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   224
		if ( bEraseFromInput )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   225
			sInput.clear();
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   226
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   227
	return sTemp;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   228
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   229
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   230
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   231
// CATBase::ChangeSlashToBackSlash
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   232
// Function changes all BackSlash characters to Slash character from
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   233
// given string.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   234
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   235
string CATBase::ChangeSlashToBackSlash( string sInput )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   236
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   237
	LOG_LOW_FUNC_ENTRY("CATBase::ChangeSlashToBackSlash");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   238
	for( unsigned int i = 0 ; i < sInput.length() ; i++ )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   239
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   240
		if( sInput[i] == '/' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   241
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   242
			sInput[i] = '\\';
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   243
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   244
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   245
	return sInput;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   246
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   247
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   248
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   249
// CATBase::FileExists
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   250
// Check if given file exists.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   251
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   252
bool CATBase::FileExists( const char * pFilename )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   253
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   254
	LOG_FUNC_ENTRY("CATBase::FileExists");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   255
	DWORD dwRet = GetFileAttributes( pFilename );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   256
	if( dwRet == INVALID_FILE_ATTRIBUTES )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   257
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   258
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   259
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   260
	else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   261
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   262
		//Is file directory?
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   263
		if( dwRet & FILE_ATTRIBUTE_DIRECTORY )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   264
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   265
			return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   266
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   267
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   268
	return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   269
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   270
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   271
bool CATBase::IsFileReadOnly( const char* pFilename )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   272
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   273
	LOG_FUNC_ENTRY("CATBase::IsFileReadOnly");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   274
	DWORD dwRet = GetFileAttributes( pFilename );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   275
	if( dwRet == INVALID_FILE_ATTRIBUTES )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   276
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   277
	if( dwRet & FILE_ATTRIBUTE_READONLY )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   278
		return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   279
	return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   280
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   281
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   282
bool CATBase::SetFileReadOnly( const char* pFileName )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   283
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   284
	LOG_FUNC_ENTRY("CATBase::SetFileReadOnly");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   285
	DWORD dw = GetFileAttributes( pFileName );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   286
	if( dw == INVALID_FILE_ATTRIBUTES )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   287
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   288
	if( dw & FILE_ATTRIBUTE_READONLY )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   289
		return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   290
	dw = dw | FILE_ATTRIBUTE_READONLY ;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   291
	if ( SetFileAttributes( pFileName, dw ) )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   292
		return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   293
	return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   294
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   295
bool CATBase::SetFileWritable( const char* pFileName )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   296
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   297
	LOG_FUNC_ENTRY("CATBase::SetFileWritable");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   298
	DWORD dw = GetFileAttributes( pFileName );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   299
	if( dw == INVALID_FILE_ATTRIBUTES )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   300
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   301
	if( ! dw & FILE_ATTRIBUTE_READONLY )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   302
		return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   303
	dw = dw ^ FILE_ATTRIBUTE_READONLY ;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   304
	if ( SetFileAttributes( pFileName, dw ) )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   305
		return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   306
	return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   307
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   308
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   309
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   310
// CATBase::FileCopyToPath
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   311
// Copies file to given path
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   312
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   313
bool CATBase::FileCopyToPath(const string& sFile, const string& sToPath)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   314
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   315
	LOG_FUNC_ENTRY("CATBase::FileCopyToPath");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   316
	// Display message
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   317
	cout << AT_MSG << "Copy " << sFile << AT_FILE_TO << sToPath << endl;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   318
	if ( sFile.empty() || sToPath.empty() )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   319
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   320
		LOG_FUNC_EXIT("CATBase::FileCopyToPath Error, empty parameter");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   321
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   322
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   323
	// Copy using windows api (seems not to work when relavite path ..
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   324
	/*
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   325
	// Full path where to copy
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   326
	string sDestination = sToPath;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   327
	// Append '\' to string if not exists
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   328
	if ( sDestination.length() > 1 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   329
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   330
		const char cLastChar = sDestination[ sDestination.length() -1 ];
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   331
		if ( cLastChar != DASH )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   332
			sDestination.append("\\");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   333
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   334
	int iRet = 0;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   335
	iRet = CopyFile( sFile.c_str(), sDestination.c_str(), false );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   336
	if ( iRet != 0 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   337
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   338
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   339
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   340
	*/
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   341
	string sCommand;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   342
	sCommand.append( "copy /Y \"");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   343
	sCommand.append( sFile );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   344
	sCommand.append( "\" \"" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   345
	sCommand.append( sToPath );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   346
	sCommand.append( "\" > nul 2>&1" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   347
	LOG_STRING( sCommand );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   348
	int iRet = 0;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   349
	iRet = (int)system( sCommand.c_str() );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   350
	if ( iRet != 0 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   351
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   352
	return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   353
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   354
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   355
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   356
// CATBase::FileMoveToPath
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   357
// Copies file to given path
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   358
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   359
bool CATBase::FileMoveToPath(const string& sFile, const string& sToPath)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   360
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   361
	LOG_FUNC_ENTRY("CATBase::FileMoveToPath");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   362
	// Display message
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   363
	cout << AT_MSG << "Move " << sFile << AT_FILE_TO << sToPath << endl;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   364
	if ( sFile.empty() || sToPath.empty() )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   365
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   366
		LOG_FUNC_EXIT("CATBase::FileMoveToPath Error, empty parameter");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   367
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   368
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   369
	// Move (again windows api function does not support relative path .. in it
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   370
	/*
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   371
	// Get filename from sFile
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   372
	string sFileName = GetPathOrFileName( true, sFile );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   373
	// Full path where to copy
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   374
	string sDestination = sToPath;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   375
	// Append '\' to string if not exists
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   376
	if ( sDestination.length() > 1 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   377
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   378
		const char cLastChar = sDestination[ sDestination.length() -1 ];
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   379
		if ( cLastChar != DASH )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   380
			sDestination.append("\\");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   381
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   382
	int iRet = 0;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   383
	iRet = MoveFile( sFile.c_str(), sDestination.c_str());
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   384
	if ( iRet != 0 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   385
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   386
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   387
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   388
	*/
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   389
	string sCommand;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   390
	sCommand.append( "move /Y \"");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   391
	sCommand.append( sFile );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   392
	sCommand.append( "\" \"" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   393
	sCommand.append( sToPath );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   394
	sCommand.append( "\" > nul 2>&1" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   395
	LOG_STRING( sCommand );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   396
	int iRet = 0;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   397
	iRet = (int)system( sCommand.c_str() );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   398
	if ( iRet != 0 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   399
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   400
	return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   401
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   402
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   403
// CATBase::CreateTempPath
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   404
// Creates temporary directory path for given mmp file
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   405
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   406
string CATBase::CreateTempPath(const string& sMmpFileWithPath)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   407
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   408
	LOG_FUNC_ENTRY("CATBase::CreateTempPath");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   409
	string sTempPath = GetPathOrFileName( false, sMmpFileWithPath );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   410
	sTempPath.append( AT_TEMP_DIR );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   411
	sTempPath.append( "\\" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   412
	return sTempPath;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   413
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   414
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   415
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   416
// CATBase::RemovePathAndExt
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   417
// Removes extension from file name and returns file name without extension.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   418
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   419
string CATBase::RemovePathAndExt( string sFileName, bool bReverseFindExt)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   420
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   421
	LOG_LOW_FUNC_ENTRY("CATBase::RemovePathAndExt");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   422
	string sRet;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   423
	sFileName = GetPathOrFileName( true, sFileName );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   424
	if ( bReverseFindExt )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   425
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   426
		// Remove extension from reverse
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   427
		size_t iPos = sFileName.find_last_of('.');
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   428
		if( iPos != string::npos )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   429
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   430
			sFileName.resize( sFileName.find_last_of('.') );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   431
			sRet = sFileName;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   432
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   433
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   434
	else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   435
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   436
		// Remove extension finding first .
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   437
		size_t iPos = sFileName.find_first_of('.');
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   438
		if( iPos != string::npos )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   439
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   440
			sFileName.resize( sFileName.find_first_of('.') );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   441
			sRet = sFileName;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   442
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   443
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   444
	return sRet;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   445
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   446
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   447
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   448
// CATBase::IsTargetTypeSupported
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   449
// Checks from constant array is this target unsupported
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   450
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   451
bool CATBase::IsTargetTypeSupported(string sTargetType)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   452
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   453
	LOG_FUNC_ENTRY("CATBase::IsTargetTypeSupported");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   454
	// compare to list
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   455
	int iArraySize = sizeof( UNSUPPORTED_TARGET_TYPES ) / sizeof( string );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   456
	for ( int i=0 ; i < iArraySize ; i++ )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   457
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   458
		string sUnsupported = UNSUPPORTED_TARGET_TYPES[i];
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   459
		// lowercase both
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   460
		ChangeToLower(sTargetType);
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   461
		ChangeToLower(sUnsupported);
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   462
		// compare
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   463
		if ( sUnsupported.compare( sTargetType ) == 0 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   464
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   465
			return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   466
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   467
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   468
	return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   469
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   470
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   471
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   472
// CATBase::IsTargetTypeKernelSide
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   473
// Checks from constant array is this target type kernel side
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   474
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   475
bool CATBase::IsTargetTypeKernelSide(string sTargetType)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   476
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   477
	LOG_FUNC_ENTRY("CATBase::IsTargetTypeKernelSide");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   478
	// compare to list
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   479
	int iArraySize = sizeof( KERNEL_SIDE_TARGET_TYPES ) / sizeof( string );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   480
	for ( int i=0 ; i < iArraySize ; i++ )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   481
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   482
		string sUnsupported = KERNEL_SIDE_TARGET_TYPES[i];
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   483
		// lowercase both
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   484
		ChangeToLower(sTargetType);
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   485
		ChangeToLower(sUnsupported);
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   486
		// compare
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   487
		if ( sUnsupported.compare( sTargetType ) == 0 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   488
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   489
			return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   490
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   491
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   492
	return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   493
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   494
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   495
bool CATBase::CheckVariant( const string& sEpocRoot, const string& sVariant )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   496
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   497
	LOG_FUNC_ENTRY("CATBase::CheckVariant");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   498
	string sFileToCheck;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   499
	// Add epoc root
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   500
	if( sEpocRoot.size() > 1 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   501
		sFileToCheck.append( sEpocRoot );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   502
	// Add path
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   503
	sFileToCheck.append( VARIANT_DIR ) ;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   504
	// Add variant
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   505
	sFileToCheck.append( sVariant );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   506
	// Add extension
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   507
	sFileToCheck.append( VARIANT_FILE_EXTENSION );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   508
	// check does FileExists
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   509
	return FileExists( sFileToCheck.c_str() );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   510
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   511
bool CATBase::IsDefaultVariant( const string& sEpocRoot )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   512
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   513
	LOG_FUNC_ENTRY("CATBase::IsDefaultVariant");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   514
	string sFileToCheck;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   515
	// Add epoc root
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   516
	if( sEpocRoot.size() > 1 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   517
		sFileToCheck.append( sEpocRoot );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   518
	// Add path
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   519
	sFileToCheck.append( VARIANT_DIR ) ;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   520
	// Add variant
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   521
	sFileToCheck.append( "DEFAULT" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   522
	// Add extension
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   523
	sFileToCheck.append( VARIANT_FILE_EXTENSION );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   524
	// check does FileExists
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   525
	return FileExists( sFileToCheck.c_str() );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   526
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   527
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   528
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   529
// CATBase::FileDelete
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   530
// FileDelete
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   531
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   532
bool CATBase::FileDelete(const string& sFile, bool bPrint )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   533
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   534
	LOG_FUNC_ENTRY("CATBase::FileDelete");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   535
	// does file even exists
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   536
	if ( !FileExists( sFile.c_str() ) )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   537
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   538
	// delete file
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   539
	int iRet = _unlink( sFile.c_str() );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   540
	// if print on display error
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   541
	if ( iRet  && bPrint )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   542
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   543
		cout << AT_MSG << "Error, deleting file " << sFile
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   544
			<< endl;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   545
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   546
	// if print on display message
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   547
	else if ( !iRet && bPrint )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   548
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   549
		cout << AT_MSG << "Delete " << sFile << endl;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   550
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   551
	// return
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   552
	if ( iRet )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   553
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   554
	return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   555
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   556
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   557
// CATBase::DirDelete
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   558
// Delelete directory
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   559
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   560
bool CATBase::DirDelete(const string& sDir, bool bPrint )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   561
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   562
	LOG_FUNC_ENTRY("CATBase::DirDelete");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   563
	if ( sDir.find( AT_TEMP_DIR) == string::npos )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   564
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   565
	
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   566
	if ( sDir.length() < 2 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   567
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   568
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   569
	string sDir2;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   570
	if ( sDir.at(1) != ':' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   571
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   572
		char cDir[MAX_LINE_LENGTH];
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   573
		GetCurrentDirectory( MAX_LINE_LENGTH , cDir );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   574
		sDir2.append( cDir );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   575
		sDir2.append( "\\" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   576
		sDir2.append( sDir );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   577
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   578
	else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   579
		sDir2.append( sDir );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   580
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   581
	// does directory exists
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   582
	DWORD dwRet = GetFileAttributes( sDir2.c_str() );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   583
	if ( dwRet == INVALID_FILE_ATTRIBUTES )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   584
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   585
	else if ( ! (dwRet & FILE_ATTRIBUTE_DIRECTORY) )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   586
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   587
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   588
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   589
	// Delete dir
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   590
	string sCmd( "rmdir /S /Q " );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   591
	sCmd.append( sDir2 );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   592
	sCmd.append( " > nul 2>&1" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   593
	int iRet = (int)system( sCmd.c_str() );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   594
	if ( iRet && bPrint)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   595
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   596
		cout << AT_MSG << "Error, deleting directory " << sDir2 << endl;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   597
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   598
	else if ( !iRet && bPrint )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   599
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   600
		cout << AT_MSG << "Delete directory " << sDir2 << endl;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   601
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   602
	if ( iRet )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   603
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   604
	return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   605
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   606
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   607
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   608
// CATBase::DirCreate
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   609
// Create directory
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   610
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   611
bool CATBase::DirCreate(const string& sDir, bool bPrint )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   612
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   613
	LOG_FUNC_ENTRY("CATBase::DirCreate");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   614
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   615
	if ( sDir.length() < 2 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   616
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   617
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   618
	string sDir2;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   619
	if ( sDir.at(1) != ':' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   620
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   621
		char cDir[MAX_LINE_LENGTH];
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   622
		GetCurrentDirectory( MAX_LINE_LENGTH , cDir );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   623
		sDir2.append( cDir );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   624
		sDir2.append( "\\" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   625
		sDir2.append( sDir );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   626
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   627
	else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   628
		sDir2.append( sDir );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   629
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   630
	// does directory exists
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   631
	DWORD dwRet = GetFileAttributes( sDir2.c_str() );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   632
	if ( dwRet != INVALID_FILE_ATTRIBUTES )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   633
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   634
		if( dwRet & FILE_ATTRIBUTE_DIRECTORY )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   635
			return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   636
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   637
	// Create dir
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   638
	string sCmd( "mkdir " );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   639
	sCmd.append( sDir2 );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   640
	sCmd.append( " > nul 2>&1" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   641
	int iRet = (int)system( sCmd.c_str() );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   642
	if ( iRet && bPrint)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   643
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   644
		cout << AT_MSG << "Error, creating directory " << sDir2 << endl;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   645
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   646
	else if ( !iRet && bPrint )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   647
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   648
		cout << AT_MSG << "Directory " << sDir2 << " created" << endl;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   649
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   650
	if ( iRet )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   651
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   652
	return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   653
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   654
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   655
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   656
// CATBase::ConvertTCHARtoString
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   657
// Convert TCHAR* to std::string
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   658
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   659
string CATBase::ConvertTCHARtoString(TCHAR* charArray)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   660
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   661
	LOG_LOW_FUNC_ENTRY("CATBase::ConvertTCHARtoString");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   662
	// Loop char array
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   663
	stringstream ss;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   664
	int iIndex = 0;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   665
	char c = (char) charArray[iIndex];
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   666
	// until null termination
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   667
	while ( c != '\0' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   668
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   669
		ss << c;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   670
		iIndex++;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   671
		c = (char) charArray[iIndex];
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   672
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   673
	// return string
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   674
	return ss.str();
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   675
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   676
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   677
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   678
// CATBase::ConvertTCHARtoString
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   679
// Get list of files in directory
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   680
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   681
vector<string> CATBase::DirList(const string& sDirectory
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   682
								, bool bListDirs, bool bAddPathToFile)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   683
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   684
	LOG_FUNC_ENTRY("CATBase::DirList");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   685
	// Create string to modify it
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   686
	string sDir = sDirectory;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   687
	// Add if missing '\' & '*' to the sDirectory
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   688
	if ( sDir.at( sDir.size()-1 ) != '\\' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   689
		sDir.append( "\\" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   690
	// Path to add to file string if specified
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   691
	string sPath = sDir;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   692
	// Add * to for windows api to find all files
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   693
	sDir.append( "*" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   694
	// convert directory string to LPCSTR
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   695
	LPCSTR dir( sDir.c_str() );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   696
	// vector to store file list
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   697
	vector<string> vFileList;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   698
	// Using win32 api to find list of files in directory
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   699
	// file data "container"
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   700
	WIN32_FIND_DATA fileData;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   701
	// handle to directory
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   702
	HANDLE hFinder = FindFirstFile( dir, &fileData );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   703
	if ( hFinder == INVALID_HANDLE_VALUE )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   704
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   705
		// no files found
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   706
		return vFileList;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   707
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   708
	// loop files add to vector and return
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   709
	while( FindNextFile(hFinder, &fileData ) )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   710
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   711
		DWORD dw = fileData.dwFileAttributes;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   712
		// skip if its directory and bListDirs not specified
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   713
		if ( dw & FILE_ATTRIBUTE_DIRECTORY && ! bListDirs)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   714
			continue;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   715
		// add files to vector
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   716
		string sFile = ConvertTCHARtoString( fileData.cFileName );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   717
		// Add given path to file string if specified
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   718
		if ( bAddPathToFile )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   719
			sFile.insert( 0, sPath );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   720
		vFileList.push_back( sFile );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   721
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   722
	// Close file find handler
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   723
	FindClose( hFinder );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   724
	return vFileList;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   725
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   726
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   727
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   728
// CATBase::ParseRelativePathToString
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   729
// ParseRelative
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   730
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   731
void CATBase::ParseRelativePathString(string& sPathString)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   732
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   733
	LOG_LOW_FUNC_ENTRY("CATBase::ParseRelativePathString");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   734
	string sParsed;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   735
	// find ..
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   736
	size_t iDots = sPathString.find( ".." );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   737
	while ( iDots != string::npos )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   738
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   739
		RemoveRelativePath( sPathString, iDots );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   740
		iDots = sPathString.find( ".." );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   741
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   742
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   743
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   744
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   745
// CATBase::RemoveRelativePath
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   746
// Remove relative path from string (using given index)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   747
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   748
void CATBase::RemoveRelativePath(string& sString, size_t iDots)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   749
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   750
	LOG_LOW_FUNC_ENTRY("CATBase::RemoveRelativePath");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   751
	// Chck if accidentally given wrong parameter
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   752
	if ( iDots == string::npos 
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   753
		|| iDots < 1 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   754
		return;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   755
	// Parsed string
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   756
	string sParsed;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   757
	// Find position of last backslash before dots
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   758
	size_t i = sString.rfind("\\", iDots-2 );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   759
	// Pickup start part (depending is the backslash at last parts first char)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   760
	if ( sString.at(iDots+2) != '\\' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   761
		sParsed = sString.substr( 0, i+1 ) ;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   762
	else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   763
		sParsed = sString.substr( 0, i );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   764
	// Pick up last part
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   765
	sParsed.append( sString.substr( iDots+2, sString.size() ) );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   766
	sString = sParsed;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   767
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   768
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   769
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   770
// Get extension from given string
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   771
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   772
string CATBase::GetExtension(const string& sString)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   773
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   774
	LOG_LOW_FUNC_ENTRY("CATBase::GetExtension");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   775
	// find last .
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   776
	size_t iDot = sString.find_last_of( "." );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   777
	// return string after . if found
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   778
	if ( iDot != string::npos )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   779
		return sString.substr(iDot+1, sString.length()-(iDot+1) );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   780
	// otherwise return given string
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   781
	return sString;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   782
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   783
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   784
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   785
// CATBase::DirectoryExists
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   786
// Check if given directory exists.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   787
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   788
bool CATBase::DirectoryExists( const char* pDirname )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   789
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   790
	LOG_FUNC_ENTRY("CATBase::DirectoryExists");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   791
	size_t iLenght = strlen( pDirname );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   792
	
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   793
	if ( iLenght < 2 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   794
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   795
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   796
	string sDir;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   797
	if ( pDirname[1] != ':' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   798
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   799
		char cDir[MAX_LINE_LENGTH];
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   800
		GetCurrentDirectory( MAX_LINE_LENGTH , cDir );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   801
		sDir.append( cDir );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   802
		sDir.append( "\\" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   803
		sDir.append( pDirname );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   804
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   805
	else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   806
		sDir.append( pDirname );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   807
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   808
	DWORD dwRet = GetFileAttributes( sDir.c_str() );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   809
	if( dwRet == INVALID_FILE_ATTRIBUTES )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   810
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   811
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   812
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   813
	else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   814
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   815
		//Is file directory?
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   816
		if( dwRet & FILE_ATTRIBUTE_DIRECTORY )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   817
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   818
			return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   819
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   820
		else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   821
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   822
			return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   823
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   824
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   825
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   826
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   827
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   828
// CATBase::ConvertUnixPathToWin
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   829
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   830
void CATBase::ConvertUnixPathToWin( string& sPath )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   831
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   832
	LOG_LOW_FUNC_ENTRY("CATBase::ConvertUnixPathToWin");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   833
	size_t iSpot = 0;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   834
	// convert '/' to '\'
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   835
	iSpot = sPath.find( "/" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   836
	while( iSpot != string::npos )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   837
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   838
		sPath.replace(iSpot,1, "\\");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   839
		iSpot = sPath.find( "/", iSpot+1 );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   840
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   841
	// convert '\\' to '\'
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   842
	iSpot = sPath.find( "\\\\" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   843
	while( iSpot != string::npos )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   844
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   845
		sPath.replace(iSpot,2,"\\");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   846
		iSpot = sPath.find( "\\\\" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   847
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   848
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   849
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   850
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   851
// CATBase::RemoveAllAfterDotIfTwoDots
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   852
// Removes all after first '.'
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   853
// if given string contains 2 '.' or more
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   854
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   855
void CATBase::RemoveAllAfterDotIfTwoDots(string& sModName)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   856
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   857
	LOG_LOW_FUNC_ENTRY("CATBase::RemoveAllAfterDotIfTwoDots");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   858
	// did we find variable?
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   859
	size_t found;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   860
	// Find first '.'
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   861
	found = sModName.find(".");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   862
	if ( found != string::npos )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   863
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   864
		// Try find second '.'
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   865
		found = sModName.find(".", found+1);
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   866
		if ( found != string::npos )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   867
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   868
			// Remove all after first '.'
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   869
			sModName = sModName.substr(0, sModName.find(".")+1 );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   870
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   871
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   872
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   873
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   874
// CATBase::CreateTemporaryCpp
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   875
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   876
bool CATBase::CreateTemporaryCpp( const string& sId,
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   877
								 const string& sPath
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   878
								 ,const string& sS60FileName
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   879
								 ,int iLogOption
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   880
								 ,int iIsDebug
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   881
								 ,int iAllocCallStackSize
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   882
								 ,int iFreeCallStackSize )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   883
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   884
	LOG_FUNC_ENTRY("CATBase::CreateTemporaryCpp");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   885
	// Add slash to path if missing
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   886
	string sTempCpp = sPath;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   887
	if( sTempCpp.at( sTempCpp.length() - 1 ) != '\\' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   888
		sTempCpp.append("\\");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   889
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   890
	// append temporary cpp name with id in middle
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   891
	sTempCpp.append( AT_TEMP_CPP_LOWER_START );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   892
	sTempCpp.append( sId );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   893
	sTempCpp.append( AT_TEMP_CPP_LOWER_END );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   894
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   895
	//Open and truncate temporary cpp
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   896
	ofstream out( sTempCpp.c_str() , ios::trunc );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   897
	if ( ! out.good() )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   898
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   899
		out.close();
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   900
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   901
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   902
	out << "#include <e32base.h>";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   903
	out << "\n\n// CONSTANTS\n";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   904
	out << "\n/* The filename for log file */";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   905
	out << "\n_LIT( KFileName, \"";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   906
	//Set data file name
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   907
	out << sS60FileName;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   908
	out << "\" );\n";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   909
	// Version number
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   910
	out << "\n/* The AnalyzeTool version number used. */";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   911
	out << "\n_LIT( KAtoolVersion, \"";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   912
	out << ATOOL_COMPATIBILITY_STRING;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   913
	out << "\" );\n";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   914
	
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   915
	out << "\n// -----------------------------------------------------------------------------";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   916
	out << "\n// LogFileName()";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   917
	out << "\n// Returns the log filename.";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   918
	out << "\n// -----------------------------------------------------------------------------";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   919
	out << "\n//";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   920
	out << "\nconst TFileName LogFileName()";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   921
	out << "\n    {";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   922
	out << "\n    return TFileName( KFileName() );";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   923
	out << "\n    }";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   924
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   925
	out << "\n// -----------------------------------------------------------------------------";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   926
	out << "\n// AllocCallStackSize()";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   927
	out << "\n// Returns the call stack size gathered in alloc.";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   928
	out << "\n// -----------------------------------------------------------------------------";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   929
	out << "\n//";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   930
	out << "\nTUint32 AllocCallStackSize()";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   931
	out << "\n    {";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   932
	out << "\n    return TUint32( ";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   933
	out << iAllocCallStackSize;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   934
	out << " );\n";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   935
	out << "\n    }";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   936
	
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   937
	out << "\n// -----------------------------------------------------------------------------";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   938
	out << "\n// FreeCallStackSize()";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   939
	out << "\n// Returns the call stack size gathered in free.";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   940
	out << "\n// -----------------------------------------------------------------------------";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   941
	out << "\n//";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   942
	out << "\nTUint32 FreeCallStackSize()";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   943
	out << "\n    {";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   944
	out << "\n    return TUint32( ";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   945
	out << iFreeCallStackSize;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   946
	out << " );\n";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   947
	out << "\n    }";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   948
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   949
	out << "\n// -----------------------------------------------------------------------------";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   950
	out << "\n// AtoolVersion()";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   951
	out << "\n// Returns the version number of AnalyzeTool used.";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   952
	out << "\n// -----------------------------------------------------------------------------";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   953
	out << "\n//";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   954
	out << "\nconst TFileName AtoolVersion()";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   955
	out << "\n    {";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   956
	out << "\n    return TFileName( KAtoolVersion() );";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   957
	out << "\n    }";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   958
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   959
	out << "\n// -----------------------------------------------------------------------------";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   960
	out << "\n// LogOption()";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   961
	out << "\n// Returns the log option.";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   962
	out << "\n// -----------------------------------------------------------------------------";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   963
	out << "\n//    ";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   964
	out << "\nTUint32 LogOption()";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   965
	out << "\n    {";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   966
	out << "\n    return TUint32( ";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   967
	//Set logging target
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   968
	out << iLogOption;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   969
	out << " );";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   970
	out << "\n    }";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   971
	
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   972
	//Write build mode function
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   973
	out << "\n// -----------------------------------------------------------------------------";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   974
	out << "\n// IsDebug()";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   975
	out << "\n// Return build mode";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   976
	out << "\n// -----------------------------------------------------------------------------";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   977
	out << "\n//";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   978
	out << "\nTUint32 IsDebug()";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   979
	out << "\n    {";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   980
	out << "\n    return TUint32( ";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   981
	//Set logging target
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   982
	out << iIsDebug;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   983
	out << " );";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   984
	out << "\n    }";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   985
	out << "\n\n// End of File\n";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   986
	out.close();
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   987
	cout << AT_MSG << "Created " << sTempCpp << endl;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   988
	return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   989
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   990
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   991
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   992
// CATBase::IsDataFile
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   993
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   994
bool CATBase::IsDataFile( string sFile )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   995
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   996
	LOG_FUNC_ENTRY("CATBase::IsDataFile");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   997
	// Check that sFile not empty
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   998
	if ( sFile.empty() || sFile.length() < 1 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
   999
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1000
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1001
	// Temporary line char array.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1002
	char cLineFromFile[MAX_LINE_LENGTH];
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1003
	//Open file
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1004
	ifstream in( sFile.c_str() );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1005
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1006
	//File open ok?
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1007
	if( !in.good() )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1008
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1009
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1010
	//Read all lines
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1011
	in.getline( cLineFromFile, MAX_LINE_LENGTH );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1012
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1013
	string sLineFromFile( cLineFromFile );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1014
	in.close();
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1015
	if( sLineFromFile.find( "DATA_FILE_VERSION" ) != string::npos )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1016
		return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1017
	else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1018
		return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1019
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1020
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1021
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1022
// CATBase::FilterString
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1023
// Filter string out of unwanted characters. The list of allowed
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1024
// characters is defined in CFILTERSTRING.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1025
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1026
string CATBase::FilterString( const string& sString )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1027
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1028
	LOG_LOW_FUNC_ENTRY("CATBase::FilterString");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1029
	string sFiltered;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1030
	for( size_t i = 0 ; i < sString.length() ; i++ )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1031
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1032
		const char p = sString.at( i );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1033
		if ( strchr( CFILTERSTRING, p ) !=  0 )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1034
			sFiltered.push_back( p );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1035
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1036
	return sFiltered;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1037
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1038
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1039
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1040
// CATBase::FilterExtraSpaces
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1041
// Replaces multiple continuous spaces with single. Won't leave
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1042
// spaces in start or end of string.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1043
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1044
void CATBase::FilterExtraSpaces( string& sString )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1045
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1046
	LOG_LOW_FUNC_ENTRY("CATBase::FilterExtraSpaces");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1047
	string sFiltered;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1048
	// Loop thru char array.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1049
	for( size_t i = 0 ; i < sString.length(); i++ )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1050
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1051
		// Is char space?
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1052
		if ( sString.at( i ) == ' ' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1053
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1054
			// Pick up space if filtered does not contain char as last.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1055
			if ( sFiltered.rbegin() == sFiltered.rend() )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1056
				sFiltered.push_back( sString.at( i ) );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1057
			else if ( * ( sFiltered.rbegin() ) != ' ' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1058
				sFiltered.push_back( sString.at( i ) );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1059
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1060
		else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1061
			sFiltered.push_back( sString.at( i ) );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1062
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1063
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1064
	// Remove first and/or last character if it is space.
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1065
	if ( sFiltered.begin() != sFiltered.end() )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1066
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1067
		if( * ( sFiltered.begin() ) == ' ' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1068
			sFiltered.erase( 0, 1 );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1069
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1070
	if ( sFiltered.rbegin() != sFiltered.rend() )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1071
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1072
		if( * ( sFiltered.rbegin() ) == ' ' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1073
			sFiltered.resize( sFiltered.length()-1 );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1074
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1075
	sString = sFiltered;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1076
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1077
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1078
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1079
bool CATBase::hexToDec( string& sHex, unsigned int& iDec )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1080
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1081
	LOG_LOW_FUNC_ENTRY("CATBase::hexToDec");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1082
	istringstream ss( sHex );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1083
	ss.setf( ios::hex, ios::basefield );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1084
	if( ( ss >> iDec ) )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1085
		return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1086
	return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1087
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1088
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1089
bool CATBase::hexToDec( string& sHex, int& iDec )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1090
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1091
	LOG_LOW_FUNC_ENTRY("CATBase::hexToDec");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1092
	istringstream ss( sHex );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1093
	ss.setf( ios::hex, ios::basefield );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1094
	if( ( ss >> iDec ) )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1095
		return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1096
	return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1097
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1098
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1099
bool CATBase::hexToDec( string& sHex, unsigned long& ulDec )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1100
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1101
	LOG_LOW_FUNC_ENTRY("CATBase::hexToDec");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1102
	istringstream ss( sHex );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1103
	ss.setf( ios::hex, ios::basefield );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1104
	if( ( ss >> ulDec ) )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1105
		return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1106
	return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1107
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1108
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1109
bool CATBase::hexToDec( string& sHex, unsigned long long& ullDec )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1110
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1111
	LOG_LOW_FUNC_ENTRY("CATBase::hexToDec");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1112
	istringstream ss( sHex );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1113
	ss.setf( ios::hex, ios::basefield );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1114
	if( ( ss >> ullDec ) )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1115
		return true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1116
	return false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1117
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1118
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1119
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1120
// CATBase::_httoi
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1121
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1122
struct CHexMap
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1123
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1124
	char chr;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1125
	int value;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1126
};
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1127
unsigned long CATBase::_httoi(const char *value)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1128
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1129
	LOG_LOW_FUNC_ENTRY("CATBase::_httoi");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1130
	unsigned long l;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1131
	string s( value );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1132
	if ( CATBase::hexToDec( s, l ) )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1133
		return l;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1134
	return 0;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1135
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1136
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1137
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1138
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1139
// CATBase::NumberToHexString(int)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1140
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1141
string CATBase::NumberToHexString( unsigned int i )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1142
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1143
	LOG_LOW_FUNC_ENTRY("CATBase::IntToHexString");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1144
	stringstream ss;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1145
	ss << "0x" << hex << i;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1146
	string retval; retval = ss.str().c_str();
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1147
	return retval;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1148
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1149
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1150
// CATBase::NumberToHexString(long)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1151
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1152
string CATBase::NumberToHexString( unsigned long i )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1153
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1154
	LOG_LOW_FUNC_ENTRY("CATBase::IntToHexString");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1155
	stringstream ss;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1156
	ss << "0x" << hex << i;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1157
	string retval; retval = ss.str().c_str();
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1158
	return retval;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1159
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1160
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1161
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1162
// CATBase::IsHexCharacter
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1163
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1164
bool CATBase::IsHexCharacter(const TCHAR *value)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1165
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1166
	LOG_LOW_FUNC_ENTRY("CATBase::IsHexCharacter");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1167
	const int HexMapL = 22;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1168
	CHexMap HexMap[HexMapL] =
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1169
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1170
	    {'0', 0}, {'1', 1},
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1171
		{'2', 2}, {'3', 3},
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1172
		{'4', 4}, {'5', 5},
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1173
		{'6', 6}, {'7', 7},
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1174
		{'8', 8}, {'9', 9},
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1175
		{'A', 10}, {'B', 11},
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1176
		{'C', 12}, {'D', 13},
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1177
		{'E', 14}, {'F', 15},
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1178
		{'a', 10}, {'b', 11},
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1179
		{'c', 12}, {'d', 13},
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1180
		{'e', 14}, {'f', 15}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1181
	};
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1182
	bool found = false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1183
	for (int i = 0; i < HexMapL; i++)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1184
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1185
		if(HexMap[i].chr == *value)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1186
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1187
			found = true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1188
			break;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1189
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1190
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1191
	return found;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1192
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1193
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1194
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1195
// CATBase::IsAscii(const char*,const unsigned int)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1196
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1197
bool CATBase::IsAscii( const char* pInput, const unsigned int iLength )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1198
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1199
	LOG_LOW_FUNC_ENTRY("CATBase::IsAscii");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1200
	bool bRet = true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1201
	const char* pPoint = pInput;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1202
	for( unsigned int i = 0 ; i < iLength ; i++)
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1203
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1204
		if(	!__isascii(*pPoint) )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1205
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1206
			bRet = false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1207
			break;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1208
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1209
		pPoint++;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1210
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1211
	return bRet;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1212
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1213
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1214
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1215
// CATBase::GetEpocRoot( string& sEpocRoot )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1216
// -----------------------------------------------------------------------------
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1217
bool CATBase::GetEpocRoot( string& sEpocRoot )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1218
{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1219
	LOG_FUNC_ENTRY( "CATBase::GetEpocRoot" );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1220
	bool bRet = true;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1221
	//Find EPOCROOT from environment variable
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1222
	char* pEpocRoot = getenv ("EPOCROOT");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1223
	if( pEpocRoot == NULL )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1224
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1225
		const char pDevicesPath[] = "C:\\Program Files\\Common Files\\Symbian\\devices.xml";
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1226
		CATParseXML parser;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1227
		//Find EPOCROOT from devices
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1228
		sEpocRoot = parser.GetEpocRootPathFromXML(pDevicesPath);
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1229
		if( sEpocRoot.empty() )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1230
		{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1231
			printf("EPOCROOT not set to environment variables.\n");
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1232
			bRet = false;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1233
		}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1234
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1235
	else
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1236
	{
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1237
		sEpocRoot.append( pEpocRoot );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1238
		LOG_STRING( "EpocRoot :" << sEpocRoot );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1239
	}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1240
	//Remove trailing slash
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1241
	if ( sEpocRoot.size() > 1 && sEpocRoot[ sEpocRoot.length()-1 ] == '\\' )
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1242
		sEpocRoot.resize( sEpocRoot.length()-1 );
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1243
	return bRet;
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1244
}
f0f2b8682603 Add initial version of AnalyzeTool client under EPL
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff changeset
  1245
//End of file