diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2019-04-18 18:32:32 +0300 |
---|---|---|
committer | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2019-04-19 13:38:14 +0300 |
commit | 0af0fb9ca9eae903cc533a05e2282ec36cc3ce55 (patch) | |
tree | 77b34c0012dbb70722a2e6217787317234e5593d | |
parent | 8cf52e378d60cbd255a20eb51827e17814264073 (diff) |
libcamera: stream: Add and use toString() method to StreamConfiguration
Add a toString() method to the StreamConfiguration class, and replace
all manually coded implementations through the source code.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Jacopo Mondi <jacopo@jmondi.org>
-rw-r--r-- | include/libcamera/stream.h | 4 | ||||
-rw-r--r-- | src/libcamera/camera.cpp | 4 | ||||
-rw-r--r-- | src/libcamera/pipeline/ipu3/ipu3.cpp | 5 | ||||
-rw-r--r-- | src/libcamera/pipeline/rkisp1/rkisp1.cpp | 10 | ||||
-rw-r--r-- | src/libcamera/stream.cpp | 19 |
5 files changed, 27 insertions, 15 deletions
diff --git a/include/libcamera/stream.h b/include/libcamera/stream.h index 8a47930f..3caaefc9 100644 --- a/include/libcamera/stream.h +++ b/include/libcamera/stream.h @@ -7,6 +7,8 @@ #ifndef __LIBCAMERA_STREAM_H__ #define __LIBCAMERA_STREAM_H__ +#include <string> + #include <libcamera/buffer.h> #include <libcamera/geometry.h> @@ -20,6 +22,8 @@ struct StreamConfiguration { unsigned int pixelFormat; unsigned int bufferCount; + + std::string toString() const; }; class StreamUsage diff --git a/src/libcamera/camera.cpp b/src/libcamera/camera.cpp index 69406b51..a5276962 100644 --- a/src/libcamera/camera.cpp +++ b/src/libcamera/camera.cpp @@ -596,9 +596,7 @@ int Camera::configureStreams(const CameraConfiguration &config) return -EINVAL; const StreamConfiguration &cfg = config[stream]; - msg << " (" << index << ") " << cfg.width << "x" - << cfg.height << "-0x" << std::hex << std::setfill('0') - << std::setw(8) << cfg.pixelFormat; + msg << " (" << index << ") " << cfg.toString(); index++; } diff --git a/src/libcamera/pipeline/ipu3/ipu3.cpp b/src/libcamera/pipeline/ipu3/ipu3.cpp index 405d6548..7443224d 100644 --- a/src/libcamera/pipeline/ipu3/ipu3.cpp +++ b/src/libcamera/pipeline/ipu3/ipu3.cpp @@ -224,10 +224,7 @@ PipelineHandlerIPU3::streamConfiguration(Camera *camera, config->pixelFormat = V4L2_PIX_FMT_NV12; config->bufferCount = IPU3_BUFFER_COUNT; - LOG(IPU3, Debug) - << "Stream format set to " << config->width << "x" - << config->height << "-0x" << std::hex << std::setfill('0') - << std::setw(8) << config->pixelFormat; + LOG(IPU3, Debug) << "Stream format set to " << config->toString(); return configs; } diff --git a/src/libcamera/pipeline/rkisp1/rkisp1.cpp b/src/libcamera/pipeline/rkisp1/rkisp1.cpp index 51f00fb6..d21c6266 100644 --- a/src/libcamera/pipeline/rkisp1/rkisp1.cpp +++ b/src/libcamera/pipeline/rkisp1/rkisp1.cpp @@ -124,10 +124,7 @@ CameraConfiguration PipelineHandlerRkISP1::streamConfiguration(Camera *camera, configs[&data->stream_] = config; - LOG(RkISP1, Debug) - << "Stream format set to " << config.width << "x" - << config.height << "-0x" << std::hex << std::setfill('0') - << std::setw(8) << config.pixelFormat; + LOG(RkISP1, Debug) << "Stream format set to " << config.toString(); return configs; } @@ -234,10 +231,7 @@ int PipelineHandlerRkISP1::configureStreams(Camera *camera, outputFormat.height != cfg.height || outputFormat.fourcc != cfg.pixelFormat) { LOG(RkISP1, Error) - << "Unable to configure capture in " << cfg.width - << "x" << cfg.height << "-0x" - << std::hex << std::setfill('0') << std::setw(8) - << cfg.pixelFormat; + << "Unable to configure capture in " << cfg.toString(); return -EINVAL; } diff --git a/src/libcamera/stream.cpp b/src/libcamera/stream.cpp index d4ef506c..1668b67d 100644 --- a/src/libcamera/stream.cpp +++ b/src/libcamera/stream.cpp @@ -5,6 +5,9 @@ * stream.cpp - Video stream for a Camera */ +#include <iomanip> +#include <sstream> + #include <libcamera/stream.h> /** @@ -61,6 +64,22 @@ namespace libcamera { */ /** + * \brief Assemble and return a string describing the configuration + * + * \return A string describing the StreamConfiguration + */ +std::string StreamConfiguration::toString() const +{ + std::stringstream ss; + + ss.fill(0); + ss << width << "x" << height << "-0x" << std::hex + << std::setw(8) << pixelFormat; + + return ss.str(); +} + +/** * \class StreamUsage * \brief Stream usage information * |