summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-05-12 03:18:02 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2020-05-15 12:08:38 +0300
commit79c5df21ddde12f98eacf2ece8e3091e4f845d38 (patch)
treec822b2cba2977c29a34fb30a39532d7b9b144f31
parent4d536996c7cab21ea5f29730001c4d1cc4b2e03f (diff)
libcamera: pipeline: raspberrypi: Move StaggeredCtrl to libcamera namespace
The StaggeredCtrl class, part of the Raspberry Pi pipeline handler, is part of libcamera. Move it to the libcamera namespace to simplify usage of libcamera APIs. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Naushir Patuck <naush@raspberrypi.com>
-rw-r--r--src/libcamera/pipeline/raspberrypi/raspberrypi.cpp2
-rw-r--r--src/libcamera/pipeline/raspberrypi/staggered_ctrl.cpp25
-rw-r--r--src/libcamera/pipeline/raspberrypi/staggered_ctrl.h13
3 files changed, 22 insertions, 18 deletions
diff --git a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
index 21a1d7f7..41d1a522 100644
--- a/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
+++ b/src/libcamera/pipeline/raspberrypi/raspberrypi.cpp
@@ -330,7 +330,7 @@ public:
std::vector<IPABuffer> ipaBuffers_;
/* VCSM allocation helper. */
- RPi::Vcsm vcsm_;
+ ::RPi::Vcsm vcsm_;
void *lsTable_;
RPi::StaggeredCtrl staggeredCtrl_;
diff --git a/src/libcamera/pipeline/raspberrypi/staggered_ctrl.cpp b/src/libcamera/pipeline/raspberrypi/staggered_ctrl.cpp
index fbd87d3e..d431887e 100644
--- a/src/libcamera/pipeline/raspberrypi/staggered_ctrl.cpp
+++ b/src/libcamera/pipeline/raspberrypi/staggered_ctrl.cpp
@@ -9,20 +9,19 @@
#include <algorithm>
+#include <libcamera/controls.h>
+
#include "log.h"
#include "utils.h"
+#include "v4l2_videodevice.h"
-/* For logging... */
-using libcamera::LogCategory;
-using libcamera::LogDebug;
-using libcamera::LogInfo;
-using libcamera::utils::hex;
+namespace libcamera {
LOG_DEFINE_CATEGORY(RPI_S_W);
namespace RPi {
-void StaggeredCtrl::init(libcamera::V4L2VideoDevice *dev,
+void StaggeredCtrl::init(V4L2VideoDevice *dev,
std::initializer_list<std::pair<const uint32_t, uint8_t>> delayList)
{
std::lock_guard<std::mutex> lock(lock_);
@@ -35,7 +34,7 @@ void StaggeredCtrl::init(libcamera::V4L2VideoDevice *dev,
maxDelay_ = 0;
for (auto const &p : delay_) {
LOG(RPI_S_W, Info) << "Init ctrl "
- << hex(p.first) << " with delay "
+ << utils::hex(p.first) << " with delay "
<< static_cast<int>(p.second);
maxDelay_ = std::max(maxDelay_, p.second);
}
@@ -92,7 +91,7 @@ bool StaggeredCtrl::set(std::initializer_list<std::pair<const uint32_t, int32_t>
return true;
}
-bool StaggeredCtrl::set(libcamera::ControlList &controls)
+bool StaggeredCtrl::set(ControlList &controls)
{
std::lock_guard<std::mutex> lock(lock_);
@@ -103,7 +102,7 @@ bool StaggeredCtrl::set(libcamera::ControlList &controls)
ctrl_[p.first][setCount_] = CtrlInfo(p.second.get<int32_t>());
LOG(RPI_S_W, Debug) << "Setting ctrl "
- << hex(p.first) << " to "
+ << utils::hex(p.first) << " to "
<< ctrl_[p.first][setCount_].value
<< " at index "
<< setCount_;
@@ -115,7 +114,7 @@ bool StaggeredCtrl::set(libcamera::ControlList &controls)
int StaggeredCtrl::write()
{
std::lock_guard<std::mutex> lock(lock_);
- libcamera::ControlList controls(dev_->controls());
+ ControlList controls(dev_->controls());
for (auto &p : ctrl_) {
int delayDiff = maxDelay_ - delay_[p.first];
@@ -126,7 +125,7 @@ int StaggeredCtrl::write()
controls.set(p.first, p.second[index].value);
p.second[index].updated = false;
LOG(RPI_S_W, Debug) << "Writing ctrl "
- << hex(p.first) << " to "
+ << utils::hex(p.first) << " to "
<< p.second[index].value
<< " at index "
<< index;
@@ -149,7 +148,7 @@ void StaggeredCtrl::get(std::unordered_map<uint32_t, int32_t> &ctrl, uint8_t off
int index = std::max<int>(0, getCount_ - maxDelay_);
ctrl[p.first] = p.second[index].value;
LOG(RPI_S_W, Debug) << "Getting ctrl "
- << hex(p.first) << " to "
+ << utils::hex(p.first) << " to "
<< p.second[index].value
<< " at index "
<< index;
@@ -171,3 +170,5 @@ void StaggeredCtrl::nextFrame()
}
} /* namespace RPi */
+
+} /* namespace libcamera */
diff --git a/src/libcamera/pipeline/raspberrypi/staggered_ctrl.h b/src/libcamera/pipeline/raspberrypi/staggered_ctrl.h
index c8f000a0..eef16eaa 100644
--- a/src/libcamera/pipeline/raspberrypi/staggered_ctrl.h
+++ b/src/libcamera/pipeline/raspberrypi/staggered_ctrl.h
@@ -12,9 +12,10 @@
#include <unordered_map>
#include <utility>
-#include <libcamera/controls.h>
+namespace libcamera {
-#include "v4l2_videodevice.h"
+class ControlList;
+class V4L2VideoDevice;
namespace RPi {
@@ -31,7 +32,7 @@ public:
return init_;
}
- void init(libcamera::V4L2VideoDevice *dev,
+ void init(V4L2VideoDevice *dev,
std::initializer_list<std::pair<const uint32_t, uint8_t>> delayList);
void reset();
@@ -39,7 +40,7 @@ public:
bool set(uint32_t ctrl, int32_t value);
bool set(std::initializer_list<std::pair<const uint32_t, int32_t>> ctrlList);
- bool set(libcamera::ControlList &controls);
+ bool set(ControlList &controls);
int write();
@@ -81,10 +82,12 @@ private:
uint32_t setCount_;
uint32_t getCount_;
uint8_t maxDelay_;
- libcamera::V4L2VideoDevice *dev_;
+ V4L2VideoDevice *dev_;
std::unordered_map<uint32_t, uint8_t> delay_;
std::unordered_map<uint32_t, CircularArray> ctrl_;
std::mutex lock_;
};
} /* namespace RPi */
+
+} /* namespace libcamera */