Show a cover letter.

GET /api/covers/1318/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 1318,
    "url": "https://patchwork.libcamera.org/api/covers/1318/?format=api",
    "web_url": "https://patchwork.libcamera.org/cover/1318/",
    "project": {
        "id": 1,
        "url": "https://patchwork.libcamera.org/api/projects/1/?format=api",
        "name": "libcamera",
        "link_name": "libcamera",
        "list_id": "libcamera_core",
        "list_email": "libcamera-devel@lists.libcamera.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": ""
    },
    "msgid": "<20190527223540.21855-1-paul.elder@ideasonboard.com>",
    "date": "2019-05-27T22:35:32",
    "name": "[libcamera-devel,0/8] Add IPAManager and IPAInterface",
    "submitter": {
        "id": 17,
        "url": "https://patchwork.libcamera.org/api/people/17/?format=api",
        "name": "Paul Elder",
        "email": "paul.elder@ideasonboard.com"
    },
    "mbox": "https://patchwork.libcamera.org/cover/1318/mbox/",
    "series": [
        {
            "id": 330,
            "url": "https://patchwork.libcamera.org/api/series/330/?format=api",
            "web_url": "https://patchwork.libcamera.org/project/libcamera/list/?series=330",
            "date": "2019-05-27T22:35:32",
            "name": "Add IPAManager and IPAInterface",
            "version": 1,
            "mbox": "https://patchwork.libcamera.org/series/330/mbox/"
        }
    ],
    "comments": "https://patchwork.libcamera.org/api/covers/1318/comments/",
    "headers": {
        "Return-Path": "<paul.elder@ideasonboard.com>",
        "Received": [
            "from perceval.ideasonboard.com (perceval.ideasonboard.com\n\t[213.167.242.64])\n\tby lancelot.ideasonboard.com (Postfix) with ESMTPS id AF0E460E9A\n\tfor <libcamera-devel@lists.libcamera.org>;\n\tTue, 28 May 2019 00:35:47 +0200 (CEST)",
            "from localhost.localdomain (unknown [96.44.9.117])\n\tby perceval.ideasonboard.com (Postfix) with ESMTPSA id D796CD85;\n\tTue, 28 May 2019 00:35:46 +0200 (CEST)"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=ideasonboard.com;\n\ts=mail; t=1558996547;\n\tbh=yOf3PXRtqMCJnxVprJ3DiabZs3uYoMIM7D5/S4apddc=;\n\th=From:To:Cc:Subject:Date:From;\n\tb=DpZ6drJ0b+GdxnQbo6JHTyGUy5w//hKv9sShFaISHeAYb6Sa3zFIMOFcuoPRPBHjD\n\tTHU5amfBerTB75TE8QRxvB4RU2Wk1z99TpZeNiO9K6J6zKhmw28KP6PUwXljG1r7bI\n\tZKqR+lS9awylSfRGMCpRqiij2ls/9eHnNmKybJhY=",
        "From": "Paul Elder <paul.elder@ideasonboard.com>",
        "To": "libcamera-devel@lists.libcamera.org",
        "Date": "Mon, 27 May 2019 18:35:32 -0400",
        "Message-Id": "<20190527223540.21855-1-paul.elder@ideasonboard.com>",
        "X-Mailer": "git-send-email 2.20.1",
        "MIME-Version": "1.0",
        "Content-Transfer-Encoding": "8bit",
        "Subject": "[libcamera-devel]  [PATCH 0/8] Add IPAManager and IPAInterface",
        "X-BeenThere": "libcamera-devel@lists.libcamera.org",
        "X-Mailman-Version": "2.1.23",
        "Precedence": "list",
        "List-Id": "<libcamera-devel.lists.libcamera.org>",
        "List-Unsubscribe": "<https://lists.libcamera.org/options/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=unsubscribe>",
        "List-Archive": "<https://lists.libcamera.org/pipermail/libcamera-devel/>",
        "List-Post": "<mailto:libcamera-devel@lists.libcamera.org>",
        "List-Help": "<mailto:libcamera-devel-request@lists.libcamera.org?subject=help>",
        "List-Subscribe": "<https://lists.libcamera.org/listinfo/libcamera-devel>,\n\t<mailto:libcamera-devel-request@lists.libcamera.org?subject=subscribe>",
        "X-List-Received-Date": "Mon, 27 May 2019 22:35:47 -0000"
    },
    "content": "Pipeline handlers need a way to acquire an IPA module. To achieve this,\nwe use an IPA manager, that loads many IPA modules, after which a\npipeline handler can ask the IPA manager for an IPA module that matches\nit. Each IPA can only be used with one pipeline handler, but a pipeline\nhandler may work with many IPAs (not simultaneously).\nThe pipeline handlers also need names and versions (previously only the\nfactory had a name) to be matched with an IPA module.\n\nEach IPA module, in a shared object, implements an IPAInterface class,\nwhich defines the interface between a pipeline hander and an IPA\nimplementation, hence the name.\n\nPaul Elder (8):\n  libcamera: ipa_interface: add header\n  libcamera: pipeline: add name, major version, and minor version\n  libcamera: ipa_module_info: update struct to allow IPA matching\n  libcamera: ipa_module: allow instantiation of IPAInterface\n  libcamera: ipa_manager: implement class for managing IPA modules\n  libcamera: ipa: add dummy IPA implementation\n  libcamera: test: remove test IPA and use dummy IPA instead\n  libcamera: pipeline: vimc: add dummy IPA\n\n Documentation/Doxyfile.in                |   7 +-\n include/libcamera/ipa/ipa_interface.h    |  22 ++++\n include/libcamera/ipa/ipa_module_info.h  |  11 +-\n include/libcamera/meson.build            |   1 +\n src/ipa/ipa_dummy.cpp                    |  38 +++++++\n src/ipa/meson.build                      |  10 ++\n src/libcamera/include/ipa_manager.h      |  40 +++++++\n src/libcamera/include/ipa_module.h       |  15 ++-\n src/libcamera/include/pipeline_handler.h |  20 +++-\n src/libcamera/ipa_interface.cpp          |  27 +++++\n src/libcamera/ipa_manager.cpp            | 129 +++++++++++++++++++++++\n src/libcamera/ipa_module.cpp             | 128 ++++++++++++++++++++--\n src/libcamera/meson.build                |   6 +-\n src/libcamera/pipeline/ipu3/ipu3.cpp     |   6 +-\n src/libcamera/pipeline/rkisp1/rkisp1.cpp |   6 +-\n src/libcamera/pipeline/uvcvideo.cpp      |   6 +-\n src/libcamera/pipeline/vimc.cpp          |  16 ++-\n src/libcamera/pipeline_handler.cpp       |  20 ++++\n src/meson.build                          |   1 +\n test/ipa/ipa_test.cpp                    |  51 ++++++---\n test/ipa/meson.build                     |  11 --\n test/ipa/shared_test.c                   |   6 --\n test/ipa/shared_test.cpp                 |   4 +-\n 23 files changed, 527 insertions(+), 54 deletions(-)\n create mode 100644 include/libcamera/ipa/ipa_interface.h\n create mode 100644 src/ipa/ipa_dummy.cpp\n create mode 100644 src/ipa/meson.build\n create mode 100644 src/libcamera/include/ipa_manager.h\n create mode 100644 src/libcamera/ipa_interface.cpp\n create mode 100644 src/libcamera/ipa_manager.cpp\n delete mode 100644 test/ipa/shared_test.c"
}