7 #ifndef __LIBCAMERA_INTERNAL_IPA_PROXY_H__ 8 #define __LIBCAMERA_INTERNAL_IPA_PROXY_H__ 31 std::string
resolvePath(
const std::string &file)
const;
45 virtual std::unique_ptr<IPAProxy> create(
IPAModule *ipam) = 0;
47 const std::string &
name()
const {
return name_; }
50 static std::vector<IPAProxyFactory *> &factories();
56 #define REGISTER_IPA_PROXY(proxy) \ 57 class proxy##Factory final : public IPAProxyFactory \ 60 proxy##Factory() : IPAProxyFactory(#proxy) {} \ 61 std::unique_ptr<IPAProxy> create(IPAModule *ipam) \ 63 return std::make_unique<proxy>(ipam); \ 66 static proxy##Factory global_##proxy##Factory; C++ Interface for IPA implementation.
Definition: ipa_interface.h:150
Image Processing Algorithm interface.
Definition: bound_method.h:15
IPAProxy(IPAModule *ipam)
Construct an IPAProxy instance.
Definition: ipa_proxy.cpp:45
bool isValid() const
Check if the IPAProxy instance is valid.
Definition: ipa_proxy.h:26
const std::string & name() const
Retrieve the factory name.
Definition: ipa_proxy.h:47
Wrapper around IPA module shared object.
Definition: ipa_module.h:22
bool valid_
Flag to indicate if the IPAProxy instance is valid.
Definition: ipa_proxy.h:33
Registration of IPAProxy classes and creation of instances.
Definition: ipa_proxy.h:39
IPA Proxy.
Definition: ipa_proxy.h:20
std::string configurationFile(const std::string &file) const
Retrieve the absolute path to an IPA configuration file.
Definition: ipa_proxy.cpp:87
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:162