本文整理汇总了C++中ETRACE函数的典型用法代码示例。如果您正苦于以下问题:C++ ETRACE函数的具体用法?C++ ETRACE怎么用?C++ ETRACE使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了ETRACE函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: RETURN_NULL_IF_NOT_INIT
DisplayPlane* TngPlaneManager::getPlaneHelper(int dsp, int type)
{
RETURN_NULL_IF_NOT_INIT();
if (dsp < 0 || dsp > IDisplayDevice::DEVICE_EXTERNAL) {
ETRACE("Invalid display device %d", dsp);
return 0;
}
int index = dsp == IDisplayDevice::DEVICE_PRIMARY ? 0 : 1;
if (type == DisplayPlane::PLANE_PRIMARY ||
type == DisplayPlane::PLANE_CURSOR) {
return getPlane(type, index);
} else if (type == DisplayPlane::PLANE_SPRITE) {
return getAnyPlane(type);
} else if (type == DisplayPlane::PLANE_OVERLAY) {
// use overlay A for pipe A and overlay C for pipe B if possible
DisplayPlane *plane = getPlane(type, index);
if (plane == NULL) {
plane = getPlane(type, !index);
}
return plane;
} else {
ETRACE("invalid plane type %d", type);
return 0;
}
}
开发者ID:OMNI-Zenfone-2,项目名称:hwcomposer,代码行数:28,代码来源:TngPlaneManager.cpp
示例2: pvrAlloc
static struct _ValidateNode * pvrAlloc(struct _WsbmVNodeFuncs * func,
int typeId)
{
CTRACE();
if(typeId == 0) {
struct PsbWsbmValidateNode * vNode = malloc(sizeof(*vNode));
if(!vNode) {
ETRACE("failed to allocate memory");
return NULL;
}
vNode->base.func = func;
vNode->base.type_id = 0;
return &vNode->base;
} else {
struct _ValidateNode * node = malloc(sizeof(*node));
if(!node) {
ETRACE("failed to allocate node");
return NULL;
}
node->func = func;
node->type_id = 1;
return node;
}
}
开发者ID:MIPS,项目名称:hardware-intel-img-hwcomposer,代码行数:26,代码来源:WsbmWrapper.c
示例3: switch
DisplayPlane* TngPlaneManager::allocPlane(int index, int type)
{
DisplayPlane *plane = 0;
switch (type) {
case DisplayPlane::PLANE_PRIMARY:
plane = new TngPrimaryPlane(index, index);
break;
case DisplayPlane::PLANE_SPRITE:
plane = new TngSpritePlane(index, 0);
break;
case DisplayPlane::PLANE_OVERLAY:
plane = new TngOverlayPlane(index, 0);
break;
case DisplayPlane::PLANE_CURSOR:
plane = new TngCursorPlane(index, index /*disp */);
break;
default:
ETRACE("unsupported type %d", type);
break;
}
if (plane && !plane->initialize(DisplayPlane::MIN_DATA_BUFFER_COUNT)) {
ETRACE("failed to initialize plane.");
DEINIT_AND_DELETE_OBJ(plane);
}
return plane;
}
开发者ID:OMNI-Zenfone-2,项目名称:hwcomposer,代码行数:28,代码来源:TngPlaneManager.cpp
示例4: RETURN_NULL_IF_NOT_INIT
int DisplayPlaneManager::getFreePlanes(int dsp, int type)
{
RETURN_NULL_IF_NOT_INIT();
if (dsp < 0 || dsp > IDisplayDevice::DEVICE_EXTERNAL) {
ETRACE("Invalid display device %d", dsp);
return 0;
}
if (type < 0 || type >= DisplayPlane::PLANE_MAX) {
ETRACE("Invalid plane type %d", type);
return 0;
}
uint32_t freePlanes = mFreePlanes[type] | mReclaimedPlanes[type];
if (type == DisplayPlane::PLANE_PRIMARY ||
type == DisplayPlane::PLANE_CURSOR) {
return ((freePlanes & (1 << dsp)) == 0) ? 0 : 1;
} else {
int count = 0;
for (int i = 0; i < 32; i++) {
if ((1 << i) & freePlanes) {
count++;
}
}
return count;
}
return 0;
}
开发者ID:MIPS,项目名称:hardware-intel-img-hwcomposer,代码行数:30,代码来源:DisplayPlaneManager.cpp
示例5: psbWsbmWrapTTMBuffer
int psbWsbmWrapTTMBuffer(uint64_t handle, void **buf)
{
int ret = 0;
struct _WsbmBufferObject *wsbmBuf;
if (!buf) {
ETRACE("invalid parameter");
return -EINVAL;
}
ret = wsbmGenBuffers(mainPool, 1, &wsbmBuf, 0,
(WSBM_PL_FLAG_VRAM | WSBM_PL_FLAG_TT |
/*WSBM_PL_FLAG_NO_EVICT |*/ WSBM_PL_FLAG_SHARED));
if (ret) {
ETRACE("wsbmGenBuffers failed with error code %d", ret);
return ret;
}
ret = wsbmBOSetReferenced(wsbmBuf, handle);
if (ret) {
ETRACE("wsbmBOSetReferenced failed with error code %d", ret);
return ret;
}
*buf = (void *)wsbmBuf;
VTRACE("wrap buffer %p for handle %#x", wsbmBuf, handle);
return 0;
}
开发者ID:MIPS,项目名称:hardware-intel-img-hwcomposer,代码行数:30,代码来源:WsbmWrapper.c
示例6: CTRACE
OverlayBackBuffer* OverlayPlaneBase::createBackBuffer()
{
CTRACE();
// create back buffer
OverlayBackBuffer *backBuffer = (OverlayBackBuffer *)malloc(sizeof(OverlayBackBuffer));
if (!backBuffer) {
ETRACE("failed to allocate back buffer");
return 0;
}
int size = sizeof(OverlayBackBufferBlk);
int alignment = 64 * 1024;
void *wsbmBufferObject = 0;
bool ret = mWsbm->allocateTTMBuffer(size, alignment, &wsbmBufferObject);
if (ret == false) {
ETRACE("failed to allocate TTM buffer");
return 0;
}
void *virtAddr = mWsbm->getCPUAddress(wsbmBufferObject);
uint32_t gttOffsetInPage = mWsbm->getGttOffset(wsbmBufferObject);
backBuffer->buf = (OverlayBackBufferBlk *)virtAddr;
backBuffer->gttOffsetInPage = gttOffsetInPage;
backBuffer->bufObject = wsbmBufferObject;
VTRACE("cpu %p, gtt %d", virtAddr, gttOffsetInPage);
return backBuffer;
}
开发者ID:OMNI-Zenfone-2,项目名称:hwcomposer,代码行数:32,代码来源:OverlayPlaneBase.cpp
示例7: saudio_snd_init_ipc
static int saudio_snd_init_ipc(struct snd_saudio *saudio)
{
int result = 0;
int32_t i = 0, j = 0;
struct saudio_stream *stream = NULL;
struct saudio_dev_ctrl *dev_ctrl = NULL;
ADEBUG();
for (i = 0; i < SAUDIO_DEV_MAX; i++) { /* now only support one device */
dev_ctrl = &saudio->dev_ctrl[i];
result =
sblock_create(dev_ctrl->dst, dev_ctrl->monitor_channel,
SAUDIO_MONITOR_BLOCK_COUNT, CMD_BLOCK_SIZE,
SAUDIO_MONITOR_BLOCK_COUNT, CMD_BLOCK_SIZE);
if (result) {
ETRACE
("saudio:monitor channel create failed result is %d\n",
result);
goto __nodev;
}
result =
sblock_create(dev_ctrl->dst, dev_ctrl->channel,
SAUDIO_CMD_BLOCK_COUNT, CMD_BLOCK_SIZE,
SAUDIO_CMD_BLOCK_COUNT, CMD_BLOCK_SIZE);
if (result) {
ETRACE
("saudio_thread sblock create failed result is %d\n",
result);
goto __nodev;
}
pr_debug("saudio_thread sblock create result is %d\n", result);
for (j = 0; j < SAUDIO_STREAM_MAX; j++) {
stream = &dev_ctrl->stream[j];
result =
sblock_create(stream->dst, stream->channel,
SAUDIO_STREAM_BLOCK_COUNT,
TX_DATA_BLOCK_SIZE,
SAUDIO_STREAM_BLOCK_COUNT,
RX_DATA_BLOCK_SIZE);
if (result) {
ETRACE
("saudio_thread sblock create failed result is %d\n",
result);
goto __nodev;
}
sblock_register_notifier(stream->dst, stream->channel,
sblock_notifier, stream);
pr_debug("saudio_thread sblock create result is %d\n",
result);
}
}
ADEBUG();
return result;
__nodev:
ETRACE("initialization failed\n");
return result;
}
开发者ID:dhs-shine,项目名称:sprd_project,代码行数:59,代码来源:saudio.c
示例8: UeventObserverThread
bool UeventObserver::initialize()
{
mListeners.clear();
if (mUeventFd != -1) {
return true;
}
mThread = new UeventObserverThread(this);
if (!mThread.get()) {
ETRACE("failed to create uevent observer thread");
return false;
}
// init uevent socket
struct sockaddr_nl addr;
// set the socket receive buffer to 64K
// NOTE: this is only called for once
int sz = 64 * 1024;
memset(&addr, 0, sizeof(addr));
addr.nl_family = AF_NETLINK;
addr.nl_pid = pthread_self() | getpid();
addr.nl_groups = 0xffffffff;
mUeventFd = socket(PF_NETLINK, SOCK_DGRAM, NETLINK_KOBJECT_UEVENT);
if (mUeventFd < 0) {
DEINIT_AND_RETURN_FALSE("failed to create uevent socket");
}
if (setsockopt(mUeventFd, SOL_SOCKET, SO_RCVBUFFORCE, &sz, sizeof(sz))) {
WTRACE("setsockopt() failed");
//return false;
}
if (bind(mUeventFd, (struct sockaddr *) &addr, sizeof(addr)) < 0) {
DEINIT_AND_RETURN_FALSE("failed to bind scoket");
return false;
}
memset(mUeventMessage, 0, UEVENT_MSG_LEN);
int exitFds[2];
if (pipe(exitFds) < 0) {
ETRACE("failed to make pipe");
deinitialize();
return false;
}
mExitRDFd = exitFds[0];
mExitWDFd = exitFds[1];
return true;
}
开发者ID:MIPS,项目名称:hardware-intel-img-hwcomposer,代码行数:53,代码来源:UeventObserver.cpp
示例9: vp8_translate_parse_status
void vp8_translate_parse_status(vp8_Status status)
{
switch (status)
{
case VP8_UNSUPPORTED_VERSION:
ETRACE("Parser returns VP8_UNSUPPORTED_VERSION");
break;
case VP8_UNSUPPORTED_BITSTREAM:
ETRACE("Parser returns VP8_UNSUPPORTED_BITSTREAM");
break;
case VP8_INVALID_FRAME_SYNC_CODE:
ETRACE("Parser returns VP8_INVALID_FRAME_SYNC_CODE");
break;
case VP8_UNEXPECTED_END_OF_BITSTREAM:
ETRACE("Parser returns VP8_UNEXPECTED_END_OF_BITSTREAM");
break;
case VP8_CORRUPT_FRAME:
ETRACE("Parser returns VP8_CORRUPT_FRAME");
break;
case VP8_MEMORY_ERROR:
ETRACE("Parser returns MEMORY_ERROR");
break;
case VP8_NO_INITIALIZATION:
ETRACE("Parser returns VP8_NO_INITIALIZATION");
break;
case VP8_UNKNOWN_ERROR:
ETRACE("Parser returns VP8_UNKNOWN_ERROR");
break;
}
return;
}
开发者ID:knone1,项目名称:hardware_intel_common_libmix,代码行数:32,代码来源:vp8parse.c
示例10: psbWsbmInitialize
int psbWsbmInitialize(int drmFD)
{
union drm_psb_extension_arg arg;
const char drmExt[] = "psb_ttm_placement_alphadrop";
int ret = 0;
CTRACE();
if (drmFD <= 0) {
ETRACE("invalid drm fd %d", drmFD);
return drmFD;
}
/*init wsbm*/
ret = wsbmInit(wsbmNullThreadFuncs(), &vNodeFuncs);
if (ret) {
ETRACE("failed to initialize Wsbm, error code %d", ret);
return ret;
}
VTRACE("DRM_PSB_EXTENSION %d", DRM_PSB_EXTENSION);
/*get devOffset via drm IOCTL*/
strncpy(arg.extension, drmExt, sizeof(drmExt));
ret = drmCommandWriteRead(drmFD, 6/*DRM_PSB_EXTENSION*/, &arg, sizeof(arg));
if(ret || !arg.rep.exists) {
ETRACE("failed to get device offset, error code %d", ret);
goto out;
}
VTRACE("ioctl offset %#x", arg.rep.driver_ioctl_offset);
mainPool = wsbmTTMPoolInit(drmFD, arg.rep.driver_ioctl_offset);
if(!mainPool) {
ETRACE("failed to initialize TTM Pool");
ret = -EINVAL;
goto out;
}
VTRACE("Wsbm initialization succeeded. mainPool %p", mainPool);
return 0;
out:
psbWsbmTakedown();
return ret;
}
开发者ID:MIPS,项目名称:hardware-intel-img-hwcomposer,代码行数:48,代码来源:WsbmWrapper.c
示例11: ETRACE
void
EventDispatcher::SetDragMessage(BMessage& message,
ServerBitmap* bitmap, const BPoint& offsetFromCursor)
{
ETRACE(("EventDispatcher::SetDragMessage()\n"));
BAutolock _(this);
if (fLastButtons == 0) {
// mouse buttons has already been released or was never pressed
bitmap->ReleaseReference();
return;
}
if (fDragBitmap != bitmap) {
if (fDragBitmap)
fDragBitmap->ReleaseReference();
fDragBitmap = bitmap;
if (fDragBitmap != NULL)
fDragBitmap->AcquireReference();
}
fHWInterface->SetDragBitmap(bitmap, offsetFromCursor);
fDragMessage = message;
fDraggingMessage = true;
fDragOffset = offsetFromCursor;
}
开发者ID:mmadia,项目名称:Haiku-services-branch,代码行数:30,代码来源:EventDispatcher.cpp
示例12: ETRACE
bool FDHandler::AddFd(int fd) {
if (fd < 0) {
ETRACE("Cannot add negative fd: %d", fd);
return false;
}
auto it = fds_.find(fd);
if (it != fds_.end()) {
ETRACE("FD already being watched: %d\n", it->first);
return false;
}
fds_.emplace(fd, FDWatch());
return true;
}
开发者ID:gaochun,项目名称:IA-Hardware-Composer,代码行数:16,代码来源:fdhandler.cpp
示例13: ETRACE
void TngSpritePlane::setZOrderConfig(ZOrderConfig& zorderConfig,
void *nativeConfig)
{
if (!nativeConfig) {
ETRACE("Invalid parameter, no native config");
return;
}
mAbovePrimary = false;
int primaryIndex = -1;
int spriteIndex = -1;
// only consider force bottom when overlay is active
for (size_t i = 0; i < zorderConfig.size(); i++) {
DisplayPlane *plane = zorderConfig[i]->plane;
if (plane->getType() == DisplayPlane::PLANE_PRIMARY)
primaryIndex = i;
if (plane->getType() == DisplayPlane::PLANE_SPRITE) {
spriteIndex = i;
}
}
// if has overlay plane which is below primary plane
if (spriteIndex > primaryIndex) {
mAbovePrimary = true;
}
struct intel_dc_plane_zorder *zorder =
(struct intel_dc_plane_zorder *)nativeConfig;
zorder->abovePrimary = mAbovePrimary ? 1 : 0;
}
开发者ID:OMNI-Zenfone-2,项目名称:hwcomposer,代码行数:31,代码来源:TngSpritePlane.cpp
示例14: vaudio_thread
static int
vaudio_thread (void* data)
{
#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0)
daemonize();
#else
daemonize("vaudio-fe");
#endif
data = (void*) vaudio;
while (!vaudio_thread_aborted) {
down (&vaudio_thread_sem);
if ( (vaudio_thread_init_now & 2) ) {
vaudio_thread_init_now &= ~2;
snd_card_free(vaudio_card);
if (vaudio_snd_probe() < 0) {
ETRACE ("virtual audio ALSA card initialization failed\n");
}
}
if ( (vaudio_thread_init_now & 1) ) {
vaudio_thread_init_now &= ~1;
vaudio_snd_init_card(data);
}
}
complete_and_exit(&vaudio_thread_completion, 0);
/*NOTREACHED*/
return 0;
}
开发者ID:LinkLunk,项目名称:android_kernel_samsung_mint,代码行数:29,代码来源:vaudio-fe.c
示例15: ETRACE
bool UeventObserver::threadLoop()
{
if (mUeventFd == -1) {
ETRACE("invalid uEvent file descriptor");
return false;
}
struct pollfd fds[2];
int nr;
fds[0].fd = mUeventFd;
fds[0].events = POLLIN;
fds[0].revents = 0;
fds[1].fd = mExitRDFd;
fds[1].events = POLLIN;
fds[1].revents = 0;
nr = poll(fds, 2, -1);
if (nr > 0 && fds[0].revents == POLLIN) {
int count = recv(mUeventFd, mUeventMessage, UEVENT_MSG_LEN - 2, 0);
if (count > 0) {
onUevent();
}
} else if (fds[1].revents) {
close(mExitRDFd);
mExitRDFd = -1;
ITRACE("exiting wait");
return false;
}
// always looping
return true;
}
开发者ID:MIPS,项目名称:hardware-intel-img-hwcomposer,代码行数:32,代码来源:UeventObserver.cpp
示例16: _RemoveTokens
bool
EventDispatcher::_AddTokens(BMessage* message, EventTarget* target,
uint32 eventMask, BMessage* nextMouseMoved, int32* _viewToken)
{
_RemoveTokens(message);
int32 count = target->CountListeners();
int32 added = 0;
for (int32 i = 0; i < count; i++) {
event_listener* listener = target->ListenerAt(i);
if ((listener->EffectiveEventMask() & eventMask) == 0)
continue;
if (nextMouseMoved != NULL && message->what == B_MOUSE_MOVED
&& (listener->EffectiveOptions() & B_NO_POINTER_HISTORY) != 0
&& message != nextMouseMoved
&& _viewToken != NULL) {
if (listener->token == *_viewToken) {
// focus view doesn't want to get pointer history
*_viewToken = B_NULL_TOKEN;
}
continue;
}
ETRACE((" add token %ld\n", listener->token));
if (message->AddInt32(kTokenName, listener->token) == B_OK)
added++;
}
return added != 0;
}
开发者ID:mmadia,项目名称:Haiku-services-branch,代码行数:33,代码来源:EventDispatcher.cpp
示例17: strlen
void UeventObserver::onUevent()
{
char *msg = mUeventMessage;
const char *envelope = DrmConfig::getUeventEnvelope();
if (strncmp(msg, envelope, strlen(envelope)) != 0)
return;
msg += strlen(msg) + 1;
UeventListener *listener;
String8 key;
while (*msg) {
key = String8(msg);
if (mListeners.indexOfKey(key) >= 0) {
DTRACE("received Uevent: %s", msg);
listener = mListeners.valueFor(key);
if (listener) {
listener->func(listener->data);
} else {
ETRACE("no listener for uevent %s", msg);
}
}
msg += strlen(msg) + 1;
}
}
开发者ID:MIPS,项目名称:hardware-intel-img-hwcomposer,代码行数:25,代码来源:UeventObserver.cpp
示例18: ETRACE
Decode_Status VideoDecoderVP8::decode(VideoDecodeBuffer *buffer) {
Decode_Status status;
vbp_data_vp8 *data = NULL;
if (buffer == NULL) {
ETRACE("VideoDecodeBuffer is NULL.");
return DECODE_INVALID_DATA;
}
status = VideoDecoderBase::parseBuffer(
buffer->data,
buffer->size,
false,
(void**)&data);
CHECK_STATUS("VideoDecoderBase::parseBuffer");
mShowFrame = data->codec_data->show_frame;
if (!mVAStarted) {
status = startVA(data);
CHECK_STATUS("startVA");
}
VideoDecoderBase::setRotationDegrees(buffer->rotationDegrees);
status = decodeFrame(buffer, data);
return status;
}
开发者ID:PDi-Communication-Systems-Inc,项目名称:lollipop_hardware_intel,代码行数:28,代码来源:VideoDecoderVP8.cpp
示例19: WTRACE
bool DisplayPlaneManager::initialize()
{
int i, j;
if (mInitialized) {
WTRACE("object has been initialized");
return true;
}
// calculate total plane number and free plane bitmaps
mPlaneCount[DisplayPlane::PLANE_SPRITE] = mSpritePlaneCount;
mPlaneCount[DisplayPlane::PLANE_OVERLAY] = mOverlayPlaneCount;
mPlaneCount[DisplayPlane::PLANE_PRIMARY] = mPrimaryPlaneCount;
mPlaneCount[DisplayPlane::PLANE_CURSOR] = mCursorPlaneCount;
mTotalPlaneCount = mSpritePlaneCount+ mOverlayPlaneCount+ mPrimaryPlaneCount + mCursorPlaneCount;
if (mTotalPlaneCount == 0) {
ETRACE("plane count is not initialized");
return false;
}
for (i = 0; i < DisplayPlane::PLANE_MAX; i++) {
mFreePlanes[i] = ((1 << mPlaneCount[i]) - 1);
}
// allocate plane pools
for (i = 0; i < DisplayPlane::PLANE_MAX; i++) {
if (mPlaneCount[i]) {
mPlanes[i].setCapacity(mPlaneCount[i]);
for (j = 0; j < mPlaneCount[i]; j++) {
DisplayPlane* plane = allocPlane(j, i);
if (!plane) {
ETRACE("failed to allocate plane %d, type %d", j, i);
DEINIT_AND_RETURN_FALSE();
}
mPlanes[i].push_back(plane);
}
}
}
mInitialized = true;
return true;
}
开发者ID:MIPS,项目名称:hardware-intel-img-hwcomposer,代码行数:45,代码来源:DisplayPlaneManager.cpp
示例20: saudio_ctrl_thread
static int saudio_ctrl_thread(void *data)
{
int result = 0;
struct snd_saudio *saudio = (struct snd_saudio *)data;
ADEBUG();
result = saudio_snd_init_ipc(saudio);
if (result) {
printk(KERN_ERR "saudio:saudio_snd_init_ipc error %d\n",
result);
return -1;
}
while (!kthread_should_stop()) {
printk(KERN_INFO
"%s,saudio: waiting for modem boot handshake,dst %d,channel %d\n",
__func__, saudio->dst, saudio->channel);
saudio_snd_wait_modem_restart(saudio);
saudio->in_init = 1;
printk(KERN_INFO
"%s,saudio: modem boot and handshake ok,dst %d, channel %d\n",
__func__, saudio->dst, saudio->channel);
saudio_snd_card_free(saudio);
printk(KERN_INFO
"saudio_ctrl_thread flush work queue in dst %d, channel %d\n",
saudio->dst, saudio->channel);
flush_workqueue(saudio->queue);
saudio->in_init = 0;
printk(KERN_INFO
"saudio_ctrl_thread flush work queue out,dst %d, channel %d\n",
saudio->dst, saudio->channel);
if(saudio_snd_notify_modem_clear(saudio)) {
printk(KERN_ERR " saudio_ctrl_thread modem error again when notify modem clear \n");
continue;
}
saudio_clear_ctrl_cmd(saudio);
if(!saudio->card) {
result = saudio_snd_init_card(saudio);
printk(KERN_INFO
"saudio: snd card init reulst %d, dst %d, channel %d\n",
result, saudio->dst, saudio->channel);
}
mutex_lock(&saudio->mutex);
saudio->state = 1;
mutex_unlock(&saudio->mutex);
}
ETRACE("saudio_ctrl_thread create ok\n");
return 0;
}
开发者ID:dhs-shine,项目名称:sprd_project,代码行数:57,代码来源:saudio.c
注:本文中的ETRACE函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论