-/* Copyright (c) 2010-2018. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2010-2019. 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. */
#include "include/xbt/config.hpp"
+#include "simgrid/Exception.hpp"
#include "simgrid/s4u/Engine.hpp"
#include "src/instr/instr_private.hpp"
#include "surf/surf.hpp"
std::ofstream tracing_file;
-#define OPT_TRACING_BASIC "tracing/basic"
-#define OPT_TRACING_COMMENT_FILE "tracing/comment-file"
-#define OPT_TRACING_DISABLE_DESTROY "tracing/disable-destroy"
-#define OPT_TRACING_FORMAT_TI_ONEFILE "tracing/smpi/format/ti-one-file"
-#define OPT_TRACING_SMPI_INTERNALS "tracing/smpi/internals"
-#define OPT_TRACING_SMPI "tracing/smpi"
-#define OPT_TRACING_TOPOLOGY "tracing/platform/topology"
+constexpr char OPT_TRACING_BASIC[] = "tracing/basic";
+constexpr char OPT_TRACING_COMMENT_FILE[] = "tracing/comment-file";
+constexpr char OPT_TRACING_DISABLE_DESTROY[] = "tracing/disable-destroy";
+constexpr char OPT_TRACING_FORMAT_TI_ONEFILE[] = "tracing/smpi/format/ti-one-file";
+constexpr char OPT_TRACING_SMPI[] = "tracing/smpi";
+constexpr char OPT_TRACING_TOPOLOGY[] = "tracing/platform/topology";
static simgrid::config::Flag<bool> trace_enabled{
"tracing", "Enable the tracing system. You have to enable this option to use other tracing options.", false};
std::string filename = TRACE_get_filename();
tracing_file.open(filename.c_str(), std::ofstream::out);
if (tracing_file.fail()) {
- THROWF(system_error, 1, "Tracefile %s could not be opened for writing.", filename.c_str());
+ throw simgrid::TracingError(
+ XBT_THROW_POINT,
+ simgrid::xbt::string_printf("Tracefile %s could not be opened for writing.", filename.c_str()));
}
XBT_DEBUG("Filename %s is open for writing", filename.c_str());
std::string str = std::string("--cfg=") + option + " ";
int len = str.size();
- printf("%s%*.*s %s\n", str.c_str(), 30 - len, 30 - len, "", desc);
+ XBT_HELP("%s%*.*s %s", str.c_str(), 30 - len, 30 - len, "", desc);
if (longdesc != nullptr) {
- printf ("%s\n\n", longdesc);
+ XBT_HELP("%s\n", longdesc);
}
}
void TRACE_help()
{
- printf("Description of the tracing options accepted by this simulator:\n\n");
+ XBT_HELP("Description of the tracing options accepted by this simulator:\n");
print_line(OPT_TRACING_SMPI, "Trace the MPI Interface (SMPI)",
" This option only has effect if this simulator is SMPI-based. Traces the MPI\n"
" interface and generates a trace that can be analyzed using Gantt-like\n"