Vuo  2.1.0
Classes | Macros | Functions | Variables
VuoLog.cc File Reference

Description

VuoLog implementation.

Definition in file VuoLog.cc.

Go to the source code of this file.

Classes

struct  VuoCrashReport_infoType
 Data to be inserted into macOS crash reports. More...
 

Macros

#define VuoCrashReport_alignment   __attribute__((aligned(8)))
 Align on 8-byte boundaries. More...
 

Functions

void VuoTerminateHandler ()
 Log the timestamp at which std::terminate was called, so we can tell whether the logged exceptions are related to it. More...
 
double VuoLogGetTime (void)
 Returns the number of seconds (including fractional seconds) since an arbitrary start time. More...
 
void VuoLog_recordTime (const char *name, double time)
 Adds time to the specified profile name. More...
 
double VuoLogGetElapsedTime (void)
 Returns the number of seconds (including fractional seconds) since this module was loaded. More...
 
void VuoLog_statusF (const char *file, const unsigned int linenumber, const char *function, const char *format,...)
 Helper for VuoLog_status. More...
 
int VuoLog_getOSVersionMinor (void)
 Returns the minor component of the OS version. More...
 
void VuoLog (const char *file, const unsigned int linenumber, const char *function, const char *format,...)
 Outputs a message to the system log and to stderr. More...
 
bool VuoIsDebugEnabled (void)
 Returns true if debug mode is enabled. More...
 
void VuoLog_backtrace (void)
 Prints the stack backtrace to stderr. More...
 
void VuoLog_replaceString (char *wholeString, const char *substringToRemove, const char *replacement)
 Removes all occurrences of a substring. More...
 
vector< string > VuoLog_getBacktrace (void)
 Returns the stack backtrace. More...
 

Variables

static std::terminate_handler nextTerminateHandler = nullptr
 The existing std::terminate handler before we installed ours. More...
 
double VuoLogStartTime
 The time when this module was loaded. More...
 
const int VuoLogHistoryItems = 20
 How many VLog messages to include in crash reports. More...
 
char * VuoLogHistory [VuoLogHistoryItems]
 VLog messages to include in crash reports. More...
 
dispatch_queue_t VuoLogHistoryQueue
 Serializes access to VuoLogHistory. More...
 

Class Documentation

◆ VuoCrashReport_infoType

struct VuoCrashReport_infoType
Class Members
unsigned int version VuoCrashReport_alignment
char *message VuoCrashReport_alignment Shows up in the crash report's "Application Specific Information" section.
char *signature VuoCrashReport_alignment
char *backtrace VuoCrashReport_alignment
char *message2 VuoCrashReport_alignment Shows up in the crash report's "Application Specific Information" section, above message.
void *reserved VuoCrashReport_alignment
void *reserved2 VuoCrashReport_alignment

Macro Definition Documentation

◆ VuoCrashReport_alignment

#define VuoCrashReport_alignment   __attribute__((aligned(8)))

Align on 8-byte boundaries.

Definition at line 189 of file VuoLog.cc.

Function Documentation

◆ VuoLog_getBacktrace()

vector<string> VuoLog_getBacktrace ( void  )

Returns the stack backtrace.

Definition at line 514 of file VuoLog.cc.

◆ VuoLog_getOSVersionMinor()

int VuoLog_getOSVersionMinor ( void  )

Returns the minor component of the OS version.

Definition at line 239 of file VuoLog.cc.

◆ VuoLog_replaceString()

void VuoLog_replaceString ( char *  wholeString,
const char *  substringToRemove,
const char *  replacement 
)

Removes all occurrences of a substring.

replacement must be shorter than the expanded substringToRemove.

Definition at line 496 of file VuoLog.cc.

◆ VuoTerminateHandler()

void VuoTerminateHandler ( )

Log the timestamp at which std::terminate was called, so we can tell whether the logged exceptions are related to it.

Definition at line 48 of file VuoLog.cc.

Variable Documentation

◆ nextTerminateHandler

std::terminate_handler nextTerminateHandler = nullptr
static

The existing std::terminate handler before we installed ours.

Definition at line 42 of file VuoLog.cc.

◆ VuoLogHistory

char* VuoLogHistory[VuoLogHistoryItems]

VLog messages to include in crash reports.

Definition at line 102 of file VuoLog.cc.

◆ VuoLogHistoryItems

const int VuoLogHistoryItems = 20

How many VLog messages to include in crash reports.

Definition at line 101 of file VuoLog.cc.

◆ VuoLogHistoryQueue

dispatch_queue_t VuoLogHistoryQueue

Serializes access to VuoLogHistory.

Definition at line 103 of file VuoLog.cc.

◆ VuoLogStartTime

double VuoLogStartTime

The time when this module was loaded.

Definition at line 99 of file VuoLog.cc.