OMNI_LOG_WRITE
Defined in omni/log/ILog.h
- 
OMNI_LOG_WRITE(channelOrFormat_, level_, ...)
- Logs a message. - The first argument can be either a channel or the format string. - The second argument must be omni::log::Level at which to log the message. - If the first argument is a channel, the third argument is the format string. Channels can be created with the OMNI_LOG_ADD_CHANNEL macro. - For example: - OMNI_LOG_ADD_CHANNEL(kImageLoadChannel, "omni.image.load", "Messages when loading an image."); ... OMNI_LOG_WRITE(kImageLoadChannel, omni::log::Level::eVerbose, "I loaded a cool image: %s", imageFilename); - If the first argument is the format string, the channel defined by the OMNI_LOG_DEFAULT_CHANNEL is used. Example usage: - OMNI_LOG_WRITE("This message is going to the default channel: %s", omni::log::Level::eInfo, "woo-hoo"); - The given format string uses the same tokens as the - printffamily of functions.- The omni::log::ILog used to log the message is the log returned by omniGetLogWithoutAcquire(). - Rather than using this function, consider using OMNI_LOG_VERBOSE, OMNI_LOG_INFO, OMNI_LOG_WARN, OMNI_LOG_ERROR, OMNI_LOG_FATAL. - Thread Safety
- This macro is thread safe though may block if - omniGetLogWithAcquire()->isAsync()is- false. Implementation detail. Figure out if the first arg is a channel or a format string, check if the channel (or default channel) is enabled, and only then evaluate the given arguments and call into the logger.