Output Formats - Manak-org/Manak GitHub Wiki

##Introduction

Manak(since 1.1.0) also supports HTML output generation. HTML output is more intuitive as well as infomative. HTML is easy to use for users and is widely acceptible. Manak can still generate TXT output but the default output is now HTML. To force Manak to generate TXT output pass '-f TXT' as command line arguments while running the executable.

##HTML

Manak, by default generates output in HTML. A sample page can be seen Here. As you can see, the output shows information about the module and instance loaded for comparison. Check out @ref comp for more information on comparison framework. The first shows all the main tables, which gives the overall comparative look at the run. The libraries are compared against each other horizontally while the time dependent comparison is done with values in brackets. The colors indicate the test status. Green indicates that the tests in that benchmark case passed while red indicates failure. No color indicates that there were no tests inside that benchmark case. To see the failure msg the headers of the tables provides in page links to detailed report.

In the 'Detailed Report' section, all the information about all the cases is displayed. Even in this section color indicates test status and failure msg can be seen directly below the case or the correspoding sub-case. Look out for easy to use in page links, they provide the ease.

##Generating More Than One Output Manak supports generating generating of more than one outputs. This can be done in manual init function. Check out [Setting Environment](Setting Environment) for more information on manual init function. For example

bool bench_init();

#define MANAK_INIT
#define MANAK_AUTO_MAIN
#define MANAK_SIMPLE_MODULE bench
#define MANAK_MANUAL_INIT_FUNCTION bench_init

using namespace manak;
using namespace std;

bool bench_init()
{
  //! Will add another TXT output to file <filename>
  OutputManager::GlobalOutputManager().AddHandler(new TXTOutputHandler(<filename>));
  
  //! Will add another HTML output to file <filename>
  OutputManager::GlobalOutputManager().AddHandler(new HTMLOutputHandler(<filename>));
}

The user can create their own output handlers by extending class manak::OutputHandler. Use manak::TXTOutputHandler and manak::HTMLOutputHandler as examples.

⚠️ **GitHub.com Fallback** ⚠️