#include <stdint.h>
#include "os_thread.hpp"
+#include "os_process.hpp"
#include "trace_writer.hpp"
namespace trace {
- extern FunctionSig memcpy_sig;
- extern FunctionSig malloc_sig;
- extern FunctionSig free_sig;
- extern FunctionSig realloc_sig;
+ extern const FunctionSig memcpy_sig;
+ extern const FunctionSig malloc_sig;
+ extern const FunctionSig free_sig;
+ extern const FunctionSig realloc_sig;
/**
* A specialized Writer class, mean to trace the current process.
os::recursive_mutex mutex;
int acquired;
+ /**
+ * ID of the processed that opened the trace file.
+ */
+ os::ProcessId pid;
+
+ void checkProcessId();
+
public:
/**
* Should never called directly -- use localWriter singleton below
/**
* It will acquire the mutex.
*/
- unsigned beginEnter(FunctionSig *sig);
+ unsigned beginEnter(const FunctionSig *sig, bool fake = false);
/**
* It will release the mutex.