summaryrefslogtreecommitdiff
path: root/src/ipa
diff options
context:
space:
mode:
Diffstat (limited to 'src/ipa')
-rw-r--r--src/ipa/ipu3/ipu3.cpp2
-rw-r--r--src/ipa/libipa/camera_sensor_helper.cpp2
-rw-r--r--src/ipa/raspberrypi/cam_helper.cpp4
-rw-r--r--src/ipa/raspberrypi/cam_helper.hpp14
-rw-r--r--src/ipa/raspberrypi/controller/controller.hpp4
-rw-r--r--src/ipa/raspberrypi/controller/rpi/alsc.hpp2
-rw-r--r--src/ipa/raspberrypi/controller/rpi/sharpen.cpp2
-rw-r--r--src/ipa/raspberrypi/md_parser.hpp4
-rw-r--r--src/ipa/raspberrypi/raspberrypi.cpp2
9 files changed, 18 insertions, 18 deletions
diff --git a/src/ipa/ipu3/ipu3.cpp b/src/ipa/ipu3/ipu3.cpp
index 71698d36..9f6694ed 100644
--- a/src/ipa/ipu3/ipu3.cpp
+++ b/src/ipa/ipu3/ipu3.cpp
@@ -105,7 +105,7 @@ int IPAIPU3::start()
}
/**
- * This method calculates a grid for the AWB algorithm in the IPU3 firmware.
+ * This function calculates a grid for the AWB algorithm in the IPU3 firmware.
* Its input is the BDS output size calculated in the ImgU.
* It is limited for now to the simplest method: find the lesser error
* with the width/height and respective log2 width/height of the cells.
diff --git a/src/ipa/libipa/camera_sensor_helper.cpp b/src/ipa/libipa/camera_sensor_helper.cpp
index 37f5f8cd..0b0eb503 100644
--- a/src/ipa/libipa/camera_sensor_helper.cpp
+++ b/src/ipa/libipa/camera_sensor_helper.cpp
@@ -41,7 +41,7 @@ namespace ipa {
* \brief Construct a CameraSensorHelper instance
*
* CameraSensorHelper derived class instances shall never be constructed
- * manually but always through the CameraSensorHelperFactory::create() method.
+ * manually but always through the CameraSensorHelperFactory::create() function.
*/
/**
diff --git a/src/ipa/raspberrypi/cam_helper.cpp b/src/ipa/raspberrypi/cam_helper.cpp
index 8f64e014..74179399 100644
--- a/src/ipa/raspberrypi/cam_helper.cpp
+++ b/src/ipa/raspberrypi/cam_helper.cpp
@@ -117,7 +117,7 @@ void CamHelper::GetDelays(int &exposure_delay, int &gain_delay,
{
/*
* These values are correct for many sensors. Other sensors will
- * need to over-ride this method.
+ * need to over-ride this function.
*/
exposure_delay = 2;
gain_delay = 1;
@@ -133,7 +133,7 @@ double CamHelper::GetModeSensitivity([[maybe_unused]] const CameraMode &mode) co
{
/*
* Most sensors have the same sensitivity in every mode, but this
- * method can be overridden for those that do not. Note that it is
+ * function can be overridden for those that do not. Note that it is
* called before mode_ is set, so it must return the sensitivity
* of the mode that is passed in.
*/
diff --git a/src/ipa/raspberrypi/cam_helper.hpp b/src/ipa/raspberrypi/cam_helper.hpp
index 0643b77a..a776153f 100644
--- a/src/ipa/raspberrypi/cam_helper.hpp
+++ b/src/ipa/raspberrypi/cam_helper.hpp
@@ -34,25 +34,25 @@ namespace RPiController {
// exposure time, and to convert between the sensor's gain codes and actual
// gains.
//
-// A method to return the number of frames of delay between updating exposure,
+// A function to return the number of frames of delay between updating exposure,
// analogue gain and vblanking, and for the changes to take effect. For many
// sensors these take the values 2, 1 and 2 respectively, but sensors that are
-// different will need to over-ride the default method provided.
+// different will need to over-ride the default function provided.
//
-// A method to query if the sensor outputs embedded data that can be parsed.
+// A function to query if the sensor outputs embedded data that can be parsed.
//
-// A method to return the sensitivity of a given camera mode.
+// A function to return the sensitivity of a given camera mode.
//
// A parser to parse the embedded data buffers provided by some sensors (for
// example, the imx219 does; the ov5647 doesn't). This allows us to know for
// sure the exposure and gain of the frame we're looking at. CamHelper
-// provides methods for converting analogue gains to and from the sensor's
+// provides functions for converting analogue gains to and from the sensor's
// native gain codes.
//
-// Finally, a set of methods that determine how to handle the vagaries of
+// Finally, a set of functions that determine how to handle the vagaries of
// different camera modules on start-up or when switching modes. Some
// modules may produce one or more frames that are not yet correctly exposed,
-// or where the metadata may be suspect. We have the following methods:
+// or where the metadata may be suspect. We have the following functions:
// HideFramesStartup(): Tell the pipeline handler not to return this many
// frames at start-up. This can also be used to hide initial frames
// while the AGC and other algorithms are sorting themselves out.
diff --git a/src/ipa/raspberrypi/controller/controller.hpp b/src/ipa/raspberrypi/controller/controller.hpp
index 49b1a551..3b50ae77 100644
--- a/src/ipa/raspberrypi/controller/controller.hpp
+++ b/src/ipa/raspberrypi/controller/controller.hpp
@@ -27,8 +27,8 @@ typedef std::shared_ptr<bcm2835_isp_stats> StatisticsPtr;
// The Controller holds a pointer to some global_metadata, which is how
// different controllers and control algorithms within them can exchange
-// information. The Prepare method returns a pointer to metadata for this
-// specific image, and which should be passed on to the Process method.
+// information. The Prepare function returns a pointer to metadata for this
+// specific image, and which should be passed on to the Process function.
class Controller
{
diff --git a/src/ipa/raspberrypi/controller/rpi/alsc.hpp b/src/ipa/raspberrypi/controller/rpi/alsc.hpp
index 13d1ba54..9616b99e 100644
--- a/src/ipa/raspberrypi/controller/rpi/alsc.hpp
+++ b/src/ipa/raspberrypi/controller/rpi/alsc.hpp
@@ -82,7 +82,7 @@ private:
int frame_phase_;
// counts up to startup_frames
int frame_count_;
- // counts up to startup_frames for Process method
+ // counts up to startup_frames for Process function
int frame_count2_;
double sync_results_[3][ALSC_CELLS_Y][ALSC_CELLS_X];
double prev_sync_results_[3][ALSC_CELLS_Y][ALSC_CELLS_X];
diff --git a/src/ipa/raspberrypi/controller/rpi/sharpen.cpp b/src/ipa/raspberrypi/controller/rpi/sharpen.cpp
index b0c2e00a..18825a43 100644
--- a/src/ipa/raspberrypi/controller/rpi/sharpen.cpp
+++ b/src/ipa/raspberrypi/controller/rpi/sharpen.cpp
@@ -50,7 +50,7 @@ void Sharpen::Read(boost::property_tree::ptree const &params)
void Sharpen::SetStrength(double strength)
{
- // Note that this method is how an application sets the overall
+ // Note that this function is how an application sets the overall
// sharpening "strength". We call this the "user strength" field
// as there already is a strength_ field - being an internal gain
// parameter that gets passed to the ISP control code. Negative
diff --git a/src/ipa/raspberrypi/md_parser.hpp b/src/ipa/raspberrypi/md_parser.hpp
index e3e27385..d32d0f54 100644
--- a/src/ipa/raspberrypi/md_parser.hpp
+++ b/src/ipa/raspberrypi/md_parser.hpp
@@ -113,8 +113,8 @@ protected:
/*
* This isn't a full implementation of a metadata parser for SMIA sensors,
- * however, it does provide the findRegs method which will prove useful and make
- * it easier to implement parsers for other SMIA-like sensors (see
+ * however, it does provide the findRegs function which will prove useful and
+ * make it easier to implement parsers for other SMIA-like sensors (see
* md_parser_imx219.cpp for an example).
*/
diff --git a/src/ipa/raspberrypi/raspberrypi.cpp b/src/ipa/raspberrypi/raspberrypi.cpp
index 48e11c69..69d36b7d 100644
--- a/src/ipa/raspberrypi/raspberrypi.cpp
+++ b/src/ipa/raspberrypi/raspberrypi.cpp
@@ -741,7 +741,7 @@ void IPARPi::queueRequest(const ControlList &controls)
}
/*
- * The SetEv() method takes in a direct exposure multiplier.
+ * The SetEv() function takes in a direct exposure multiplier.
* So convert to 2^EV
*/
double ev = pow(2.0, ctrl.second.get<float>());
ra *camera, uint64_t cookie) : camera_(camera), sequence_(0), cookie_(cookie), status_(RequestPending), cancelled_(false) { /** * \todo Should the Camera expose a validator instance, to avoid * creating a new instance for each request? */ validator_ = new CameraControlValidator(camera); controls_ = new ControlList(controls::controls, validator_); /** * \todo: Add a validator for metadata controls. */ metadata_ = new ControlList(controls::controls); LIBCAMERA_TRACEPOINT(request_construct, this); LOG(Request, Debug) << "Created request - cookie: " << cookie_; } Request::~Request() { LIBCAMERA_TRACEPOINT(request_destroy, this); delete metadata_; delete controls_; delete validator_; } /** * \brief Reset the request for reuse * \param[in] flags Indicate whether or not to reuse the buffers * * Reset the status and controls associated with the request, to allow it to * be reused and requeued without destruction. This function shall be called * prior to queueing the request to the camera, in lieu of constructing a new * request. The application can reuse the buffers that were previously added * to the request via addBuffer() by setting \a flags to ReuseBuffers. */ void Request::reuse(ReuseFlag flags) { LIBCAMERA_TRACEPOINT(request_reuse, this); pending_.clear(); if (flags & ReuseBuffers) { for (auto pair : bufferMap_) { FrameBuffer *buffer = pair.second; buffer->_d()->setRequest(this); pending_.insert(buffer); } } else { bufferMap_.clear(); } sequence_ = 0; status_ = RequestPending; cancelled_ = false; controls_->clear(); metadata_->clear(); } /** * \fn Request::controls() * \brief Retrieve the request's ControlList * * Requests store a list of controls to be applied to all frames captured for * the request. They are created with an empty list of controls that can be * accessed through this function. Control values can be retrieved using * ControlList::get() and updated using ControlList::set(). * * Only controls supported by the camera to which this request will be * submitted shall be included in the controls list. Attempting to add an * unsupported control causes undefined behaviour. * * \return A reference to the ControlList in this request */ /** * \fn Request::buffers() * \brief Retrieve the request's streams to buffers map * * Return a reference to the map that associates each Stream part of the * request to the FrameBuffer the Stream output should be directed to. * * \return The map of Stream to FrameBuffer */ /** * \brief Add a FrameBuffer with its associated Stream to the Request * \param[in] stream The stream the buffer belongs to * \param[in] buffer The FrameBuffer to add to the request * * A reference to the buffer is stored in the request. The caller is responsible * for ensuring that the buffer will remain valid until the request complete * callback is called. * * A request can only contain one buffer per stream. If a buffer has already * been added to the request for the same stream, this function returns -EEXIST. * * \return 0 on success or a negative error code otherwise * \retval -EEXIST The request already contains a buffer for the stream * \retval -EINVAL The buffer does not reference a valid Stream */ int Request::addBuffer(const Stream *stream, FrameBuffer *buffer) { if (!stream) { LOG(Request, Error) << "Invalid stream reference"; return -EINVAL; } auto it = bufferMap_.find(stream); if (it != bufferMap_.end()) { LOG(Request, Error) << "FrameBuffer already set for stream"; return -EEXIST; } buffer->_d()->setRequest(this); pending_.insert(buffer); bufferMap_[stream] = buffer; return 0; } /** * \var Request::bufferMap_ * \brief Mapping of streams to buffers for this request * * The bufferMap_ tracks the buffers associated with each stream. If a stream is * not utilised in this request there will be no buffer for that stream in the * map. */ /** * \brief Return the buffer associated with a stream * \param[in] stream The stream the buffer is associated to * \return The buffer associated with the stream, or nullptr if the stream is * not part of this request */ FrameBuffer *Request::findBuffer(const Stream *stream) const { const auto it = bufferMap_.find(stream); if (it == bufferMap_.end()) return nullptr; return it->second; } /** * \fn Request::metadata() * \brief Retrieve the request's metadata * \todo Offer a read-only API towards applications while keeping a read/write * API internally. * \return The metadata associated with the request */ /** * \fn Request::sequence() * \brief Retrieve the sequence number for the request * * When requests are queued, they are given a sequential number to track the * order in which requests are queued to a camera. This number counts all * requests given to a camera through its lifetime, and is not reset to zero * between camera stop/start sequences. * * It can be used to support debugging and identifying the flow of requests * through a pipeline, but does not guarantee to represent the sequence number * of any images in the stream. The sequence number is stored as an unsigned * integer and will wrap when overflowed. * * \return The request sequence number */ /** * \fn Request::cookie() * \brief Retrieve the cookie set when the request was created * \return The request cookie */ /** * \fn Request::status() * \brief Retrieve the request completion status * * The request status indicates whether the request has completed successfully * or with an error. When requests are created and before they complete the * request status is set to RequestPending, and is updated at completion time * to RequestComplete. If a request is cancelled at capture stop before it has * completed, its status is set to RequestCancelled. * * \return The request completion status */ /** * \fn Request::hasPendingBuffers() * \brief Check if a request has buffers yet to be completed * * \return True if the request has buffers pending for completion, false * otherwise */ /** * \brief Complete a queued request * * Mark the request as complete by updating its status to RequestComplete, * unless buffers have been cancelled in which case the status is set to * RequestCancelled. */ void Request::complete() { ASSERT(status_ == RequestPending); ASSERT(!hasPendingBuffers()); status_ = cancelled_ ? RequestCancelled : RequestComplete; LOG(Request, Debug) << toString(); LIBCAMERA_TRACEPOINT(request_complete, this); } /** * \brief Cancel a queued request * * Mark the request and its associated buffers as cancelled and complete it. * * Set each pending buffer in error state and emit the buffer completion signal * before completing the Request. */ void Request::cancel() { LIBCAMERA_TRACEPOINT(request_cancel, this); ASSERT(status_ == RequestPending); for (FrameBuffer *buffer : pending_) { buffer->cancel(); camera_->bufferCompleted.emit(this, buffer); } pending_.clear(); cancelled_ = true; } /** * \brief Complete a buffer for the request * \param[in] buffer The buffer that has completed * * A request tracks the status of all buffers it contains through a set of * pending buffers. This function removes the \a buffer from the set to mark it * as complete. All buffers associate with the request shall be marked as * complete by calling this function once and once only before reporting the * request as complete with the complete() function. * * \return True if all buffers contained in the request have completed, false * otherwise */ bool Request::completeBuffer(FrameBuffer *buffer) { LIBCAMERA_TRACEPOINT(request_complete_buffer, this, buffer); int ret = pending_.erase(buffer); ASSERT(ret == 1); buffer->_d()->setRequest(nullptr); if (buffer->metadata().status == FrameMetadata::FrameCancelled) cancelled_ = true; return !hasPendingBuffers(); } /** * \brief Generate a string representation of the Request internals * * This function facilitates debugging of Request state while it is used * internally within libcamera. * * \return A string representing the current state of the request */ std::string Request::toString() const { std::stringstream ss; /* Pending, Completed, Cancelled(X). */ static const char *statuses = "PCX"; /* Example Output: Request(55:P:1/2:6523524) */ ss << "Request(" << sequence_ << ":" << statuses[status_] << ":" << pending_.size() << "/" << bufferMap_.size() << ":" << cookie_ << ")"; return ss.str(); } } /* namespace libcamera */