1 /* 2 * This file is part of FFmpeg. 3 * 4 * FFmpeg is free software; you can redistribute it and/or 5 * modify it under the terms of the GNU Lesser General Public 6 * License as published by the Free Software Foundation; either 7 * version 2.1 of the License, or (at your option) any later version. 8 * 9 * FFmpeg is distributed in the hope that it will be useful, 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 * Lesser General Public License for more details. 13 * 14 * You should have received a copy of the GNU Lesser General Public 15 * License along with FFmpeg; if not, write to the Free Software 16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA 17 */ 18 19 #ifndef COMPAT_CUDA_DYNLINK_LOADER_H 20 #define COMPAT_CUDA_DYNLINK_LOADER_H 21 22 #include "libavutil/log.h" 23 #include "compat/w32dlfcn.h" 24 25 #define FFNV_LOAD_FUNC(path) dlopen((path), RTLD_LAZY) 26 #define FFNV_SYM_FUNC(lib, sym) dlsym((lib), (sym)) 27 #define FFNV_FREE_FUNC(lib) dlclose(lib) 28 #define FFNV_LOG_FUNC(logctx, msg, ...) av_log(logctx, AV_LOG_ERROR, msg, __VA_ARGS__) 29 #define FFNV_DEBUG_LOG_FUNC(logctx, msg, ...) av_log(logctx, AV_LOG_DEBUG, msg, __VA_ARGS__) 30 31 #include <ffnvcodec/dynlink_loader.h> 32 33 #endif /* COMPAT_CUDA_DYNLINK_LOADER_H */ 34