From patchwork Fri Dec 11 23:23:19 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Laurent Pinchart X-Patchwork-Id: 10654 X-Patchwork-Delegate: laurent.pinchart@ideasonboard.com Return-Path: X-Original-To: parsemail@patchwork.libcamera.org Delivered-To: parsemail@patchwork.libcamera.org Received: from lancelot.ideasonboard.com (lancelot.ideasonboard.com [92.243.16.209]) by patchwork.libcamera.org (Postfix) with ESMTPS id B1600BD808 for ; Sat, 12 Dec 2020 01:52:47 +0000 (UTC) Received: from lancelot.ideasonboard.com (localhost [IPv6:::1]) by lancelot.ideasonboard.com (Postfix) with ESMTP id 27679746F2; Sat, 12 Dec 2020 02:52:47 +0100 (CET) Authentication-Results: lancelot.ideasonboard.com; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=ideasonboard.com header.i=@ideasonboard.com header.b="ho/Y7oPO"; dkim-atps=neutral Received: from perceval.ideasonboard.com (perceval.ideasonboard.com [IPv6:2001:4b98:dc2:55:216:3eff:fef7:d647]) by lancelot.ideasonboard.com (Postfix) with ESMTPS id 1871E68053 for ; Sat, 12 Dec 2020 02:52:45 +0100 (CET) Received: from pendragon.lan (62-78-145-57.bb.dnainternet.fi [62.78.145.57]) by perceval.ideasonboard.com (Postfix) with ESMTPSA id 9955A99 for ; Sat, 12 Dec 2020 00:23:27 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com; s=mail; t=1607729007; bh=vvnGfYvFuNpj+5A+WquP+gKDyiXptKqM/xM6tQq4PsA=; h=From:To:Subject:Date:From; b=ho/Y7oPOHvIFqMPC0GNyCOquGufyJkl8nGgPY/6tg1Q0Xi+6H2iNeXzQEK7wmSNrF 7PP5tTz5xAQnro1qY+IRv8RfPi1Ay9ZBCWS7S643CCQUMRQdhrxQiBTtzGAx3JtdkP Q5jJIOW8deVmBQ8rn5Eu9aqF/G07tzM4euXlWtXY= From: Laurent Pinchart To: libcamera-devel@lists.libcamera.org Date: Sat, 12 Dec 2020 01:23:19 +0200 Message-Id: <20201211232319.32088-1-laurent.pinchart@ideasonboard.com> X-Mailer: git-send-email 2.27.0 MIME-Version: 1.0 Subject: [libcamera-devel] [PATCH] libcamera: Replace ARRAY_SIZE() with std::size() X-BeenThere: libcamera-devel@lists.libcamera.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: libcamera-devel-bounces@lists.libcamera.org Sender: "libcamera-devel" C++17 has a std::size() function that returns the size of a C-style array. Use it instead of the custom ARRAY_SIZE macro. Signed-off-by: Laurent Pinchart Reviewed-by: Paul Elder Reviewed-by: Umang Jain Reviewed-by: Jacopo Mondi --- include/libcamera/internal/utils.h | 2 -- src/ipa/raspberrypi/raspberrypi.cpp | 4 ++-- src/libcamera/camera.cpp | 8 ++++---- src/libcamera/log.cpp | 7 ++++--- src/libcamera/utils.cpp | 5 ----- src/libcamera/v4l2_videodevice.cpp | 6 +++--- test/ipc/unixsocket.cpp | 6 +++--- 7 files changed, 16 insertions(+), 22 deletions(-) diff --git a/include/libcamera/internal/utils.h b/include/libcamera/internal/utils.h index ebb2c4038e19..f08134afb5ba 100644 --- a/include/libcamera/internal/utils.h +++ b/include/libcamera/internal/utils.h @@ -17,8 +17,6 @@ #include #include -#define ARRAY_SIZE(a) (sizeof(a) / sizeof(a[0])) - #ifndef __DOXYGEN__ /* uClibc and uClibc-ng don't provide O_TMPFILE */ diff --git a/src/ipa/raspberrypi/raspberrypi.cpp b/src/ipa/raspberrypi/raspberrypi.cpp index 801400214c3a..a7439badb7dc 100644 --- a/src/ipa/raspberrypi/raspberrypi.cpp +++ b/src/ipa/raspberrypi/raspberrypi.cpp @@ -6,6 +6,7 @@ */ #include +#include #include #include #include @@ -27,7 +28,6 @@ #include "libcamera/internal/buffer.h" #include "libcamera/internal/camera_sensor.h" #include "libcamera/internal/log.h" -#include "libcamera/internal/utils.h" #include @@ -1092,7 +1092,7 @@ void IPARPi::applyLS(const struct AlscStatus *lsStatus, ControlList &ctrls) * Choose smallest cell size that won't exceed 63x48 cells. */ const int cellSizes[] = { 16, 32, 64, 128, 256 }; - unsigned int numCells = ARRAY_SIZE(cellSizes); + unsigned int numCells = std::size(cellSizes); unsigned int i, w, h, cellSize; for (i = 0; i < numCells; i++) { cellSize = cellSizes[i]; diff --git a/src/libcamera/camera.cpp b/src/libcamera/camera.cpp index 3579ba96b6ea..c1de1fee701a 100644 --- a/src/libcamera/camera.cpp +++ b/src/libcamera/camera.cpp @@ -7,6 +7,7 @@ #include +#include #include #include @@ -17,7 +18,6 @@ #include "libcamera/internal/log.h" #include "libcamera/internal/pipeline_handler.h" #include "libcamera/internal/thread.h" -#include "libcamera/internal/utils.h" /** * \file camera.h @@ -393,7 +393,7 @@ int Camera::Private::isAccessAllowed(State state, bool allowDisconnected) const if (currentState == state) return 0; - ASSERT(static_cast(state) < ARRAY_SIZE(camera_state_names)); + ASSERT(static_cast(state) < std::size(camera_state_names)); LOG(Camera, Debug) << "Camera in " << camera_state_names[currentState] << " state trying operation requiring state " @@ -412,8 +412,8 @@ int Camera::Private::isAccessAllowed(State low, State high, if (currentState >= low && currentState <= high) return 0; - ASSERT(static_cast(low) < ARRAY_SIZE(camera_state_names) && - static_cast(high) < ARRAY_SIZE(camera_state_names)); + ASSERT(static_cast(low) < std::size(camera_state_names) && + static_cast(high) < std::size(camera_state_names)); LOG(Camera, Debug) << "Camera in " << camera_state_names[currentState] << " state trying operation requiring state between " diff --git a/src/libcamera/log.cpp b/src/libcamera/log.cpp index 180eb97ba664..45c7c2d24652 100644 --- a/src/libcamera/log.cpp +++ b/src/libcamera/log.cpp @@ -7,6 +7,7 @@ #include "libcamera/internal/log.h" +#include #if HAVE_BACKTRACE #include #endif @@ -91,7 +92,7 @@ static const char *log_severity_name(LogSeverity severity) "FATAL", }; - if (static_cast(severity) < ARRAY_SIZE(names)) + if (static_cast(severity) < std::size(names)) return names[severity]; else return "UNKWN"; @@ -406,7 +407,7 @@ void Logger::backtrace() return; void *buffer[32]; - int num_entries = ::backtrace(buffer, ARRAY_SIZE(buffer)); + int num_entries = ::backtrace(buffer, std::size(buffer)); char **strings = backtrace_symbols(buffer, num_entries); if (!strings) return; @@ -620,7 +621,7 @@ LogSeverity Logger::parseLogLevel(const std::string &level) severity = LogInvalid; } else { severity = LogInvalid; - for (unsigned int i = 0; i < ARRAY_SIZE(names); ++i) { + for (unsigned int i = 0; i < std::size(names); ++i) { if (names[i] == level) { severity = i; break; diff --git a/src/libcamera/utils.cpp b/src/libcamera/utils.cpp index da85c9c24340..e90375ae115c 100644 --- a/src/libcamera/utils.cpp +++ b/src/libcamera/utils.cpp @@ -31,11 +31,6 @@ namespace libcamera { namespace utils { -/** - * \def ARRAY_SIZE(array) - * \brief Determine the number of elements in the static array. - */ - /** * \brief Strip the directory prefix from the path * \param[in] path The path to process diff --git a/src/libcamera/v4l2_videodevice.cpp b/src/libcamera/v4l2_videodevice.cpp index e2b582842a9b..baf683d6d985 100644 --- a/src/libcamera/v4l2_videodevice.cpp +++ b/src/libcamera/v4l2_videodevice.cpp @@ -7,6 +7,7 @@ #include "libcamera/internal/v4l2_videodevice.h" +#include #include #include #include @@ -26,7 +27,6 @@ #include "libcamera/internal/log.h" #include "libcamera/internal/media_device.h" #include "libcamera/internal/media_object.h" -#include "libcamera/internal/utils.h" /** * \file v4l2_videodevice.h @@ -860,7 +860,7 @@ int V4L2VideoDevice::trySetFormatMultiplane(V4L2DeviceFormat *format, bool set) pix->num_planes = format->planesCount; pix->field = V4L2_FIELD_NONE; - ASSERT(pix->num_planes <= ARRAY_SIZE(pix->plane_fmt)); + ASSERT(pix->num_planes <= std::size(pix->plane_fmt)); for (unsigned int i = 0; i < pix->num_planes; ++i) { pix->plane_fmt[i].bytesperline = format->planes[i].bpl; @@ -1255,7 +1255,7 @@ std::unique_ptr V4L2VideoDevice::createBuffer(unsigned int index) buf.index = index; buf.type = bufferType_; buf.memory = V4L2_MEMORY_MMAP; - buf.length = ARRAY_SIZE(v4l2Planes); + buf.length = std::size(v4l2Planes); buf.m.planes = v4l2Planes; int ret = ioctl(VIDIOC_QUERYBUF, &buf); diff --git a/test/ipc/unixsocket.cpp b/test/ipc/unixsocket.cpp index 19a1d7dd8a2d..80157b342795 100644 --- a/test/ipc/unixsocket.cpp +++ b/test/ipc/unixsocket.cpp @@ -6,6 +6,7 @@ */ #include +#include #include #include #include @@ -19,7 +20,6 @@ #include "libcamera/internal/ipc_unixsocket.h" #include "libcamera/internal/thread.h" #include "libcamera/internal/timer.h" -#include "libcamera/internal/utils.h" #include "test.h" @@ -311,7 +311,7 @@ protected: }; int fds[2]; - for (unsigned int i = 0; i < ARRAY_SIZE(strings); i++) { + for (unsigned int i = 0; i < std::size(strings); i++) { unsigned int len = strlen(strings[i]); fds[i] = open("/tmp", O_TMPFILE | O_RDWR, @@ -333,7 +333,7 @@ protected: if (ret) return ret; - for (unsigned int i = 0; i < ARRAY_SIZE(strings); i++) { + for (unsigned int i = 0; i < std::size(strings); i++) { unsigned int len = strlen(strings[i]); char buf[len];