-/* Copyright (c) 2010-2013. The SimGrid Team.
+/* Copyright (c) 2010-2014. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
- * under the terms of the license (GNU LGPL) which comes with this package. */
+ * under the terms of the license (GNU LGPL) which comes with this package. */
#include "instr/instr_private.h"
#include "xbt/virtu.h" /* sg_cmdline */
extern FILE * tracing_file;
extern s_instr_trace_writer_t active_writer;
-
void TRACE_paje_init(void)
{
active_writer.print_DefineContainerType=print_pajeDefineContainerType;
void print_pajeCreateContainer(paje_event_t event)
{
- XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
+ XBT_DEBUG("%s: event_type=%d, timestamp=%.*f", __FUNCTION__, (int)event->event_type, TRACE_precision(), event->timestamp);
if (event->timestamp == 0){
fprintf(tracing_file, "%d 0 %s %s %s \"%s\"\n",
(int)event->event_type,
((createContainer_t)event->data)->container->father->id,
((createContainer_t)event->data)->container->name);
}else{
- fprintf(tracing_file, "%d %f %s %s %s \"%s\"\n",
+ fprintf(tracing_file, "%d %.*f %s %s %s \"%s\"\n",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((createContainer_t)event->data)->container->id,
((createContainer_t)event->data)->container->type->id,
void print_pajeDestroyContainer(paje_event_t event)
{
- XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
+ XBT_DEBUG("%s: event_type=%d, timestamp=%.*f", __FUNCTION__, (int)event->event_type, TRACE_precision(), event->timestamp);
if (event->timestamp == 0){
fprintf(tracing_file, "%d 0 %s %s\n",
(int)event->event_type,
((destroyContainer_t)event->data)->container->type->id,
((destroyContainer_t)event->data)->container->id);
}else{
- fprintf(tracing_file, "%d %f %s %s\n",
+ fprintf(tracing_file, "%d %.*f %s %s\n",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((destroyContainer_t)event->data)->container->type->id,
((destroyContainer_t)event->data)->container->id);
void print_pajeSetVariable(paje_event_t event)
{
- XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
+ XBT_DEBUG("%s: event_type=%d, timestamp=%.*f", __FUNCTION__, (int)event->event_type, TRACE_precision(), event->timestamp);
if (event->timestamp == 0){
fprintf(tracing_file, "%d 0 %s %s %f\n",
(int)event->event_type,
((setVariable_t)event->data)->container->id,
((setVariable_t)event->data)->value);
}else{
- fprintf(tracing_file, "%d %f %s %s %f\n",
+ fprintf(tracing_file, "%d %.*f %s %s %f\n",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((setVariable_t)event->data)->type->id,
((setVariable_t)event->data)->container->id,
void print_pajeAddVariable(paje_event_t event)
{
- XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
+ XBT_DEBUG("%s: event_type=%d, timestamp=%.*f", __FUNCTION__, (int)event->event_type, TRACE_precision(), event->timestamp);
if (event->timestamp == 0){
fprintf(tracing_file, "%d 0 %s %s %f\n",
(int)event->event_type,
((addVariable_t)event->data)->container->id,
((addVariable_t)event->data)->value);
}else{
- fprintf(tracing_file, "%d %f %s %s %f\n",
+ fprintf(tracing_file, "%d %.*f %s %s %f\n",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((addVariable_t)event->data)->type->id,
((addVariable_t)event->data)->container->id,
void print_pajeSubVariable(paje_event_t event)
{
- XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
+ XBT_DEBUG("%s: event_type=%d, timestamp=%.*f", __FUNCTION__, (int)event->event_type, TRACE_precision(), event->timestamp);
if (event->timestamp == 0){
fprintf(tracing_file, "%d 0 %s %s %f\n",
(int)event->event_type,
((subVariable_t)event->data)->container->id,
((subVariable_t)event->data)->value);
}else{
- fprintf(tracing_file, "%d %f %s %s %f\n",
+ fprintf(tracing_file, "%d %.*f %s %s %f\n",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((subVariable_t)event->data)->type->id,
((subVariable_t)event->data)->container->id,
void print_pajeSetState(paje_event_t event)
{
- XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
+ XBT_DEBUG("%s: event_type=%d, timestamp=%.*f", __FUNCTION__, (int)event->event_type, TRACE_precision(), event->timestamp);
if (event->timestamp == 0){
fprintf(tracing_file, "%d 0 %s %s %s\n",
(int)event->event_type,
((setState_t)event->data)->container->id,
((setState_t)event->data)->value->id);
}else{
- fprintf(tracing_file, "%d %f %s %s %s\n",
+ fprintf(tracing_file, "%d %.*f %s %s %s\n",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((setState_t)event->data)->type->id,
((setState_t)event->data)->container->id,
void print_pajePushState(paje_event_t event)
{
- XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
+ XBT_DEBUG("%s: event_type=%d, timestamp=%.*f", __FUNCTION__, (int)event->event_type, TRACE_precision(), event->timestamp);
if (!TRACE_display_sizes()){
if (event->timestamp == 0){
fprintf(tracing_file, "%d 0 %s %s %s\n",
((pushState_t)event->data)->container->id,
((pushState_t)event->data)->value->id);
}else{
- fprintf(tracing_file, "%d %f %s %s %s\n",
+ fprintf(tracing_file, "%d %.*f %s %s %s\n",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((pushState_t)event->data)->type->id,
((pushState_t)event->data)->container->id,
fprintf(tracing_file, "\n");
}else{
- fprintf(tracing_file, "%d %f %s %s %s ",
+ fprintf(tracing_file, "%d %.*f %s %s %s ",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((pushState_t)event->data)->type->id,
((pushState_t)event->data)->container->id,
void print_pajePopState(paje_event_t event)
{
- XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
+ XBT_DEBUG("%s: event_type=%d, timestamp=%.*f", __FUNCTION__, (int)event->event_type, TRACE_precision(), event->timestamp);
if (event->timestamp == 0){
fprintf(tracing_file, "%d 0 %s %s\n",
(int)event->event_type,
((popState_t)event->data)->type->id,
((popState_t)event->data)->container->id);
}else{
- fprintf(tracing_file, "%d %f %s %s\n",
+ fprintf(tracing_file, "%d %.*f %s %s\n",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((popState_t)event->data)->type->id,
((popState_t)event->data)->container->id);
void print_pajeResetState(paje_event_t event)
{
- XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
+ XBT_DEBUG("%s: event_type=%d, timestamp=%.*f", __FUNCTION__, (int)event->event_type, TRACE_precision(), event->timestamp);
if (event->timestamp == 0){
fprintf(tracing_file, "%d 0 %s %s\n",
(int)event->event_type,
((resetState_t)event->data)->type->id,
((resetState_t)event->data)->container->id);
}else{
- fprintf(tracing_file, "%d %f %s %s\n",
+ fprintf(tracing_file, "%d %.*f %s %s\n",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((resetState_t)event->data)->type->id,
((resetState_t)event->data)->container->id);
((startLink_t)event->data)->sourceContainer->id,
((startLink_t)event->data)->key);
}else {
- fprintf(tracing_file, "%d %f %s %s %s %s %s\n",
+ fprintf(tracing_file, "%d %.*f %s %s %s %s %s\n",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((startLink_t)event->data)->type->id,
((startLink_t)event->data)->container->id,
((startLink_t)event->data)->key);
}
}else{
- XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
+ XBT_DEBUG("%s: event_type=%d, timestamp=%.*f", __FUNCTION__, (int)event->event_type, TRACE_precision(), event->timestamp);
if (event->timestamp == 0){
fprintf(tracing_file, "%d 0 %s %s %s %s %s %d\n",
(int)event->event_type,
((startLink_t)event->data)->key,
((startLink_t)event->data)->size);
}else {
- fprintf(tracing_file, "%d %f %s %s %s %s %s %d\n",
+ fprintf(tracing_file, "%d %.*f %s %s %s %s %s %d\n",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((startLink_t)event->data)->type->id,
((startLink_t)event->data)->container->id,
void print_pajeEndLink(paje_event_t event)
{
- XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
+ XBT_DEBUG("%s: event_type=%d, timestamp=%.*f", __FUNCTION__, (int)event->event_type, TRACE_precision(), event->timestamp);
if (event->timestamp == 0){
fprintf(tracing_file, "%d 0 %s %s %s %s %s\n",
(int)event->event_type,
((endLink_t)event->data)->destContainer->id,
((endLink_t)event->data)->key);
}else {
- fprintf(tracing_file, "%d %f %s %s %s %s %s\n",
+ fprintf(tracing_file, "%d %.*f %s %s %s %s %s\n",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((endLink_t)event->data)->type->id,
((endLink_t)event->data)->container->id,
void print_pajeNewEvent (paje_event_t event)
{
- XBT_DEBUG("%s: event_type=%d, timestamp=%f", __FUNCTION__, (int)event->event_type, event->timestamp);
+ XBT_DEBUG("%s: event_type=%d, timestamp=%.*f", __FUNCTION__, (int)event->event_type, TRACE_precision(), event->timestamp);
if (event->timestamp == 0){
fprintf(tracing_file, "%d 0 %s %s %s\n",
(int)event->event_type,
((newEvent_t)event->data)->container->id,
((newEvent_t)event->data)->value->id);
}else{
- fprintf(tracing_file, "%d %f %s %s %s\n",
+ fprintf(tracing_file, "%d %.*f %s %s %s\n",
(int)event->event_type,
+ TRACE_precision(),
event->timestamp,
((newEvent_t)event->data)->type->id,
((newEvent_t)event->data)->container->id,