summaryrefslogtreecommitdiff
path: root/src/ipa/rpi/controller/alsc_status.h
blob: 329e8a377dab8ef42434f5066e78cd310cc53c26 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
/* SPDX-License-Identifier: BSD-2-Clause */
/*
 * Copyright (C) 2019, Raspberry Pi Ltd
 *
 * ALSC (auto lens shading correction) control algorithm status
 */
#pragma once

#include <vector>

/*
 * The ALSC algorithm should post the following structure into the image's
 * "alsc.status" metadata.
 */

struct AlscStatus {
	std::vector<double> r;
	std::vector<double> g;
	std::vector<double> b;
	unsigned int rows;
	unsigned int cols;
};
7 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
/* SPDX-License-Identifier: LGPL-2.1-or-later */
/*
 * Copyright (C) 2019, Google Inc.
 *
 * geometry.cpp - Geometry-related structures
 */

#include "geometry.h"

/**
 * \file geometry.h
 * \brief Data structures related to geometric objects
 */

namespace libcamera {

/**
 * \struct Rectangle
 * \brief Describe a rectangle's position and dimensions
 *
 * Rectangles are used to identify an area of an image. They are specified by
 * the coordinates of top-left corner and their horizontal and vertical size.
 *
 * The measure unit of the rectangle coordinates and size, as well as the
 * reference point from which the Rectangle::x and Rectangle::y displacements
 * refers to, are defined by the context were rectangle is used.
 */

/**
 * \var Rectangle::x
 * \brief The horizontal coordinate of the rectangle's top-left corner
 */

/**
 * \var Rectangle::y
 * \brief The vertical coordinate of the rectangle's top-left corner
 */

/**
 * \var Rectangle::w
 * \brief The distance between the left and right sides
 */

/**
 * \var Rectangle::h
 * \brief The distance between the top and bottom sides
 */

/**
 * \struct SizeRange
 * \brief Describe a range of image sizes
 *
 * SizeRange describes a range of image sizes included in the (minWidth,
 * minHeight) - (maxWidth, maxHeight) interval. If the minimum and
 * maximum sizes are identical it represents a single image resolution.
 */

/**
 * \fn SizeRange::SizeRange()
 * \brief Construct a size range
 */

/**
 * \var SizeRange::minWidth
 * \brief The minimum image width
 */

/**
 * \var SizeRange::minHeight
 * \brief The minimum image height
 */

/**
 * \var SizeRange::maxWidth
 * \brief The maximum image width
 */

/**
 * \var SizeRange::maxHeight
 * \brief The maximum image height
 */

} /* namespace libcamera */