[libcamera-devel] [PATCH 0/7] libcamera: yaml_parser: Add iterator API

Laurent Pinchart laurent.pinchart at ideasonboard.com
Thu Jun 16 16:23:56 CEST 2022


Hello,

This patch series adds an iterator API. It is a subset of the previously
posted "[RFC PATCH v2 00/14] Replace boost JSON parser with libyaml in
Raspberry Pi IPA" series.

I have dropped the part that touches the Raspberry Pi IPA due to the
ongoing discussions about YAML mapping ordering. This series is closer
to RFC v1 than RFC v2 (with a small additional drive-by cleanup in patch
1/7), and introduces an unordered iterator API (patches 2/7 and 3/7).
This is already useful to use the iterators in the Android HAL (patch
4/7), but more importantly, this will be useful for the ongoing work on
the RkISP1 IPA. Patches 6/7 and 7/7 are meants to support that use case.

I will post a separate series that then moves the implementation to
preserve the order (without any change to the API), and move the
Raspberry Pi IPA from boost to YamlParser.

Laurent Pinchart (7):
  libcamera: yaml_parser: Use std::is_same_v<>
  libcamera: yaml_parser: Add iterator API
  test: yaml_parser: Extend tests to cover the iterator API
  android: Use the YamlObject iterator API
  libcamera: yaml_parser: Remove memberNames() function
  libcamera: yaml_parser: Fix range checks for 32-bit integers
  libcamera: yaml_parser: Add get() specializations for 16-bit integers

 include/libcamera/internal/yaml_parser.h | 132 ++++++++++++++++++++--
 src/android/camera_hal_config.cpp        |   6 +-
 src/libcamera/yaml_parser.cpp            | 135 ++++++++++++++++++-----
 test/yaml-parser.cpp                     |  99 +++++++++++++----
 4 files changed, 309 insertions(+), 63 deletions(-)


base-commit: 71bdc1e441eba73ad80272573503445648d5ea9c
-- 
Regards,

Laurent Pinchart



More information about the libcamera-devel mailing list