X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/a182030b5a8c0db05a1de18ca230b61e76363ebc..de6beb69be41b07b28072a304d6f2bc36b04b665:/src/instr/interface.c diff --git a/src/instr/interface.c b/src/instr/interface.c index 9397e1f463..33a9e10dca 100644 --- a/src/instr/interface.c +++ b/src/instr/interface.c @@ -30,23 +30,31 @@ int trace_mask; * * \param name of the file that will contain the traces * \param mask to take into account during trace - * \return 1 if everything is ok, 0 otherwise + * \return 0 if everything is ok */ int TRACE_start_with_mask(const char *filename, int mask) { if (IS_TRACING) { /* what? trace is already active... ignore.. */ + THROW0 (tracing_error, TRACE_ERROR_START, + "TRACE_start called, but tracing is already active"); return 0; } + /* checking if the mask is good (only TRACE_PLATFORM for now) */ + if (mask != TRACE_PLATFORM){ + THROW0 (tracing_error, TRACE_ERROR_MASK, + "Only TRACE_PLATFORM mask is accepted for now"); + } + FILE *file = fopen(filename, "w"); if (!file) { - THROW1 (tracing_error, TRACE_ERROR_FILE_OPEN, + THROW1 (tracing_error, TRACE_ERROR_START, "Tracefile %s could not be opened for writing.", filename); } else { TRACE_paje_start (file); } TRACE_paje_create_header(); - /* default trace is to trace only the platform */ + /* setting the mask */ trace_mask = mask; //check if options are correct @@ -92,15 +100,14 @@ int TRACE_start_with_mask(const char *filename, int mask) { __TRACE_surf_init(); __TRACE_msg_process_init (); - return 1; + return 0; } int TRACE_end() { - if (!IS_TRACING) return 0; - __TRACE_surf_finalize(); + if (!IS_TRACING) return 1; FILE *file = TRACE_paje_end(); fclose (file); - return 1; + return 0; } void TRACE_category (const char *category) @@ -154,7 +161,7 @@ void TRACE_create_category (const char *category, } //check if category is created if (xbt_dict_get_or_null (created_categories, category)){ - THROW1 (tracing_error, TRACE_ERROR_CATEGORY_ALREADY_DEFINED, "Category %s is already created", type); + THROW1 (tracing_error, TRACE_ERROR_CATEGORY_ALREADY_DEFINED, "Category %s is already created", category); } pajeCreateContainer(MSG_get_clock(), category, type, parent_category, category); @@ -171,7 +178,11 @@ void TRACE_create_category (const char *category, void TRACE_set_mask (int mask) { - trace_mask = mask; + if (mask != TRACE_PLATFORM){ + return; + }else{ + trace_mask = mask; + } } #endif /* HAVE_TRACING */