libcamera: pipeline_handler: Enable silent configuration file lookup
The PipelineHandler::configurationFile() function prints an error message when no configuration file is found. It can be useful for pipeline handlers to silence the lookup operation and handle errors themselves. Add a silent parameter to the function to enable this. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Tested-by: Julien Vuillaumier <julien.vuillaumier@nxp.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
parent
2ae7b2ff74
commit
31a7378c87
2 changed files with 10 additions and 5 deletions
|
@ -63,7 +63,8 @@ public:
|
|||
void cancelRequest(Request *request);
|
||||
|
||||
std::string configurationFile(const std::string &subdir,
|
||||
const std::string &name) const;
|
||||
const std::string &name,
|
||||
bool silent = false) const;
|
||||
|
||||
const char *name() const { return name_; }
|
||||
|
||||
|
|
|
@ -581,6 +581,7 @@ void PipelineHandler::cancelRequest(Request *request)
|
|||
* \brief Retrieve the absolute path to a platform configuration file
|
||||
* \param[in] subdir The pipeline handler specific subdirectory name
|
||||
* \param[in] name The configuration file name
|
||||
* \param[in] silent Disable error messages
|
||||
*
|
||||
* This function locates a named platform configuration file and returns
|
||||
* its absolute path to the pipeline handler. It searches the following
|
||||
|
@ -596,7 +597,8 @@ void PipelineHandler::cancelRequest(Request *request)
|
|||
* string if no configuration file can be found
|
||||
*/
|
||||
std::string PipelineHandler::configurationFile(const std::string &subdir,
|
||||
const std::string &name) const
|
||||
const std::string &name,
|
||||
bool silent) const
|
||||
{
|
||||
std::string confPath;
|
||||
struct stat statbuf;
|
||||
|
@ -626,9 +628,11 @@ std::string PipelineHandler::configurationFile(const std::string &subdir,
|
|||
if (ret == 0 && (statbuf.st_mode & S_IFMT) == S_IFREG)
|
||||
return confPath;
|
||||
|
||||
if (!silent)
|
||||
LOG(Pipeline, Error)
|
||||
<< "Configuration file '" << confPath
|
||||
<< "' not found for pipeline handler '" << PipelineHandler::name() << "'";
|
||||
<< "' not found for pipeline handler '"
|
||||
<< PipelineHandler::name() << "'";
|
||||
|
||||
return std::string();
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue