Current Symbian^3 public API header files (from PDK 3.0.h)
This is the epoc32/include tree with the "platform" subtrees removed, and
all but a selected few mbg and rsg files removed.
/*
* 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 the License "Symbian Foundation License v1.0" to Symbian Foundation members and "Symbian Foundation End User License Agreement v1.0" to non-members
* which accompanies this distribution, and is available
* at the URL "http://www.symbianfoundation.org/legal/licencesv10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description:
*
*/
/**
@file TestExecuteLog.h
*/
#if !(defined __TESTEXECUTE_PIPS_LOG_H__)
#define __TESTEXECUTE_PIPS_LOG_H__
#include <e32base.h>
#include <test/tefexportconst.h>
_LIT8(KTEFOverflowMessagePIPS8, "\t..Message Truncated");
_LIT16(KTEFOverflowMessagePIPS16, "\t..Message Truncated");
//const TInt overflowMessageLen1 = 21; // Size of the truncation message. To be changed if the text above is changed
/**
@internalComponent
@test
* Derived class implementation of TDes16Overflow class
* Implements the base class pure virtual Overflow() to handle descriptor overflow
* during AppendFormatList() operations on TDes16 objects
*/
class TTEFDes16OverflowPIPS : public TDes16Overflow
{
inline virtual void Overflow(TDes16& aDes)
{
TInt actualMessageLen = aDes.Length();
TInt maxLengthOfDes = aDes.MaxLength();
TInt midPosForEdit = maxLengthOfDes - KTEFOverflowMessagePIPS16().Length();
if (actualMessageLen <= midPosForEdit)
{
aDes.Append(KTEFOverflowMessagePIPS16());
}
else
{
aDes.SetLength(midPosForEdit + KTEFOverflowMessagePIPS16().Length());
aDes.Replace(midPosForEdit, KTEFOverflowMessagePIPS16().Length(), KTEFOverflowMessagePIPS16());
}
}
};
/**
@internalComponent
@test
* Derived class implementation of TDes8Overflow class
* Implements the base class pure virtual Overflow() to handle descriptor overflow
* during AppendFormatList() operations on TDes8 objects
*/
class TTEFDes8OverflowPIPS : public TDes8Overflow
{
inline virtual void Overflow(TDes8& aDes)
{
TInt actualMessageLen = aDes.Length();
TInt maxLengthOfDes = aDes.MaxLength();
TInt midPosForEdit = maxLengthOfDes - KTEFOverflowMessagePIPS8().Length();
if (actualMessageLen <= midPosForEdit)
{
aDes.Append(KTEFOverflowMessagePIPS8());
}
else
{
aDes.SetLength(midPosForEdit + KTEFOverflowMessagePIPS8().Length());
aDes.Replace(midPosForEdit, KTEFOverflowMessagePIPS8().Length(), KTEFOverflowMessagePIPS8());
}
}
};
class RTestExecutePIPSLogServ : public RSessionBase
/**
@internalComponent
@test
*/
{
public:
enum TLogMode{ELogModeAppend,ELogModeOverWrite};
// Logging level
enum TLogCommand{/*ECreateLog,*/EWriteLog};
IMPORT_C TInt Connect();
IMPORT_C TInt CreateLog(const TDesC& aLogFilePath);
IMPORT_C void LogExtra(const TText8* aFile, TInt aLine, TInt aSeverity,TRefByValue<const TDesC> aFmt,...);
IMPORT_C void Write(const TDesC& aLogBuffer);
IMPORT_C void WriteFormat(TRefByValue<const TDesC> aFmt,...);
IMPORT_C void Write(const TDesC8& aLogBuffer);
IMPORT_C void WriteFormat(TRefByValue<const TDesC8> aFmt,...);
IMPORT_C void LogExtra(const TText8* aFile, TInt aLine, TInt aSeverity,TRefByValue<const TDesC> aFmt, VA_LIST aList);
IMPORT_C void WriteFormat(TRefByValue<const TDesC> aFmt, VA_LIST aList);
IMPORT_C void WriteFormat(TRefByValue<const TDesC8> aFmt, VA_LIST aList);
IMPORT_C void SetLogLevel(TLogSeverity aSeverity);
private:
void WriteL(const TDesC& aLogBuffer);
void WriteL(TDes8& aLogBuffer);
void GetCPPModuleName(TDes& aModuleName, const TText8* aCPPFileName);
void AddTime(TDes8& aTime);
TLogSeverity iLogLevel;
TBufC<KMaxTestExecuteLogFilePath> iLogFilename;
};
#endif