-extern void hs_hpc_tick(int globIx,struct StgTSO_ *current_tso);
-extern void hs_hpc_raise_event(struct StgTSO_ *current_tso);
-extern void hs_hpc_thread_finished_event(struct StgTSO_ *current_tso);
-extern void hs_hpc_read(char *filename);
-extern void hs_hpc_write(char *filename);
+// Simple linked list of modules
+typedef struct _HpcModuleInfo {
+ char *modName; // name of module
+ int tickCount; // number of ticks
+ int tickOffset; // offset into a single large .tix Array
+ int hashNo; // Hash number for this module's mix info
+ StgWord64 *tixArr; // tix Array; local for this module
+ struct _HpcModuleInfo *next;
+} HpcModuleInfo;
+
+extern HpcModuleInfo *hs_hpc_rootModule(void);
+