libcamera v0.1.0+127-8e215127-dirty (2023-12-02T01:06:12+00:00)
Supporting cameras in Linux since 2019
ipa_proxy.h
Go to the documentation of this file.
1/* SPDX-License-Identifier: LGPL-2.1-or-later */
2/*
3 * Copyright (C) 2019, Google Inc.
4 *
5 * ipa_proxy.h - Image Processing Algorithm proxy
6 */
7
8#pragma once
9
10#include <memory>
11#include <string>
12#include <vector>
13
15
16namespace libcamera {
17
18class IPAModule;
19
20class IPAProxy : public IPAInterface
21{
22public:
27 };
28
29 IPAProxy(IPAModule *ipam);
30 ~IPAProxy();
31
32 bool isValid() const { return valid_; }
33
34 std::string configurationFile(const std::string &file) const;
35
36protected:
37 std::string resolvePath(const std::string &file) const;
38
39 bool valid_;
41
42private:
43 IPAModule *ipam_;
44};
45
46} /* namespace libcamera */
C++ Interface for IPA implementation.
Definition: ipa_interface.h:31
Wrapper around IPA module shared object.
Definition: ipa_module.h:24
IPA Proxy.
Definition: ipa_proxy.h:21
IPAProxy(IPAModule *ipam)
Construct an IPAProxy instance.
Definition: ipa_proxy.cpp:53
bool valid_
Flag to indicate if the IPAProxy instance is valid.
Definition: ipa_proxy.h:39
std::string resolvePath(const std::string &file) const
Find a valid full path for a proxy worker for a given executable name.
Definition: ipa_proxy.cpp:170
std::string configurationFile(const std::string &file) const
Retrieve the absolute path to an IPA configuration file.
Definition: ipa_proxy.cpp:95
ProxyState state_
Current state of the IPAProxy.
Definition: ipa_proxy.h:40
ProxyState
Identifies the available operational states of the proxy.
Definition: ipa_proxy.h:23
@ ProxyRunning
The Proxy is active and asynchronous tasks may be queued.
Definition: ipa_proxy.h:26
@ ProxyStopping
No new tasks can be submitted to the proxy, however existing events can be completed.
Definition: ipa_proxy.h:25
@ ProxyStopped
The proxy is not active and only synchronous operations are permitted.
Definition: ipa_proxy.h:24
bool isValid() const
Check if the IPAProxy instance is valid.
Definition: ipa_proxy.h:32
Image Processing Algorithm interface.
Top-level libcamera namespace.
Definition: backtrace.h:17