/
Alx89
/
OpenCV
Обзор
Документация
Войти
/
Alx89
/
OpenCV
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
4.x
modules/core/src/utils/plugin_loader.impl.hpp
80 строк
2 KB
Namgoo Lee
remove const from functions returning by value
26 май 2022, 15:30
26 май 2022, 15:30
24547f4
Код
Авторство
О чём код?
// This file is part of OpenCV project. // It is subject to the license terms in the LICENSE file found in the top-level directory // of this distribution and at http://opencv.org/license.html. // // Not a standalone header, part of filesystem.cpp // #include "opencv2/core/utils/plugin_loader.private.hpp" #if !OPENCV_HAVE_FILESYSTEM_SUPPORT #error "Invalid build configuration" #endif #if 0 // TODO #ifdef NDEBUG #define CV_LOG_STRIP_LEVEL CV_LOG_LEVEL_DEBUG + 1 #else #define CV_LOG_STRIP_LEVEL CV_LOG_LEVEL_VERBOSE + 1 #endif #include <opencv2/core/utils/logger.hpp> #endif namespace cv { namespace plugin { namespace impl { DynamicLib::DynamicLib(const FileSystemPath_t& filename) : handle(0), fname(filename), disableAutoUnloading_(false) { libraryLoad(filename); } DynamicLib::~DynamicLib() { if (!disableAutoUnloading_) { libraryRelease(); } else if (handle) { CV_LOG_INFO(NULL, "skip auto unloading (disabled): " << toPrintablePath(fname)); handle = 0; } } void* DynamicLib::getSymbol(const char* symbolName) const { if (!handle) { return 0; } void* res = getSymbol_(handle, symbolName); if (!res) { CV_LOG_DEBUG(NULL, "No symbol '" << symbolName << "' in " << toPrintablePath(fname)); } return res; } std::string DynamicLib::getName() const { return toPrintablePath(fname); } void DynamicLib::libraryLoad(const FileSystemPath_t& filename) { handle = libraryLoad_(filename); CV_LOG_INFO(NULL, "load " << toPrintablePath(filename) << " => " << (handle ? "OK" : "FAILED")); } void DynamicLib::libraryRelease() { if (handle) { CV_LOG_INFO(NULL, "unload "<< toPrintablePath(fname)); libraryRelease_(handle); handle = 0; } } }}} // namespace