equal
deleted
inserted
replaced
|
1 // debugRouter-kext.h |
|
2 // |
|
3 // Copyright (c) 2007 - 2010 Accenture. All rights reserved. |
|
4 // This component and the accompanying materials are made available |
|
5 // under the terms of the "Eclipse Public License v1.0" |
|
6 // which accompanies this distribution, and is available |
|
7 // at the URL "http://www.eclipse.org/legal/epl-v10.html". |
|
8 // |
|
9 // Initial Contributors: |
|
10 // Accenture - Initial contribution |
|
11 // |
|
12 |
|
13 #include <u32std.h> |
|
14 |
|
15 namespace CloggerDebugRouter |
|
16 { |
|
17 const TInt KCloggerDebugPort = 67; |
|
18 |
|
19 NONSHARABLE_STRUCT(SCrashDumpArea) |
|
20 { |
|
21 DChunk* iChunk; |
|
22 TBuf8<32> iName; |
|
23 TUint32 iReserved[6]; // For use by variant-specific functions |
|
24 }; |
|
25 |
|
26 /* Implementations of these functions should expect to be called in a thread context with the kernel unlocked |
|
27 */ |
|
28 typedef void (*TRegisterFn)(TAny* /*aAddr*/, TUint /*aSize*/, SCrashDumpArea& /*aCrashDumpArea*/); |
|
29 typedef void (*TUnregisterFn)(SCrashDumpArea& /*aCrashDumpArea*/); |
|
30 |
|
31 IMPORT_C void DebugPortChanged(); |
|
32 |
|
33 /* If you're going to be calling this, the debug router has to be loaded as a kernel extension. |
|
34 * Call the function after the kext has loaded, and preferably before the user-side cloggerserver has started. |
|
35 * Kernel must be unlocked, no fast mutexes or system lock held, and in a thread context. |
|
36 * |
|
37 * The functions you pass in must be prepared to get called before this function has returned. |
|
38 */ |
|
39 IMPORT_C void SetCrashDumpFunctions(TRegisterFn aRegisterFn, TUnregisterFn aUnregisterFn); |
|
40 } |