libcamera/include/libcamera/ipa/ipa_module_info.h
Paul Elder 677e8e1dfe libcamera: ipa_module_info: update struct to allow IPA matching
We need a way to match pipelines with IPA modules, so add fields in
IPAModuleInfo to hold the IPA module API version number, the pipeline
name, and the pipeline version.

The module API version is used to determine the layout of struct
IPAModuleInfo.

Also update IPA module tests and Doxygen accordingly. Doxygen needs to
be updated to accomodate __attribute__((packed)).

Signed-off-by: Paul Elder <paul.elder@ideasonboard.com>
Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2019-06-05 10:44:51 -04:00

37 lines
710 B
C++

/* SPDX-License-Identifier: LGPL-2.1-or-later */
/*
* Copyright (C) 2019, Google Inc.
*
* ipa_module_info.h - Image Processing Algorithm module information
*/
#ifndef __LIBCAMERA_IPA_MODULE_INFO_H__
#define __LIBCAMERA_IPA_MODULE_INFO_H__
#include <stdint.h>
#define IPA_MODULE_API_VERSION 1
#ifdef __cplusplus
namespace libcamera {
#endif
struct IPAModuleInfo {
int moduleAPIVersion;
uint32_t pipelineVersion;
char pipelineName[256];
char name[256];
} __attribute__((packed));
#ifdef __cplusplus
extern "C" {
#endif
extern const struct IPAModuleInfo ipaModuleInfo;
#ifdef __cplusplus
};
#endif
#ifdef __cplusplus
}; /* namespace libcamera */
#endif
#endif /* __LIBCAMERA_IPA_MODULE_INFO_H__ */