diff -r 000000000000 -r 3da2a79470a7 testtoolsconn/stat/desktop/source/lib/inc/statscriptdecoder.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/testtoolsconn/stat/desktop/source/lib/inc/statscriptdecoder.h Mon Mar 08 15:04:18 2010 +0800 @@ -0,0 +1,68 @@ +/* +* Copyright (c) 2005-2009 Nokia Corporation and/or its subsidiary(-ies). +* All rights reserved. +* This component and the accompanying materials are made available +* under the terms of "Eclipse Public License v1.0" +* which accompanies this distribution, and is available +* at the URL "http://www.eclipse.org/legal/epl-v10.html". +* +* Initial Contributors: +* Nokia Corporation - initial contribution. +* +* Contributors: +* +* Description: +* +*/ + + + + +#ifndef STATSCRIPTDECODER_H +#define STATSCRIPTDECODER_H + +#include "stat.h" +#include "CSTATDataFormatConverter.h" +#include "CSTATImageVerify.h" + +class CSTATScriptCommand +{ +public: + CSTATScriptCommand(); + ~CSTATScriptCommand(); + char *Command() { return pCommand; } + unsigned long Length() { return ulLength; } + bool SetData(const char *pData, const unsigned long theLength); + void Reset(); + + char cCommandID; + unsigned long ulLength; + +private: + char *pCommand; +}; + +class CSTATScriptDecoder +{ +public: + CSTATScriptDecoder(CSTATLogFile *theLog); + ~CSTATScriptDecoder(); + int Initialise(const CString& file, bool bIsFile); + int GetNextCommand(CSTATScriptCommand **ppCommand); + void Release(); + +private: + int ReadDataIntoMemory(const CString& commands); + int ReadFileIntoMemory(CFile& scriptdata); + int ValidateScript(); + int ExtractComment(); + bool IncrementCounter(void); + + CSTATLogFile *pLog; + char *lpBuffer; // buffer that holds read script file + long lFileLength; // length of file read + int iCounter; // step counter through file + CSTATScriptCommand LastCommand; +}; + +#endif