#include "rts/EventLogFormat.h"
#include "Capability.h"
-#pragma GCC visibility push(hidden)
+BEGIN_RTS_PRIVATE
-#ifdef EVENTLOG
+#ifdef TRACING
/*
* Descriptions of EventTags for events.
void endEventLogging(void);
void freeEventLogging(void);
-void postEvent_(Capability *cap, EventTypeNum tag, StgThreadID id, StgWord64 other);
-
/*
- * Post an event to the capability's event buffer.
+ * Post a scheduler event to the capability's event buffer (an event
+ * that has an associated thread).
*/
-INLINE_HEADER void postEvent(Capability *cap, EventTypeNum tag, StgThreadID id, StgWord64 other)
-{
- if (RtsFlags.EventLogFlags.doEventLogging) {
- postEvent_(cap, tag, id, other);
- }
-}
+void postSchedEvent(Capability *cap, EventTypeNum tag,
+ StgThreadID id, StgWord64 other);
+
+/*
+ * Post a nullary event.
+ */
+void postEvent(Capability *cap, EventTypeNum tag);
+
+void postMsg(char *msg, va_list ap);
+
+void postUserMsg(Capability *cap, char *msg);
+
+void postCapMsg(Capability *cap, char *msg, va_list ap);
+
+#else /* !TRACING */
+
+INLINE_HEADER void postSchedEvent (Capability *cap STG_UNUSED,
+ EventTypeNum tag STG_UNUSED,
+ StgThreadID id STG_UNUSED,
+ StgWord64 other STG_UNUSED)
+{ /* nothing */ }
-void printAndClearEventLog(Capability *cap);
+INLINE_HEADER void postEvent (Capability *cap STG_UNUSED,
+ EventTypeNum tag STG_UNUSED)
+{ /* nothing */ }
-#else /* !EVENTLOG */
+INLINE_HEADER void postMsg (char *msg STG_UNUSED,
+ va_list ap STG_UNUSED)
+{ /* nothing */ }
-INLINE_HEADER void postEvent(Capability *cap STG_UNUSED,
- EventTypeNum tag STG_UNUSED,
- StgThreadID id STG_UNUSED,
- StgWord64 other STG_UNUSED)
-{
- /* nothing */
-}
+INLINE_HEADER void postCapMsg (Capability *cap,
+ char *msg STG_UNUSED,
+ va_list ap STG_UNUSED)
+{ /* nothing */ }
#endif
-#pragma GCC visibility pop
+END_RTS_PRIVATE
-#endif /* EVENTLOG_H */
+#endif /* TRACING_H */