sl@0: // Copyright (c) 2008-2009 Nokia Corporation and/or its subsidiary(-ies). sl@0: // All rights reserved. sl@0: // This component and the accompanying materials are made available sl@0: // under the terms of the License "Eclipse Public License v1.0" sl@0: // which accompanies this distribution, and is available sl@0: // at the URL "http://www.eclipse.org/legal/epl-v10.html". sl@0: // sl@0: // Initial Contributors: sl@0: // Nokia Corporation - initial contribution. sl@0: // sl@0: // Contributors: sl@0: // sl@0: // Description: sl@0: // e32test\nkernsa\diag.h sl@0: // sl@0: // sl@0: sl@0: #ifdef __cplusplus sl@0: extern "C" { sl@0: #endif sl@0: sl@0: typedef int (*TAvailFn)(void); sl@0: typedef int (*TPollFn)(void); sl@0: typedef void (*TOutFn)(char); sl@0: sl@0: typedef struct sl@0: { sl@0: TAvailFn iAvail; sl@0: TPollFn iPoll; sl@0: TOutFn iOut; sl@0: } DiagIO; sl@0: sl@0: extern const DiagIO* TheIoFunctions; sl@0: sl@0: extern int InputAvailable(void); sl@0: extern char GetC(void); sl@0: extern void PutC(char); sl@0: sl@0: extern void PutS(const char*); sl@0: extern void PrtHex2(unsigned long); sl@0: extern void PrtHex4(unsigned long); sl@0: extern void PrtHex8(unsigned long); sl@0: extern void NewLine(void); sl@0: extern void PutSpc(void); sl@0: extern int GetAndEchoLine(char*, int, const char*); sl@0: sl@0: extern int SkipSpc(const char*); sl@0: extern int CharToHex(char); sl@0: extern int ReadHex(const char*, unsigned long*); sl@0: extern int ReadRangeHex(const char*, unsigned long*, unsigned long*); sl@0: sl@0: extern void DumpMemory1(const void*, const void*); sl@0: extern void DumpMemoryRange1(const void*, unsigned long, const void*); sl@0: extern void DumpStruct(const char*, const void*); sl@0: sl@0: extern void RunCrashDebugger(); sl@0: sl@0: #ifdef __cplusplus sl@0: } sl@0: #endif sl@0: