modules: camera: Add scoped trace helper
This c++ helper class is normally provided by frameworks/native's
libutils, but cannot be used from the context of a hardware module. For
now just add the required functionality locally in the hardware module.
Change-Id: I5b399cbeb1c017a95baf19456dbf20569e677fbe
diff --git a/modules/camera/Camera.cpp b/modules/camera/Camera.cpp
index eeae41f..d477ef6 100644
--- a/modules/camera/Camera.cpp
+++ b/modules/camera/Camera.cpp
@@ -25,6 +25,7 @@
#define ATRACE_TAG (ATRACE_TAG_CAMERA | ATRACE_TAG_HAL)
#include <cutils/trace.h>
+#include "ScopedTrace.h"
#include "Camera.h"
@@ -62,11 +63,10 @@
int Camera::open(const hw_module_t *module, hw_device_t **device)
{
ALOGI("%s:%d: Opening camera device", __func__, mId);
- ATRACE_BEGIN(__func__);
+ CAMTRACE_CALL();
pthread_mutex_lock(&mMutex);
if (mBusy) {
pthread_mutex_unlock(&mMutex);
- ATRACE_END();
ALOGE("%s:%d: Error! Camera device already opened", __func__, mId);
return -EBUSY;
}
@@ -77,18 +77,16 @@
*device = &mDevice.common;
pthread_mutex_unlock(&mMutex);
- ATRACE_END();
return 0;
}
int Camera::close()
{
ALOGI("%s:%d: Closing camera device", __func__, mId);
- ATRACE_BEGIN(__func__);
+ CAMTRACE_CALL();
pthread_mutex_lock(&mMutex);
if (!mBusy) {
pthread_mutex_unlock(&mMutex);
- ATRACE_END();
ALOGE("%s:%d: Error! Camera device not open", __func__, mId);
return -EINVAL;
}
@@ -97,7 +95,6 @@
mBusy = false;
pthread_mutex_unlock(&mMutex);
- ATRACE_END();
return 0;
}
@@ -132,16 +129,14 @@
int Camera::processCaptureRequest(camera3_capture_request_t *request)
{
ALOGV("%s:%d: request=%p", __func__, mId, request);
- ATRACE_BEGIN(__func__);
+ CAMTRACE_CALL();
if (request == NULL) {
ALOGE("%s:%d: NULL request recieved", __func__, mId);
- ATRACE_END();
return -EINVAL;
}
// TODO: verify request; submit request to hardware
- ATRACE_END();
return 0;
}