summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorNiklas Söderlund <niklas.soderlund@ragnatech.se>2020-03-26 14:28:56 +0100
committerNiklas Söderlund <niklas.soderlund@ragnatech.se>2020-04-14 00:28:28 +0200
commit0e577cee9def15d95ad5bd7fce3815a46dad8e81 (patch)
treeb446bdda32f9b0fe63d21e27e6fa497615cc0ce4 /include
parent72278369b30af757c8ab756cc6c9cadcf15684d5 (diff)
ipa: Add start() and stop() operations
Add two new operations to the IPA interface to start and stop it. The intention is that these functions shall be used by the IPA to perform actions when the camera is started and stopped. Signed-off-by: Niklas Söderlund <niklas.soderlund@ragnatech.se> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Diffstat (limited to 'include')
-rw-r--r--include/ipa/ipa_interface.h4
-rw-r--r--include/ipa/ipa_vimc.h2
2 files changed, 6 insertions, 0 deletions
diff --git a/include/ipa/ipa_interface.h b/include/ipa/ipa_interface.h
index 229d1124..e65844bc 100644
--- a/include/ipa/ipa_interface.h
+++ b/include/ipa/ipa_interface.h
@@ -64,6 +64,8 @@ struct ipa_context_ops {
void (*destroy)(struct ipa_context *ctx);
void *(*get_interface)(struct ipa_context *ctx);
void (*init)(struct ipa_context *ctx);
+ int (*start)(struct ipa_context *ctx);
+ void (*stop)(struct ipa_context *ctx);
void (*register_callbacks)(struct ipa_context *ctx,
const struct ipa_callback_ops *callbacks,
void *cb_ctx);
@@ -120,6 +122,8 @@ public:
virtual ~IPAInterface() {}
virtual int init() = 0;
+ virtual int start() = 0;
+ virtual void stop() = 0;
virtual void configure(const std::map<unsigned int, IPAStream> &streamConfig,
const std::map<unsigned int, const ControlInfoMap &> &entityControls) = 0;
diff --git a/include/ipa/ipa_vimc.h b/include/ipa/ipa_vimc.h
index 9add122c..8e82dd94 100644
--- a/include/ipa/ipa_vimc.h
+++ b/include/ipa/ipa_vimc.h
@@ -15,6 +15,8 @@ namespace libcamera {
enum IPAOperationCode {
IPAOperationNone,
IPAOperationInit,
+ IPAOperationStart,
+ IPAOperationStop,
};
} /* namespace libcamera */