Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Current »

Tracing can only be done inside the body of a cpp file. It requires C++, so it won’t work on pure C files.

You need to include BAS/BAStrace.h and invoke the BAS_TRACE_INIT macro:

#include <BAS/BAStrace.h>
BAS_TRACE_INIT;

Here’s an example of tracing one function:

void APPmyFunction(int Number, const char* pString, int StringLength, bool Flag){
   BAS_FUNCTION(APPmyFunction);
   BAS_VAR(Number);   // print one number
   BAS_VAR2(Number, Flag);  // print two variables
   BAS_TRC("This function is just for demonstration: " << Flag); 
   BAS_HEX("String Data", pString, StringLength);
   // do some stuff
}

This is what we are using:

  • BAS_FUNCTION to show entry and exit from the function - the argument is the just the name supplied, see flow of calls and values of variables

  • BAS_VAR, BAS_VAR2, BAS_VAR3 etc display variables in Name=Value pairs

  • BAS_TRC is like a general print statement to print whatever you want.

  • BAS_HEX will output a hex dump of the data given, pass in a label, pointer to the data and the length. See hexdumps.

  • No labels