// without problems. But at this point we face the problem with virtual members which
// are not necessarily const.
AliHLTComponent* nonconst=const_cast<AliHLTComponent*>(this);
- AliHLTLogging::SetLogString("%s (%s, %p): ",
+ AliHLTLogging::SetLogString(this, ", %p", "%s (%s_pfmt_): ",
fChainId[0]!=0?fChainId.c_str():nonconst->GetComponentID(),
- nonconst->GetComponentID(), this);
+ nonconst->GetComponentID());
iResult=SendMessage(severity, originClass, originFunc, file, line, AliHLTLogging::BuildLogString(NULL, args, true /*append*/));
va_end(args);
return fgAliHLTLoggingTarget.GetArray();
}
-const char* AliHLTLogging::SetLogString(const char *format, ...)
+const char* AliHLTLogging::SetLogString(const void* p, const char* pfmt, const char *format, ...)
{
// see header file for class documentation
+ TString formatstr=format;
+ TString pstr;
+#ifdef __DEBUG
+ pstr.Form(pfmt, p);
+#endif
+ formatstr.ReplaceAll("_pfmt_", pstr);
va_list args;
va_start(args, format);
- const char* message=BuildLogString(format, args);
+ const char* message=BuildLogString(formatstr.Data(), args);
va_end(args);
return message;
* @param format format string of printf style
* @return const char string with the formatted message
*/
- static const char* SetLogString(const char *format, ... );
+ static const char* SetLogString(const void* p, const char* pfmt, const char *format, ... );
/**
* Get parameter given by the external caller.
va_start(args, line);
if (!fName.IsNull())
- AliHLTLogging::SetLogString("%s (%p): ", fName.Data(), this);
+ AliHLTLogging::SetLogString(this, " (%p)", "%s_pfmt_: ", fName.Data());
iResult=SendMessage(severity, originClass, originFunc, file, line, AliHLTLogging::BuildLogString(NULL, args, !fName.IsNull() /*append if non empty*/));
va_end(args);
va_list args;
va_start(args, line);
- AliHLTLogging::SetLogString("%s (%p): ", GetName(), this);
+ AliHLTLogging::SetLogString(this, " (%p)", "%s_pfmt_: ", GetName());
iResult=SendMessage(severity, originClass, originFunc, file, line, AliHLTLogging::BuildLogString(NULL, args, true /*append*/));
va_end(args);