1bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee/* 2bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee INTEL CONFIDENTIAL 3bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee Copyright 2009 Intel Corporation All Rights Reserved. 4bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee The source code contained or described herein and all documents related to the source code ("Material") are owned by Intel Corporation or its suppliers or licensors. Title to the Material remains with Intel Corporation or its suppliers and licensors. The Material contains trade secrets and proprietary and confidential information of Intel or its suppliers and licensors. The Material is protected by worldwide copyright and trade secret laws and treaty provisions. No part of the Material may be used, copied, reproduced, modified, published, uploaded, posted, transmitted, distributed, or disclosed in any way without Intel’s prior express written permission. 5bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 6bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee No license under any patent, copyright, trade secret or other intellectual property right is granted to or conferred upon you by disclosure or delivery of the Materials, either expressly, by implication, inducement, estoppel or otherwise. Any license under such intellectual property rights must be express and approved by Intel in writing. 7bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee */ 8bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 9bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 10bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#ifndef VBP_TRACE_H_ 11bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define VBP_TRACE_H_ 12bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 13bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 14bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 15bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee//#define VBP_TRACE 16bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 17bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 18bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#ifdef VBP_TRACE /* if VBP_TRACE is defined*/ 19bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 20bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#include <stdio.h> 21bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#include <stdarg.h> 22bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 23bd8388b4555645b3d29abc6a94c303638064d69awonjong.leeextern void vbp_trace_util(const char* cat, const char* fun, int line, const char* format, ...); 24bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 25bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define VBP_TRACE_UTIL(cat, format, ...) \ 26bd8388b4555645b3d29abc6a94c303638064d69awonjong.leevbp_trace_util(cat, __FUNCTION__, __LINE__, format, ##__VA_ARGS__) 27bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 28bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 29bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define ETRACE(format, ...) VBP_TRACE_UTIL("ERROR: ", format, ##__VA_ARGS__) 30bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define WTRACE(format, ...) VBP_TRACE_UTIL("WARNING: ", format, ##__VA_ARGS__) 31bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define ITRACE(format, ...) VBP_TRACE_UTIL("INFO: ", format, ##__VA_ARGS__) 32bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define VTRACE(format, ...) VBP_TRACE_UTIL("VERBOSE: ", format, ##__VA_ARGS__) 33bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 34bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#else /* if VBP_TRACE is not defined */ 35bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 36bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define ETRACE(format, ...) 37bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define WTRACE(format, ...) 38bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define ITRACE(format, ...) 39bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#define VTRACE(format, ...) 40bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 41bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 42bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#endif /* VBP_TRACE*/ 43bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 44bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 45bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee#endif /*VBP_TRACE_H_*/ 46bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 47bd8388b4555645b3d29abc6a94c303638064d69awonjong.lee 48