unplugged-system/external/libchrome-gestures/include/logging.h

65 lines
1.8 KiB
C
Raw Normal View History

// Copyright 2012 The ChromiumOS Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef GESTURES_LOGGING_H__
#define GESTURES_LOGGING_H__
#include "gestures.h"
#define Assert(condition) \
do { \
if (!(condition)) \
Err("Assertion '" #condition "' failed"); \
} while(false)
#define AssertWithReturn(condition) \
do { \
if (!(condition)) { \
Err("Assertion '" #condition "' failed"); \
return; \
} \
} while(false)
#define AssertWithReturnValue(condition, returnValue) \
do { \
if (!(condition)) { \
Err("Assertion '" #condition "' failed"); \
return (returnValue); \
} \
} while(false)
#define Log(format, ...) \
gestures_log(GESTURES_LOG_INFO, "INFO:%s:%d: " format "\n", \
__FILE__, __LINE__, ## __VA_ARGS__)
#define Err(format, ...) \
gestures_log(GESTURES_LOG_ERROR, "ERROR:%s:%d: " format "\n", \
__FILE__, __LINE__, ## __VA_ARGS__)
#define ErrOnce(format, ...) \
do { \
static bool written = false; \
if (!written) { \
Err(format, ## __VA_ARGS__); \
written = true; \
} \
} while(false)
#define MTStatSample(key, value, timestamp) \
gestures_log(GESTURES_LOG_INFO, "MTStat:%f:%s:%s\n", \
(timestamp), (key), (value))
#define MTStatSampleInt(key, value, timestamp) \
gestures_log(GESTURES_LOG_INFO, "MTStat:%f:%s:%d\n", \
(timestamp), (key), (int)(value))
#define MTStatUpdate(key, value, timestamp) \
gestures_log(GESTURES_LOG_INFO, "MTStat:%f:%s=%s\n", \
(timestamp), (key), value)
#define MTStatUpdateInt(key, value, timestamp) \
gestures_log(GESTURES_LOG_INFO, "MTStat:%f:%s=%d\n", \
(timestamp), (key), (int)(value))
#endif // GESTURES_LOGGING_H__