From f59c3ad0982cae3d0212f280b2a0b78ecefd2246 Mon Sep 17 00:00:00 2001 From: Samuel Audet Date: Tue, 9 May 2023 18:28:09 +0900 Subject: [PATCH] * Upgrade presets for NumPy 1.24.3, LibRaw 0.21.1, cuDNN 8.9.1, NCCL 2.18.1, PyTorch 2.0.1, TensorRT 8.6.1.6, Triton Inference Server 2.33.0 --- .github/actions/deploy-centos/action.yml | 17 +- .github/actions/deploy-ubuntu/action.yml | 16 +- .github/actions/deploy-windows/action.yml | 12 +- .github/workflows/tritonserver.yml | 2 +- CHANGELOG.md | 4 +- README.md | 8 +- cuda/README.md | 4 +- .../java/org/bytedeco/cuda/global/nccl.java | 20 +- .../org/bytedeco/cuda/nccl/ncclConfig_t.java | 1 + .../org/bytedeco/cuda/presets/cusparse.java | 4 +- libraw/README.md | 4 +- libraw/cppbuild.sh | 2 +- libraw/platform/pom.xml | 2 +- libraw/pom.xml | 2 +- libraw/samples/pom.xml | 2 +- .../gen/java/org/bytedeco/libraw/LibRaw.java | 20 +- .../libraw/LibRaw_abstract_datastream.java | 3 +- .../libraw/LibRaw_bigfile_datastream.java | 3 +- .../libraw/LibRaw_buffer_datastream.java | 14 +- .../libraw/LibRaw_file_datastream.java | 45 -- .../libraw/fuji_compressed_params.java | 10 +- .../org/bytedeco/libraw/fuji_q_table.java | 38 ++ .../org/bytedeco/libraw/global/LibRaw.java | 401 ++++++++++++++---- .../bytedeco/libraw/libraw_afinfo_item_t.java | 37 ++ .../org/bytedeco/libraw/libraw_area_t.java | 36 ++ .../bytedeco/libraw/libraw_callbacks_t.java | 3 - .../libraw/libraw_canon_makernotes_t.java | 59 +-- .../bytedeco/libraw/libraw_colordata_t.java | 24 +- .../org/bytedeco/libraw/libraw_data_t.java | 2 + .../bytedeco/libraw/libraw_dng_levels_t.java | 6 +- .../bytedeco/libraw/libraw_fuji_info_t.java | 30 +- .../bytedeco/libraw/libraw_image_sizes_t.java | 4 +- .../bytedeco/libraw/libraw_makernotes_t.java | 1 + .../libraw/libraw_metadata_common_t.java | 4 + .../libraw/libraw_nikon_makernotes_t.java | 40 +- .../libraw/libraw_olympus_makernotes_t.java | 26 +- .../libraw/libraw_output_params_t.java | 19 +- .../libraw/libraw_panasonic_makernotes_t.java | 4 + .../libraw/libraw_pentax_makernotes_t.java | 16 +- .../libraw/libraw_raw_inset_crop_t.java | 1 - .../libraw/libraw_raw_unpack_params_t.java | 48 +++ .../libraw/libraw_ricoh_makernotes_t.java | 50 +++ .../bytedeco/libraw/libraw_sony_info_t.java | 72 +++- .../libraw/libraw_thumbnail_item_t.java | 39 ++ .../libraw/libraw_thumbnail_list_t.java | 35 ++ .../gen/java/org/bytedeco/libraw/ph1_t.java | 2 +- .../org/bytedeco/libraw/presets/LibRaw.java | 23 +- numpy/README.md | 4 +- numpy/cppbuild.sh | 2 +- numpy/platform/pom.xml | 2 +- numpy/pom.xml | 2 +- numpy/samples/pom.xml | 2 +- opencv/README.md | 2 +- opencv/pom.xml | 4 +- opencv/samples/pom.xml | 2 +- platform/pom.xml | 8 +- pytorch/README.md | 6 +- pytorch/cppbuild.sh | 2 +- pytorch/platform/gpu/pom.xml | 4 +- pytorch/platform/pom.xml | 4 +- pytorch/pom.xml | 6 +- pytorch/samples/pom.xml | 4 +- .../org/bytedeco/pytorch/presets/torch.java | 6 +- scipy/cppbuild.sh | 2 +- scipy/platform/pom.xml | 2 +- scipy/pom.xml | 6 +- tensorrt/README.md | 2 +- .../org/bytedeco/tensorrt/global/nvinfer.java | 15 +- .../tensorrt/global/nvonnxparser.java | 85 +++- .../tensorrt/nvinfer/ICudaEngine.java | 137 +++++- .../tensorrt/nvinfer/IPluginRegistry.java | 122 +++--- .../tensorrt/nvinfer/IPluginV2DynamicExt.java | 6 +- .../tensorrt/nvinfer/IPluginV2IOExt.java | 2 +- .../tensorrt/nvinfer/VCudaEngine.java | 11 + .../tensorrt/nvonnxparser/IParser.java | 352 ++++++++++----- .../tensorrt/nvonnxparser/IParserError.java | 54 ++- .../bytedeco/tensorrt/presets/nvinfer.java | 4 +- .../tensorrt/presets/nvonnxparser.java | 2 +- tritonserver/README.md | 10 +- tritonserver/platform/pom.xml | 2 +- tritonserver/platform/redist/pom.xml | 2 +- tritonserver/pom.xml | 2 +- tritonserver/samples/simple/pom.xml | 2 +- tritonserver/samples/unsupported/pom.xml | 2 +- 84 files changed, 1503 insertions(+), 594 deletions(-) delete mode 100644 libraw/src/gen/java/org/bytedeco/libraw/LibRaw_file_datastream.java create mode 100644 libraw/src/gen/java/org/bytedeco/libraw/fuji_q_table.java create mode 100644 libraw/src/gen/java/org/bytedeco/libraw/libraw_afinfo_item_t.java create mode 100644 libraw/src/gen/java/org/bytedeco/libraw/libraw_area_t.java create mode 100644 libraw/src/gen/java/org/bytedeco/libraw/libraw_raw_unpack_params_t.java create mode 100644 libraw/src/gen/java/org/bytedeco/libraw/libraw_ricoh_makernotes_t.java create mode 100644 libraw/src/gen/java/org/bytedeco/libraw/libraw_thumbnail_item_t.java create mode 100644 libraw/src/gen/java/org/bytedeco/libraw/libraw_thumbnail_list_t.java diff --git a/.github/actions/deploy-centos/action.yml b/.github/actions/deploy-centos/action.yml index 3e39fa2fbce..7bfe95605a5 100644 --- a/.github/actions/deploy-centos/action.yml +++ b/.github/actions/deploy-centos/action.yml @@ -14,12 +14,15 @@ runs: echo "sloppiness = file_macro,include_file_ctime,include_file_mtime,pch_defines,time_macros" >> .ccache/ccache.conf SCL_ENABLE="devtoolset-9 rh-python38" + SCL_INSTALL="rh-python38-python-urllib3" CENTOS_VERSION=$(rpm --eval '%{centos_ver}') if [[ "$CENTOS_VERSION" == "6" ]]; then find /etc/yum.repos.d/ -name *.repo | xargs -i sed -i 's/mirror\.centos\.org\/centos/vault.centos.org/g;s/$releasever/6.10/g;s/mirrorlist/#mirrorlist/g;s/#baseurl/baseurl/g' {} SCL_ENABLE="devtoolset-9 rh-python36 python27" + SCL_INSTALL="" fi echo "SCL_ENABLE=$SCL_ENABLE" >> $GITHUB_ENV + echo "SCL_INSTALL=$SCL_INSTALL" >> $GITHUB_ENV yum -y update yum -y install centos-release-scl-rh epel-release @@ -27,7 +30,7 @@ runs: sed -i 's/mirror\.centos\.org\/centos/vault.centos.org/g;s/6\/sclo/6.10\/sclo/g;s/mirrorlist/#mirrorlist/g;s/#baseurl/baseurl/g' /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo fi curl -L "https://negativo17.org/repos/epel-multimedia.repo" | sed -e '/^\[[a-z\-]*\]/a priority=99' > /etc/yum.repos.d/epel-multimedia.repo - yum -y install $SCL_ENABLE rh-java-common-ant boost-devel ccache clang gcc-c++ gcc-gfortran java-1.8.0-openjdk-devel ant python python3-devel python3-pip swig file which wget unzip tar bzip2 gzip xz patch autoconf-archive automake make libtool bison flex perl-core nasm alsa-lib-devel freeglut-devel gtk2-devel libusb-devel libusb1-devel curl-devel expat-devel gettext-devel openssl-devel bzip2-devel zlib-devel SDL2-devel libva-devel libxkbcommon-devel libxkbcommon-x11-devel xcb-util* fontconfig-devel libffi-devel ragel ocl-icd-devel GeoIP-devel pcre-devel ssdeep-devel yajl-devel + yum -y install $SCL_ENABLE $SCL_INSTALL rh-java-common-ant boost-devel ccache clang gcc-c++ gcc-gfortran java-1.8.0-openjdk-devel ant python python3-devel python3-pip swig file which wget unzip tar bzip2 gzip xz patch autoconf-archive automake make libtool bison flex perl-core nasm alsa-lib-devel freeglut-devel gtk2-devel libusb-devel libusb1-devel curl-devel expat-devel gettext-devel openssl-devel bzip2-devel zlib-devel SDL2-devel libva-devel libxkbcommon-devel libxkbcommon-x11-devel xcb-util* fontconfig-devel libffi-devel ragel ocl-icd-devel GeoIP-devel pcre-devel ssdeep-devel yajl-devel # https://gcc.gnu.org/legacy-ml/gcc-patches/2018-01/msg01962.html sed -i 's/_mm512_abs_pd (__m512 __A)/_mm512_abs_pd (__m512d __A)/g' /opt/rh/devtoolset-9/root/usr/lib/gcc/x86_64-redhat-linux/9/include/avx512fintrin.h source scl_source enable $SCL_ENABLE || true @@ -70,10 +73,10 @@ runs: if [[ "$CI_DEPLOY_PLATFORM" == "linux-x86_64" ]] && [[ -n ${CI_DEPLOY_NEED_CUDA:-} ]]; then echo Installing CUDA, cuDNN, etc curl -LO https://developer.download.nvidia.com/compute/cuda/12.1.1/local_installers/cuda-repo-rhel7-12-1-local-12.1.1_530.30.02-1.x86_64.rpm - curl -LO https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/libcudnn8-8.9.0.131-1.cuda12.1.x86_64.rpm - curl -LO https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/libcudnn8-devel-8.9.0.131-1.cuda12.1.x86_64.rpm - curl -LO https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/libnccl-2.17.1-1+cuda12.1.x86_64.rpm - curl -LO https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/libnccl-devel-2.17.1-1+cuda12.1.x86_64.rpm + curl -LO https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/libcudnn8-8.9.1.23-1.cuda12.1.x86_64.rpm + curl -LO https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/libcudnn8-devel-8.9.1.23-1.cuda12.1.x86_64.rpm + curl -LO https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/libnccl-2.18.1-1+cuda12.1.x86_64.rpm + curl -LO https://developer.download.nvidia.com/compute/cuda/repos/rhel7/x86_64/libnccl-devel-2.18.1-1+cuda12.1.x86_64.rpm rpm -i --force --ignorearch --nodeps cuda-repo-rhel7-* libcudnn*.rpm libnccl*.rpm pushd /var/cuda-repo-rhel7-12-1-local/; rpm -i --force --ignorearch --nodeps cuda*.rpm libc*.rpm libn*.rpm; rm *.rpm; popd @@ -121,8 +124,8 @@ runs: if [[ "$CI_DEPLOY_MODULE" == "tensorrt" ]]; then echo Installing TensorRT - python3 -m gdown.cli https://drive.google.com/uc?id=10H_HJUHy2c6w8AlrFbxvySFaNwhrmmuj - tar -hxvf TensorRT-8.6.0.12.Linux.x86_64-gnu.cuda-12.0.tar.gz -C /usr/local/ + python3 -m gdown.cli https://drive.google.com/uc?id=1dVhD-DEYY42QbZe1GXl-vxe3k6KqWGsL + tar -hxvf TensorRT-8.6.1.6.Linux.x86_64-gnu.cuda-12.0.tar.gz -C /usr/local/ ln -sf /usr/local/TensorRT* /usr/local/tensorrt fi diff --git a/.github/actions/deploy-ubuntu/action.yml b/.github/actions/deploy-ubuntu/action.yml index a3e08a588ba..75f5275f961 100644 --- a/.github/actions/deploy-ubuntu/action.yml +++ b/.github/actions/deploy-ubuntu/action.yml @@ -22,16 +22,16 @@ runs: export ARCH2=sbsa export PREFIX=aarch64-linux-gnu export CUDA=cuda-repo-rhel8-12-1-local-12.1.1_530.30.02-1.aarch64.rpm - export CUDNN=8.9.0.131-1.cuda12.1.aarch64 - export NCCL=2.17.1-1+cuda12.1.aarch64 + export CUDNN=8.9.1.23-1.cuda12.1.aarch64 + export NCCL=2.18.1-1+cuda12.1.aarch64 export USERLAND_BUILDME="buildme --aarch64" elif [[ "$CI_DEPLOY_PLATFORM" == "linux-ppc64le" ]]; then export ARCH=ppc64el export ARCH2=ppc64le export PREFIX=powerpc64le-linux-gnu export CUDA=cuda-repo-rhel8-12-1-local-12.1.1_530.30.02-1.ppc64le.rpm - export CUDNN=8.9.0.131-1.cuda12.1.ppc64le - export NCCL=2.17.1-1+cuda12.1.ppc64le + export CUDNN=8.9.1.23-1.cuda12.1.ppc64le + export NCCL=2.18.1-1+cuda12.1.ppc64le elif [[ "$CI_DEPLOY_PLATFORM" == "linux-x86" ]]; then export ARCH=i386 export PREFIX=i686-linux-gnu @@ -40,8 +40,8 @@ runs: export ARCH2=x86_64 export PREFIX=x86_64-linux-gnu export CUDA=cuda-repo-rhel8-12-1-local-12.1.1_530.30.02-1.x86_64.rpm - export CUDNN=8.9.0.131-1.cuda12.1.x86_64 - export NCCL=2.17.1-1+cuda12.1.x86_64 + export CUDNN=8.9.1.23-1.cuda12.1.x86_64 + export NCCL=2.18.1-1+cuda12.1.x86_64 fi echo "ARCH=$ARCH" >> $GITHUB_ENV echo "ARCH2=$ARCH2" >> $GITHUB_ENV @@ -153,8 +153,8 @@ runs: if [[ "$CI_DEPLOY_MODULE" == "tensorrt" ]]; then echo Installing TensorRT - python3 -m gdown.cli https://drive.google.com/uc?id=1aWz5V9ZlRWj-vaSIKMRahORPMqILQzKe - tar -hxvf TensorRT-8.6.0.12.Ubuntu-20.04.aarch64-gnu.cuda-12.0.tar.gz -C /usr/local/ + python3 -m gdown.cli https://drive.google.com/uc?id=1LZRCv4ZAGiDQAu4pvADJIGntq4cGl5tU + tar -hxvf TensorRT-8.6.1.6.Ubuntu-20.04.aarch64-gnu.cuda-12.0.tar.gz -C /usr/local/ ln -sf /usr/local/TensorRT* /usr/local/tensorrt fi diff --git a/.github/actions/deploy-windows/action.yml b/.github/actions/deploy-windows/action.yml index 6e6bf2af6cf..1ad3babc4a0 100644 --- a/.github/actions/deploy-windows/action.yml +++ b/.github/actions/deploy-windows/action.yml @@ -27,8 +27,8 @@ runs: rm "C:/msys64/mingw32/bin/clang-cl.exe" "C:/msys64/mingw64/bin/clang-cl.exe" "C:/msys64/mingw32/bin/cmake.exe" "C:/msys64/mingw64/bin/cmake.exe" rm "C:/Strawberry/c/lib/libz.a" "C:/Strawberry/c/lib/libzlib.a" "C:/Strawberry/c/lib/libzdll.a" - choco uninstall maven - choco install maven --version 3.6.3 --force + curl -LO https://downloads.apache.org/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz + bash -c "tar -xzf apache-maven-3.6.3-bin.tar.gz -C 'C:/Program Files/'" python -m pip install gdown || python -m pip install gdown @@ -127,9 +127,9 @@ runs: if "%CI_DEPLOY_MODULE%"=="tensorrt" ( echo Installing TensorRT - python -m gdown.cli https://drive.google.com/uc?id=1MTNEhrOC2rTT1itn_Z-SUK_Ck_XRxLbR - unzip TensorRT-8.6.0.12.Windows10.x86_64.cuda-12.0.zip - move TensorRT-8.6.0.12 "%ProgramFiles%\NVIDIA GPU Computing Toolkit\TensorRT" + python -m gdown.cli https://drive.google.com/uc?id=1GfmJ1BKbacLpUU-0i_mGu0sjrAS0Xzzi + unzip TensorRT-8.6.1.6.Windows10.x86_64.cuda-12.0.zip + move TensorRT-8.6.1.6 "%ProgramFiles%\NVIDIA GPU Computing Toolkit\TensorRT" ) if "%CI_DEPLOY_MODULE%"=="mkl" ( @@ -218,7 +218,7 @@ runs: echo CUDA Version 12.1.0>"%ProgramFiles%\NVIDIA GPU Computing Toolkit\CUDA\v12.1\version.txt" ) set "CCACHE_DIR=%USERPROFILE%\ccache" - set "PATH=C:\hostedtoolcache\windows\Python\3.8.10\x64;C:\msys64\%MSYSTEM%\bin;C:\msys64\usr\bin;C:\ProgramData\chocolatey\lib\maven\apache-maven-3.6.3\bin;%PATH%" + set "PATH=C:\hostedtoolcache\windows\Python\3.8.10\x64;C:\msys64\%MSYSTEM%\bin;C:\msys64\usr\bin;%ProgramFiles%\apache-maven-3.6.3\bin;%PATH%" where bash where curl diff --git a/.github/workflows/tritonserver.yml b/.github/workflows/tritonserver.yml index e035a7b8382..81407e6a0f3 100644 --- a/.github/workflows/tritonserver.yml +++ b/.github/workflows/tritonserver.yml @@ -19,6 +19,6 @@ env: jobs: linux-x86_64: runs-on: ubuntu-20.04 - container: nvcr.io/nvidia/tritonserver:23.03-py3 + container: nvcr.io/nvidia/tritonserver:23.04-py3 steps: - uses: bytedeco/javacpp-presets/.github/actions/deploy-ubuntu@actions diff --git a/CHANGELOG.md b/CHANGELOG.md index 321879b555d..276156155b1 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -20,8 +20,8 @@ * Add missing predefined `AVChannelLayout` in presets for FFmpeg ([issue #1286](https://github.com/bytedeco/javacpp-presets/issues/1286)) * Map `c10::impl::GenericDict` as returned by `c10::IValue::toGenericDict()` in presets for PyTorch * Introduce `linux-armhf` and `linux-x86` builds to presets for TensorFlow Lite ([pull #1268](https://github.com/bytedeco/javacpp-presets/pull/1268)) - * Add presets for LibRaw 0.20.2 ([pull #1211](https://github.com/bytedeco/javacpp-presets/pull/1211)) - * Upgrade presets for OpenCV 4.7.0, FFmpeg 6.0 ([issue bytedeco/javacv#1693](https://github.com/bytedeco/javacv/issues/1693)), HDF5 1.14.0, Hyperscan 5.4.2 ([issue #1308](https://github.com/bytedeco/javacpp-presets/issues/1308)), Spinnaker 3.0.0.118 ([pull #1313](https://github.com/bytedeco/javacpp-presets/pull/1313)), librealsense2 2.53.1 ([pull #1305](https://github.com/bytedeco/javacpp-presets/pull/1305)), MKL 2023.1, DNNL 3.1, OpenBLAS 0.3.23, ARPACK-NG 3.9.0, CPython 3.11.3, NumPy 1.24.2, SciPy 1.10.1, LLVM 16.0.3, Leptonica 1.83.0, Tesseract 5.3.1, CUDA 12.1.1, cuDNN 8.9.0, NCCL 2.17.1, OpenCL 3.0.14, NVIDIA Video Codec SDK 12.0.16, PyTorch 2.0.0, TensorFlow Lite 2.12.0, TensorRT 8.6.0.12, Triton Inference Server 2.32.0, DepthAI 2.21.2, ONNX 1.14.0, ONNX Runtime 1.15.0, TVM 0.12.0, Bullet Physics SDK 3.25, and their dependencies + * Add presets for LibRaw 0.21.1 ([pull #1211](https://github.com/bytedeco/javacpp-presets/pull/1211)) + * Upgrade presets for OpenCV 4.7.0, FFmpeg 6.0 ([issue bytedeco/javacv#1693](https://github.com/bytedeco/javacv/issues/1693)), HDF5 1.14.0, Hyperscan 5.4.2 ([issue #1308](https://github.com/bytedeco/javacpp-presets/issues/1308)), Spinnaker 3.0.0.118 ([pull #1313](https://github.com/bytedeco/javacpp-presets/pull/1313)), librealsense2 2.53.1 ([pull #1305](https://github.com/bytedeco/javacpp-presets/pull/1305)), MKL 2023.1, DNNL 3.1, OpenBLAS 0.3.23, ARPACK-NG 3.9.0, CPython 3.11.3, NumPy 1.24.3, SciPy 1.10.1, LLVM 16.0.3, Leptonica 1.83.0, Tesseract 5.3.1, CUDA 12.1.1, cuDNN 8.9.1, NCCL 2.18.1, OpenCL 3.0.14, NVIDIA Video Codec SDK 12.0.16, PyTorch 2.0.1, TensorFlow Lite 2.12.0, TensorRT 8.6.1.6, Triton Inference Server 2.33.0, DepthAI 2.21.2, ONNX 1.14.0, ONNX Runtime 1.15.0, TVM 0.12.0, Bullet Physics SDK 3.25, and their dependencies ### November 2, 2022 version 1.5.8 * Fix mapping of `torch::ExpandingArrayWithOptionalElem` in presets for PyTorch ([issue #1250](https://github.com/bytedeco/javacpp-presets/issues/1250)) diff --git a/README.md b/README.md index d9ff9113b8d..e754ac30489 100644 --- a/README.md +++ b/README.md @@ -210,22 +210,22 @@ Each child module in turn relies by default on the included [`cppbuild.sh` scrip * LLVM 16.0.x http://llvm.org/releases/download.html * libffi 3.4.x https://github.com/libffi/libffi * libpostal 1.1 https://github.com/openvenues/libpostal - * LibRaw 0.20.2 https://www.libraw.org/download + * LibRaw 0.21.x https://www.libraw.org/download * Leptonica 1.83.x http://www.leptonica.org/download.html * Tesseract 5.3.x https://github.com/tesseract-ocr/tesseract * Caffe 1.0 https://github.com/BVLC/caffe * OpenPose 1.7.0 https://github.com/CMU-Perceptual-Computing-Lab/openpose * CUDA 12.1.x https://developer.nvidia.com/cuda-downloads * cuDNN 8.9.x https://developer.nvidia.com/cudnn - * NCCL 2.17.x https://developer.nvidia.com/nccl + * NCCL 2.18.x https://developer.nvidia.com/nccl * NVIDIA Video Codec SDK 12.0.x https://developer.nvidia.com/nvidia-video-codec-sdk * OpenCL 3.0.x https://github.com/KhronosGroup/OpenCL-ICD-Loader * MXNet 1.9.x https://github.com/apache/incubator-mxnet * PyTorch 2.0.x https://github.com/pytorch/pytorch * TensorFlow 1.15.x https://github.com/tensorflow/tensorflow * TensorFlow Lite 2.12.x https://github.com/tensorflow/tensorflow - * TensorRT 8.x https://developer.nvidia.com/tensorrt - * Triton Inference Server 2.32.x https://developer.nvidia.com/nvidia-triton-inference-server + * TensorRT 8.6.x https://developer.nvidia.com/tensorrt + * Triton Inference Server 2.33.x https://developer.nvidia.com/nvidia-triton-inference-server * The Arcade Learning Environment 0.8.x https://github.com/mgbellemare/Arcade-Learning-Environment * DepthAI 2.21.x https://github.com/luxonis/depthai-core * ONNX 1.14.x https://github.com/onnx/onnx diff --git a/cuda/README.md b/cuda/README.md index 69cffcae701..d36d02e16bb 100644 --- a/cuda/README.md +++ b/cuda/README.md @@ -24,8 +24,8 @@ Introduction This directory contains the JavaCPP Presets module for: * CUDA 12.1.1 https://developer.nvidia.com/cuda-zone - * cuDNN 8.9.0 https://developer.nvidia.com/cudnn - * NCCL 2.17.1 https://developer.nvidia.com/nccl + * cuDNN 8.9.1 https://developer.nvidia.com/cudnn + * NCCL 2.18.1 https://developer.nvidia.com/nccl Please refer to the parent README.md file for more detailed information about the JavaCPP Presets. diff --git a/cuda/src/gen/java/org/bytedeco/cuda/global/nccl.java b/cuda/src/gen/java/org/bytedeco/cuda/global/nccl.java index 055bae261d6..0108590d395 100644 --- a/cuda/src/gen/java/org/bytedeco/cuda/global/nccl.java +++ b/cuda/src/gen/java/org/bytedeco/cuda/global/nccl.java @@ -33,11 +33,11 @@ public class nccl extends org.bytedeco.cuda.presets.nccl { // #endif public static final int NCCL_MAJOR = 2; -public static final int NCCL_MINOR = 17; +public static final int NCCL_MINOR = 18; public static final int NCCL_PATCH = 1; public static final String NCCL_SUFFIX = ""; -public static final int NCCL_VERSION_CODE = 21701; +public static final int NCCL_VERSION_CODE = 21801; // #define NCCL_VERSION(X,Y,Z) (((X) <= 2 && (Y) <= 8) ? (X) * 1000 + (Y) * 100 + (Z) : (X) * 10000 + (Y) * 100 + (Z)) // #ifdef __cplusplus @@ -68,6 +68,7 @@ public class nccl extends org.bytedeco.cuda.presets.nccl { // #define NCCL_CONFIG_UNDEF_INT INT_MIN // #define NCCL_CONFIG_UNDEF_PTR NULL +public static final int NCCL_SPLIT_NOCOLOR = -1; // Targeting ../nccl/ncclConfig_t.java @@ -82,7 +83,8 @@ public class nccl extends org.bytedeco.cuda.presets.nccl { // NCCL_CONFIG_UNDEF_INT, /* cgaClusterSize */ // NCCL_CONFIG_UNDEF_INT, /* minCTAs */ // NCCL_CONFIG_UNDEF_INT, /* maxCTAs */ -// NCCL_CONFIG_UNDEF_PTR /* netName */ +// NCCL_CONFIG_UNDEF_PTR, /* netName */ +// NCCL_CONFIG_UNDEF_INT /* splitShare */ // } /* Return the NCCL_VERSION_CODE of the NCCL library in the supplied integer. @@ -156,6 +158,18 @@ public class nccl extends org.bytedeco.cuda.presets.nccl { public static native @Cast("ncclResult_t") int ncclCommAbort(ncclComm comm); public static native @Cast("ncclResult_t") int pncclCommAbort(ncclComm comm); +/* Creates one or more communicators from an existing one. + * Ranks with the same color will end up in the same communicator. + * Within the new communicator, key will be used to order ranks. + * NCCL_SPLIT_NOCOLOR as color will indicate the rank will not be part of any group + * and will therefore return a NULL communicator. + * If config is NULL, the new communicator will inherit the original communicator's + * configuration*/ +public static native @Cast("ncclResult_t") int ncclCommSplit(ncclComm comm, int color, int key, @ByPtrPtr ncclComm newcomm, ncclConfig_t config); +public static native @Cast("ncclResult_t") int ncclCommSplit(ncclComm comm, int color, int key, @Cast("ncclComm**") PointerPointer newcomm, ncclConfig_t config); +public static native @Cast("ncclResult_t") int pncclCommSplit(ncclComm comm, int color, int key, @ByPtrPtr ncclComm newcomm, ncclConfig_t config); +public static native @Cast("ncclResult_t") int pncclCommSplit(ncclComm comm, int color, int key, @Cast("ncclComm**") PointerPointer newcomm, ncclConfig_t config); + /* Returns a string for each error code. */ public static native @Cast("const char*") BytePointer ncclGetErrorString(@Cast("ncclResult_t") int result); public static native @Cast("const char*") BytePointer pncclGetErrorString(@Cast("ncclResult_t") int result); diff --git a/cuda/src/gen/java/org/bytedeco/cuda/nccl/ncclConfig_t.java b/cuda/src/gen/java/org/bytedeco/cuda/nccl/ncclConfig_t.java index 5393b4ffcc8..62a5a7bdfb0 100644 --- a/cuda/src/gen/java/org/bytedeco/cuda/nccl/ncclConfig_t.java +++ b/cuda/src/gen/java/org/bytedeco/cuda/nccl/ncclConfig_t.java @@ -43,4 +43,5 @@ public class ncclConfig_t extends Pointer { public native int minCTAs(); public native ncclConfig_t minCTAs(int setter); public native int maxCTAs(); public native ncclConfig_t maxCTAs(int setter); public native @Cast("const char*") BytePointer netName(); public native ncclConfig_t netName(BytePointer setter); + public native int splitShare(); public native ncclConfig_t splitShare(int setter); } diff --git a/cuda/src/main/java/org/bytedeco/cuda/presets/cusparse.java b/cuda/src/main/java/org/bytedeco/cuda/presets/cusparse.java index 8e909431393..9a1ef195a18 100644 --- a/cuda/src/main/java/org/bytedeco/cuda/presets/cusparse.java +++ b/cuda/src/main/java/org/bytedeco/cuda/presets/cusparse.java @@ -34,8 +34,8 @@ * @author Samuel Audet */ @Properties(inherit = cudart.class, value = { - @Platform(include = "", link = "cusparse@.12"), - @Platform(value = "windows-x86_64", preload = "cusparse64_12")}, + @Platform(include = "", link = "cusparse@.12", preload = "nvJitLink@.12"), + @Platform(value = "windows-x86_64", preload = {"cusparse64_12", "nvJitLink_120_0"})}, target = "org.bytedeco.cuda.cusparse", global = "org.bytedeco.cuda.global.cusparse") @NoException public class cusparse implements InfoMapper { diff --git a/libraw/README.md b/libraw/README.md index 440c72d4c0c..9903ec492d7 100644 --- a/libraw/README.md +++ b/libraw/README.md @@ -9,7 +9,7 @@ Introduction ------------ This directory contains the JavaCPP Presets module for: - * LibRaw 0.20.2 https://www.libraw.org/ + * LibRaw 0.21.1 https://www.libraw.org/ Please refer to the parent README.md file for more detailed information about the JavaCPP Presets. @@ -46,7 +46,7 @@ We can use [Maven 3](http://maven.apache.org/) to download and install automatic org.bytedeco libraw-platform - 0.20.2-1.5.9-SNAPSHOT + 0.21.1-1.5.9-SNAPSHOT diff --git a/libraw/cppbuild.sh b/libraw/cppbuild.sh index 81a51fcd8ec..d663c0f32f4 100755 --- a/libraw/cppbuild.sh +++ b/libraw/cppbuild.sh @@ -9,7 +9,7 @@ fi # Compilation instructions at https://www.libraw.org/docs/Install-LibRaw.html -LIBRAW_VERSION=0.20.2 +LIBRAW_VERSION=0.21.1 download https://github.com/LibRaw/LibRaw/archive/refs/tags/$LIBRAW_VERSION.zip LibRaw-$LIBRAW_VERSION.zip unzip -o LibRaw-$LIBRAW_VERSION.zip diff --git a/libraw/platform/pom.xml b/libraw/platform/pom.xml index df0991f7f80..f8be4b058f8 100644 --- a/libraw/platform/pom.xml +++ b/libraw/platform/pom.xml @@ -12,7 +12,7 @@ org.bytedeco libraw-platform - 0.20.2-${project.parent.version} + 0.21.1-${project.parent.version} JavaCPP Presets Platform for LibRaw diff --git a/libraw/pom.xml b/libraw/pom.xml index 76519c85480..4f55df07e9c 100644 --- a/libraw/pom.xml +++ b/libraw/pom.xml @@ -11,7 +11,7 @@ org.bytedeco libraw - 0.20.2-${project.parent.version} + 0.21.1-${project.parent.version} JavaCPP Presets for LibRaw diff --git a/libraw/samples/pom.xml b/libraw/samples/pom.xml index 13d0b9caaa0..60cb045ab1b 100644 --- a/libraw/samples/pom.xml +++ b/libraw/samples/pom.xml @@ -12,7 +12,7 @@ org.bytedeco libraw-platform - 0.20.2-1.5.9-SNAPSHOT + 0.21.1-1.5.9-SNAPSHOT diff --git a/libraw/src/gen/java/org/bytedeco/libraw/LibRaw.java b/libraw/src/gen/java/org/bytedeco/libraw/LibRaw.java index d486296d0c9..d70f563b2f5 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/LibRaw.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/LibRaw.java @@ -27,31 +27,31 @@ public class LibRaw extends Pointer { public LibRaw() { super((Pointer)null); allocate(); } private native void allocate(); public native libraw_output_params_t output_params_ptr(); - public native int open_file(@Cast("const char*") BytePointer fname, - @Cast("INT64") long max_buffered_sz/*=LIBRAW_USE_STREAMS_DATASTREAM_MAXSIZE*/); +// #ifndef LIBRAW_NO_IOSTREAMS_DATASTREAM +// #else public native int open_file(@Cast("const char*") BytePointer fname); - public native int open_file(String fname, - @Cast("INT64") long max_buffered_sz/*=LIBRAW_USE_STREAMS_DATASTREAM_MAXSIZE*/); public native int open_file(String fname); // #if defined(_WIN32) || defined(WIN32) // #endif - public native int open_buffer(Pointer buffer, @Cast("size_t") long size); + +// #endif + public native int open_buffer(@Const Pointer buffer, @Cast("size_t") long size); public native int open_datastream(LibRaw_abstract_datastream arg0); - public native int open_bayer(@Cast("unsigned char*") BytePointer data, @Cast("unsigned") int datalen, + public native int open_bayer(@Cast("const unsigned char*") BytePointer data, @Cast("unsigned") int datalen, @Cast("ushort") short _raw_width, @Cast("ushort") short _raw_height, @Cast("ushort") short _left_margin, @Cast("ushort") short _top_margin, @Cast("ushort") short _right_margin, @Cast("ushort") short _bottom_margin, @Cast("unsigned char") byte procflags, @Cast("unsigned char") byte bayer_pattern, @Cast("unsigned") int unused_bits, @Cast("unsigned") int otherflags, @Cast("unsigned") int black_level); - public native int open_bayer(@Cast("unsigned char*") ByteBuffer data, @Cast("unsigned") int datalen, + public native int open_bayer(@Cast("const unsigned char*") ByteBuffer data, @Cast("unsigned") int datalen, @Cast("ushort") short _raw_width, @Cast("ushort") short _raw_height, @Cast("ushort") short _left_margin, @Cast("ushort") short _top_margin, @Cast("ushort") short _right_margin, @Cast("ushort") short _bottom_margin, @Cast("unsigned char") byte procflags, @Cast("unsigned char") byte bayer_pattern, @Cast("unsigned") int unused_bits, @Cast("unsigned") int otherflags, @Cast("unsigned") int black_level); - public native int open_bayer(@Cast("unsigned char*") byte[] data, @Cast("unsigned") int datalen, + public native int open_bayer(@Cast("const unsigned char*") byte[] data, @Cast("unsigned") int datalen, @Cast("ushort") short _raw_width, @Cast("ushort") short _raw_height, @Cast("ushort") short _left_margin, @Cast("ushort") short _top_margin, @Cast("ushort") short _right_margin, @Cast("ushort") short _bottom_margin, @@ -62,6 +62,7 @@ public native int open_bayer(@Cast("unsigned char*") byte[] data, @Cast("unsigne public native void recycle_datastream(); public native int unpack(); public native int unpack_thumb(); + public native int unpack_thumb_ex(int arg0); public native int thumbOK(@Cast("INT64") long maxsz/*=-1*/); public native int thumbOK(); public native int adjust_sizes_info_only(); @@ -72,8 +73,9 @@ public native int open_bayer(@Cast("unsigned char*") byte[] data, @Cast("unsigne public native void raw2image_start(); public native void free_image(); public native int adjust_maximum(); + public native int adjust_to_raw_inset_crop(@Cast("unsigned") int mask, float maxcrop/*=0.55f*/); + public native int adjust_to_raw_inset_crop(@Cast("unsigned") int mask); public native void set_exifparser_handler(exif_parser_callback cb, Pointer data); - public native void set_memerror_handler(memory_callback cb, Pointer data); public native void set_dataerror_handler(data_callback func, Pointer data); public native void set_progress_handler(progress_callback pcb, Pointer data); diff --git a/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_abstract_datastream.java b/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_abstract_datastream.java index 873cf7c64d0..1aaf415c16b 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_abstract_datastream.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_abstract_datastream.java @@ -29,7 +29,8 @@ public class LibRaw_abstract_datastream extends Pointer { public native int scanf_one(@Cast("const char*") BytePointer arg0, Pointer arg1); public native int scanf_one(String arg0, Pointer arg1); public native int eof(); - public native Pointer make_jas_stream(); +// #ifdef LIBRAW_OLD_VIDEO_SUPPORT +// #endif public native int jpeg_src(Pointer arg0); public native void buffering_off(); /* reimplement in subclass to use parallel access in xtrans_load_raw() if diff --git a/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_bigfile_datastream.java b/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_bigfile_datastream.java index 5c94fe477d4..e4dfb8ae3e7 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_bigfile_datastream.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_bigfile_datastream.java @@ -24,7 +24,8 @@ public class LibRaw_bigfile_datastream extends LibRaw_abstract_datastream { // #ifdef LIBRAW_WIN32_UNICODEPATHS // #endif public native int valid(); - public native Pointer make_jas_stream(); +// #ifdef LIBRAW_OLD_VIDEO_SUPPORT +// #endif public native int read(Pointer ptr, @Cast("size_t") long size, @Cast("size_t") long nmemb); public native int eof(); diff --git a/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_buffer_datastream.java b/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_buffer_datastream.java index a521829ba74..e4c28ce5eef 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_buffer_datastream.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_buffer_datastream.java @@ -11,16 +11,24 @@ import static org.bytedeco.libraw.global.LibRaw.*; +// #ifndef LIBRAW_NO_IOSTREAMS_DATASTREAM +// #endif + +// #if defined (LIBRAW_NO_IOSTREAMS_DATASTREAM) && defined (LIBRAW_WIN32_CALLS) + +// #endif + @NoOffset @Properties(inherit = org.bytedeco.libraw.presets.LibRaw.class) public class LibRaw_buffer_datastream extends LibRaw_abstract_datastream { static { Loader.load(); } /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ public LibRaw_buffer_datastream(Pointer p) { super(p); } - public LibRaw_buffer_datastream(Pointer buffer, @Cast("size_t") long bsize) { super((Pointer)null); allocate(buffer, bsize); } - private native void allocate(Pointer buffer, @Cast("size_t") long bsize); + public LibRaw_buffer_datastream(@Const Pointer buffer, @Cast("size_t") long bsize) { super((Pointer)null); allocate(buffer, bsize); } + private native void allocate(@Const Pointer buffer, @Cast("size_t") long bsize); public native int valid(); - public native Pointer make_jas_stream(); +// #ifdef LIBRAW_OLD_VIDEO_SUPPORT +// #endif public native int jpeg_src(Pointer jpegdata); public native int read(Pointer ptr, @Cast("size_t") long sz, @Cast("size_t") long nmemb); public native int eof(); diff --git a/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_file_datastream.java b/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_file_datastream.java deleted file mode 100644 index 2af45cebc04..00000000000 --- a/libraw/src/gen/java/org/bytedeco/libraw/LibRaw_file_datastream.java +++ /dev/null @@ -1,45 +0,0 @@ -// Targeted by JavaCPP version 1.5.9-SNAPSHOT: DO NOT EDIT THIS FILE - -package org.bytedeco.libraw; - -import java.nio.*; -import org.bytedeco.javacpp.*; -import org.bytedeco.javacpp.annotation.*; - -import static org.bytedeco.javacpp.presets.javacpp.*; - -import static org.bytedeco.libraw.global.LibRaw.*; - - -// #ifdef LIBRAW_WIN32_DLLDEFS -// #endif - -@NoOffset @Properties(inherit = org.bytedeco.libraw.presets.LibRaw.class) -public class LibRaw_file_datastream extends LibRaw_abstract_datastream { - static { Loader.load(); } - /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ - public LibRaw_file_datastream(Pointer p) { super(p); } - - public LibRaw_file_datastream(@Cast("const char*") BytePointer fname) { super((Pointer)null); allocate(fname); } - private native void allocate(@Cast("const char*") BytePointer fname); - public LibRaw_file_datastream(String fname) { super((Pointer)null); allocate(fname); } - private native void allocate(String fname); -// #ifdef LIBRAW_WIN32_UNICODEPATHS -// #endif - public native Pointer make_jas_stream(); - public native int valid(); - public native int read(Pointer ptr, @Cast("size_t") long size, @Cast("size_t") long nmemb); - public native int eof(); - public native int seek(@Cast("INT64") long o, int whence); - public native @Cast("INT64") long tell(); - public native @Cast("INT64") long size(); - public native int get_char(); - public native @Cast("char*") BytePointer gets(@Cast("char*") BytePointer str, int sz); - public native @Cast("char*") ByteBuffer gets(@Cast("char*") ByteBuffer str, int sz); - public native @Cast("char*") byte[] gets(@Cast("char*") byte[] str, int sz); - public native int scanf_one(@Cast("const char*") BytePointer fmt, Pointer val); - public native int scanf_one(String fmt, Pointer val); - public native @Cast("const char*") BytePointer fname(); -// #ifdef LIBRAW_WIN32_UNICODEPATHS -// #endif -} diff --git a/libraw/src/gen/java/org/bytedeco/libraw/fuji_compressed_params.java b/libraw/src/gen/java/org/bytedeco/libraw/fuji_compressed_params.java index dba47589fbc..855013e28c7 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/fuji_compressed_params.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/fuji_compressed_params.java @@ -29,13 +29,11 @@ public class fuji_compressed_params extends Pointer { return new fuji_compressed_params((Pointer)this).offsetAddress(i); } - /* quantization table */ - public native int q_point(int i); public native fuji_compressed_params q_point(int i, int setter); - @MemberGetter public native IntPointer q_point(); /* quantization points */ + public native @ByRef fuji_q_table qt(int i); public native fuji_compressed_params qt(int i, fuji_q_table setter); + @MemberGetter public native fuji_q_table qt(); + public native Pointer buf(); public native fuji_compressed_params buf(Pointer setter); public native int max_bits(); public native fuji_compressed_params max_bits(int setter); public native int min_value(); public native fuji_compressed_params min_value(int setter); - public native int raw_bits(); public native fuji_compressed_params raw_bits(int setter); - public native int total_values(); public native fuji_compressed_params total_values(int setter); - public native int maxDiff(); public native fuji_compressed_params maxDiff(int setter); + public native int max_value(); public native fuji_compressed_params max_value(int setter); // q_point[4] public native @Cast("ushort") short line_width(); public native fuji_compressed_params line_width(short setter); } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/fuji_q_table.java b/libraw/src/gen/java/org/bytedeco/libraw/fuji_q_table.java new file mode 100644 index 00000000000..7c6c5c73f00 --- /dev/null +++ b/libraw/src/gen/java/org/bytedeco/libraw/fuji_q_table.java @@ -0,0 +1,38 @@ +// Targeted by JavaCPP version 1.5.9-SNAPSHOT: DO NOT EDIT THIS FILE + +package org.bytedeco.libraw; + +import java.nio.*; +import org.bytedeco.javacpp.*; +import org.bytedeco.javacpp.annotation.*; + +import static org.bytedeco.javacpp.presets.javacpp.*; + +import static org.bytedeco.libraw.global.LibRaw.*; + + + @Properties(inherit = org.bytedeco.libraw.presets.LibRaw.class) +public class fuji_q_table extends Pointer { + static { Loader.load(); } + /** Default native constructor. */ + public fuji_q_table() { super((Pointer)null); allocate(); } + /** Native array allocator. Access with {@link Pointer#position(long)}. */ + public fuji_q_table(long size) { super((Pointer)null); allocateArray(size); } + /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ + public fuji_q_table(Pointer p) { super(p); } + private native void allocate(); + private native void allocateArray(long size); + @Override public fuji_q_table position(long position) { + return (fuji_q_table)super.position(position); + } + @Override public fuji_q_table getPointer(long i) { + return new fuji_q_table((Pointer)this).offsetAddress(i); + } + + public native @Cast("int8_t*") BytePointer q_table(); public native fuji_q_table q_table(BytePointer setter); /* quantization table */ + public native int raw_bits(); public native fuji_q_table raw_bits(int setter); + public native int total_values(); public native fuji_q_table total_values(int setter); + public native int max_grad(); public native fuji_q_table max_grad(int setter); // sdp val + public native int q_grad_mult(); public native fuji_q_table q_grad_mult(int setter); // quant_gradient multiplier + public native int q_base(); public native fuji_q_table q_base(int setter); + } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/global/LibRaw.java b/libraw/src/gen/java/org/bytedeco/libraw/global/LibRaw.java index ff7185b7426..1c2400209fa 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/global/LibRaw.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/global/LibRaw.java @@ -17,7 +17,7 @@ public class LibRaw extends org.bytedeco.libraw.presets.LibRaw { /* -*- C++ -*- * File: libraw_const.h - * Copyright 2008-2020 LibRaw LLC (info@libraw.org) + * Copyright 2008-2021 LibRaw LLC (info@libraw.org) * Created: Sat Mar 8 , 2008 * LibRaw error codes LibRaw is free software; you can redistribute it and/or modify @@ -34,13 +34,25 @@ public class LibRaw extends org.bytedeco.libraw.presets.LibRaw { // #ifndef _LIBRAW_ERRORS_H // #define _LIBRAW_ERRORS_H -public static final double LIBRAW_DEFAULT_ADJUST_MAXIMUM_THRESHOLD = 0.75; -public static final double LIBRAW_DEFAULT_AUTO_BRIGHTNESS_THRESHOLD = 0.01; +public static final double LIBRAW_DEFAULT_ADJUST_MAXIMUM_THRESHOLD = 0.75f; +public static final double LIBRAW_DEFAULT_AUTO_BRIGHTNESS_THRESHOLD = 0.01f; /* limit allocation size, default is 2Gb */ // #ifndef LIBRAW_MAX_ALLOC_MB_DEFAULT public static final long LIBRAW_MAX_ALLOC_MB_DEFAULT = 2048L; // #endif +// #ifndef LIBRAW_MAX_NONDNG_RAW_FILE_SIZE +public static final long LIBRAW_MAX_NONDNG_RAW_FILE_SIZE = 2147483647L; +// #endif + +// #ifndef LIBRAW_MAX_DNG_RAW_FILE_SIZE +// #ifdef USE_DNGSDK +// #else +public static final long LIBRAW_MAX_DNG_RAW_FILE_SIZE = 2147483647L; +// #endif +// #endif + + /* limit thumbnail size, default is 512Mb*/ // #ifndef LIBRAW_MAX_THUMBNAIL_MB public static final long LIBRAW_MAX_THUMBNAIL_MB = 512L; @@ -55,6 +67,7 @@ public class LibRaw extends org.bytedeco.libraw.presets.LibRaw { // #endif + /* LibRaw uses own memory pool management, with LIBRAW_MSIZE (512) entries. It is enough for parsing/decoding non-damaged files, but may overflow on specially crafted files (eg. with many string values @@ -67,20 +80,14 @@ may overflow on specially crafted files (eg. with many string values public static final int LIBRAW_MAX_METADATA_BLOCKS = 1024; public static final int LIBRAW_CBLACK_SIZE = 4104; public static final int LIBRAW_IFD_MAXCOUNT = 10; +public static final int LIBRAW_THUMBNAIL_MAXCOUNT = 8; public static final int LIBRAW_CRXTRACKS_MAXCOUNT = 16; +public static final int LIBRAW_AFDATA_MAXCOUNT = 4; public static final int LIBRAW_AHD_TILE = 512; -public enum LibRaw_open_flags { - LIBRAW_OPEN_BIGFILE(1), - LIBRAW_OPEN_FILE(1<<1); - - public final int value; - private LibRaw_open_flags(int v) { this.value = v; } - private LibRaw_open_flags(LibRaw_open_flags e) { this.value = e.value; } - public LibRaw_open_flags intern() { for (LibRaw_open_flags e : values()) if (e.value == value) return e; return this; } - @Override public String toString() { return intern().name(); } -} +// #ifndef LIBRAW_NO_IOSTREAMS_DATASTREAM +// #endif public enum LibRaw_openbayer_patterns { LIBRAW_OPENBAYER_RGGB(0x94), @@ -110,7 +117,10 @@ public enum LibRaw_dngfields_marks { LIBRAW_DNGFM_PREVIEWCS(1 << 11), LIBRAW_DNGFM_ASSHOTNEUTRAL(1 << 12), LIBRAW_DNGFM_BASELINEEXPOSURE(1 << 13), - LIBRAW_DNGFM_LINEARRESPONSELIMIT(1 << 14); + LIBRAW_DNGFM_LINEARRESPONSELIMIT(1 << 14), + LIBRAW_DNGFM_USERCROP(1 << 15), + LIBRAW_DNGFM_OPCODE1(1 << 16), + LIBRAW_DNGFM_OPCODE3(1 << 17); public final int value; private LibRaw_dngfields_marks(int v) { this.value = v; } @@ -280,13 +290,28 @@ public enum LibRaw_dng_processing { @Override public String toString() { return intern().name(); } } +public enum LibRaw_output_flags { + LIBRAW_OUTPUT_FLAGS_NONE(0), + LIBRAW_OUTPUT_FLAGS_PPMMETA(1); + + public final int value; + private LibRaw_output_flags(int v) { this.value = v; } + private LibRaw_output_flags(LibRaw_output_flags e) { this.value = e.value; } + public LibRaw_output_flags intern() { for (LibRaw_output_flags e : values()) if (e.value == value) return e; return this; } + @Override public String toString() { return intern().name(); } +} + public enum LibRaw_runtime_capabilities { LIBRAW_CAPS_RAWSPEED(1), - LIBRAW_CAPS_DNGSDK(2), - LIBRAW_CAPS_GPRSDK(4), - LIBRAW_CAPS_UNICODEPATHS(8), - LIBRAW_CAPS_X3FTOOLS(16), - LIBRAW_CAPS_RPI6BY9(32); + LIBRAW_CAPS_DNGSDK(1<<1), + LIBRAW_CAPS_GPRSDK(1<<2), + LIBRAW_CAPS_UNICODEPATHS(1<<3), + LIBRAW_CAPS_X3FTOOLS(1<<4), + LIBRAW_CAPS_RPI6BY9(1<<5), + LIBRAW_CAPS_ZLIB(1<<6), + LIBRAW_CAPS_JPEG(1<<7), + LIBRAW_CAPS_RAWSPEED3(1<<8), + LIBRAW_CAPS_RAWSPEED_BITS(1<<9); public final int value; private LibRaw_runtime_capabilities(int v) { this.value = v; } @@ -391,8 +416,16 @@ public enum LibRaw_cameramaker_index { LIBRAW_CAMERAMAKER_YI(69), LIBRAW_CAMERAMAKER_Yuneec(70), LIBRAW_CAMERAMAKER_Zeiss(71), + LIBRAW_CAMERAMAKER_OnePlus(72), + LIBRAW_CAMERAMAKER_ISG(73), + LIBRAW_CAMERAMAKER_VIVO(74), + LIBRAW_CAMERAMAKER_HMD_Global(75), + LIBRAW_CAMERAMAKER_HUAWEI(76), + LIBRAW_CAMERAMAKER_RaspberryPi(77), + LIBRAW_CAMERAMAKER_OmDigital(78), + // Insert additional indexes here - LIBRAW_CAMERAMAKER_TheLastOne(72); + LIBRAW_CAMERAMAKER_TheLastOne(79); public final int value; private LibRaw_cameramaker_index(int v) { this.value = v; } @@ -431,20 +464,23 @@ public enum LibRaw_camera_mounts { LIBRAW_MOUNT_Nikon_CX(26), /* used in 'Nikon 1' series */ LIBRAW_MOUNT_Nikon_F(27), LIBRAW_MOUNT_Nikon_Z(28), - LIBRAW_MOUNT_Pentax_645(29), - LIBRAW_MOUNT_Pentax_K(30), - LIBRAW_MOUNT_Pentax_Q(31), - LIBRAW_MOUNT_RicohModule(32), - LIBRAW_MOUNT_Rollei_bayonet(33), /* Rollei Hy-6: Leaf AFi, Sinar Hy6- models */ - LIBRAW_MOUNT_Samsung_NX_M(34), - LIBRAW_MOUNT_Samsung_NX(35), - LIBRAW_MOUNT_Sigma_X3F(36), - LIBRAW_MOUNT_Sony_E(37), - LIBRAW_MOUNT_LF(38), - LIBRAW_MOUNT_DigitalBack(39), - LIBRAW_MOUNT_FixedLens(40), - LIBRAW_MOUNT_IL_UM(41), /* Interchangeable lens, mount unknown */ - LIBRAW_MOUNT_TheLastOne(42); + LIBRAW_MOUNT_PhaseOne_iXM_MV(29), + LIBRAW_MOUNT_PhaseOne_iXM_RS(30), + LIBRAW_MOUNT_PhaseOne_iXM(31), + LIBRAW_MOUNT_Pentax_645(32), + LIBRAW_MOUNT_Pentax_K(33), + LIBRAW_MOUNT_Pentax_Q(34), + LIBRAW_MOUNT_RicohModule(35), + LIBRAW_MOUNT_Rollei_bayonet(36), /* Rollei Hy-6: Leaf AFi, Sinar Hy6- models */ + LIBRAW_MOUNT_Samsung_NX_M(37), + LIBRAW_MOUNT_Samsung_NX(38), + LIBRAW_MOUNT_Sigma_X3F(39), + LIBRAW_MOUNT_Sony_E(40), + LIBRAW_MOUNT_LF(41), + LIBRAW_MOUNT_DigitalBack(42), + LIBRAW_MOUNT_FixedLens(43), + LIBRAW_MOUNT_IL_UM(44), /* Interchangeable lens, mount unknown */ + LIBRAW_MOUNT_TheLastOne(45); public final int value; private LibRaw_camera_mounts(int v) { this.value = v; } @@ -487,12 +523,19 @@ public enum LibRaw_camera_formats { public enum LibRawImageAspects { LIBRAW_IMAGE_ASPECT_UNKNOWN(0), - LIBRAW_IMAGE_ASPECT_3to2(1), - LIBRAW_IMAGE_ASPECT_1to1(2), - LIBRAW_IMAGE_ASPECT_4to3(3), - LIBRAW_IMAGE_ASPECT_16to9(4), - LIBRAW_IMAGE_ASPECT_5to4(5), - LIBRAW_IMAGE_ASPECT_OTHER(6); + LIBRAW_IMAGE_ASPECT_OTHER(1), + LIBRAW_IMAGE_ASPECT_MINIMAL_REAL_ASPECT_VALUE(99), /* 1:10*/ + LIBRAW_IMAGE_ASPECT_MAXIMAL_REAL_ASPECT_VALUE(10000), /* 10: 1*/ + // Value: width / height * 1000 + LIBRAW_IMAGE_ASPECT_3to2( (1000 * 3)/2), + LIBRAW_IMAGE_ASPECT_1to1(1000), + LIBRAW_IMAGE_ASPECT_4to3( (1000 * 4)/ 3), + LIBRAW_IMAGE_ASPECT_16to9((1000 * 16) / 9), + //LIBRAW_IMAGE_ASPECT_6to6, // what is the difference with 1:1 ? + LIBRAW_IMAGE_ASPECT_5to4((1000 * 5) / 4), + LIBRAW_IMAGE_ASPECT_7to6((1000 * 7) / 6), + LIBRAW_IMAGE_ASPECT_6to5((1000 * 6) / 5), + LIBRAW_IMAGE_ASPECT_7to5((1000 * 7) / 5); public final int value; private LibRawImageAspects(int v) { this.value = v; } @@ -541,13 +584,36 @@ public enum LibRaw_Canon_RecordModes { @Override public String toString() { return intern().name(); } } +public enum LibRaw_minolta_storagemethods { + LIBRAW_MINOLTA_UNPACKED(0x52), + LIBRAW_MINOLTA_PACKED (0x59); + + public final int value; + private LibRaw_minolta_storagemethods(int v) { this.value = v; } + private LibRaw_minolta_storagemethods(LibRaw_minolta_storagemethods e) { this.value = e.value; } + public LibRaw_minolta_storagemethods intern() { for (LibRaw_minolta_storagemethods e : values()) if (e.value == value) return e; return this; } + @Override public String toString() { return intern().name(); } +} + +public enum LibRaw_minolta_bayerpatterns { + LIBRAW_MINOLTA_RGGB (0x01), + LIBRAW_MINOLTA_G2BRG1(0x04); + + public final int value; + private LibRaw_minolta_bayerpatterns(int v) { this.value = v; } + private LibRaw_minolta_bayerpatterns(LibRaw_minolta_bayerpatterns e) { this.value = e.value; } + public LibRaw_minolta_bayerpatterns intern() { for (LibRaw_minolta_bayerpatterns e : values()) if (e.value == value) return e; return this; } + @Override public String toString() { return intern().name(); } +} + public enum LibRaw_sony_cameratypes { - LIBRAW_SONY_DSC(1), + LIBRAW_SONY_DSC (1), LIBRAW_SONY_DSLR(2), - LIBRAW_SONY_NEX(3), - LIBRAW_SONY_SLT(4), + LIBRAW_SONY_NEX (3), + LIBRAW_SONY_SLT (4), LIBRAW_SONY_ILCE(5), - LIBRAW_SONY_ILCA(6); + LIBRAW_SONY_ILCA(6), + LIBRAW_SONY_CameraType_UNKNOWN(0xffff); public final int value; private LibRaw_sony_cameratypes(int v) { this.value = v; } @@ -556,6 +622,56 @@ public enum LibRaw_sony_cameratypes { @Override public String toString() { return intern().name(); } } +public enum LibRaw_Sony_0x2010_Type { + LIBRAW_SONY_Tag2010None(0), + LIBRAW_SONY_Tag2010a(1), + LIBRAW_SONY_Tag2010b(2), + LIBRAW_SONY_Tag2010c(3), + LIBRAW_SONY_Tag2010d(4), + LIBRAW_SONY_Tag2010e(5), + LIBRAW_SONY_Tag2010f(6), + LIBRAW_SONY_Tag2010g(7), + LIBRAW_SONY_Tag2010h(8), + LIBRAW_SONY_Tag2010i(9); + + public final int value; + private LibRaw_Sony_0x2010_Type(int v) { this.value = v; } + private LibRaw_Sony_0x2010_Type(LibRaw_Sony_0x2010_Type e) { this.value = e.value; } + public LibRaw_Sony_0x2010_Type intern() { for (LibRaw_Sony_0x2010_Type e : values()) if (e.value == value) return e; return this; } + @Override public String toString() { return intern().name(); } +} +public enum LibRaw_Sony_0x9050_Type { + LIBRAW_SONY_Tag9050None(0), + LIBRAW_SONY_Tag9050a(1), + LIBRAW_SONY_Tag9050b(2), + LIBRAW_SONY_Tag9050c(3); + + public final int value; + private LibRaw_Sony_0x9050_Type(int v) { this.value = v; } + private LibRaw_Sony_0x9050_Type(LibRaw_Sony_0x9050_Type e) { this.value = e.value; } + public LibRaw_Sony_0x9050_Type intern() { for (LibRaw_Sony_0x9050_Type e : values()) if (e.value == value) return e; return this; } + @Override public String toString() { return intern().name(); } +} + +public enum LIBRAW_SONY_FOCUSMODEmodes { + LIBRAW_SONY_FOCUSMODE_MF (0), + LIBRAW_SONY_FOCUSMODE_AF_S (2), + LIBRAW_SONY_FOCUSMODE_AF_C (3), + LIBRAW_SONY_FOCUSMODE_AF_A (4), + LIBRAW_SONY_FOCUSMODE_DMF (6), + LIBRAW_SONY_FOCUSMODE_AF_D (7), + LIBRAW_SONY_FOCUSMODE_AF (101), + LIBRAW_SONY_FOCUSMODE_PERMANENT_AF(104), + LIBRAW_SONY_FOCUSMODE_SEMI_MF (105), + LIBRAW_SONY_FOCUSMODE_UNKNOWN (-1); + + public final int value; + private LIBRAW_SONY_FOCUSMODEmodes(int v) { this.value = v; } + private LIBRAW_SONY_FOCUSMODEmodes(LIBRAW_SONY_FOCUSMODEmodes e) { this.value = e.value; } + public LIBRAW_SONY_FOCUSMODEmodes intern() { for (LIBRAW_SONY_FOCUSMODEmodes e : values()) if (e.value == value) return e; return this; } + @Override public String toString() { return intern().name(); } +} + public enum LibRaw_KodakSensors { LIBRAW_Kodak_UnknownSensor(0), LIBRAW_Kodak_M1(1), @@ -595,6 +711,45 @@ public enum LibRaw_HasselbladFormatCodes { @Override public String toString() { return intern().name(); } } +public enum LibRaw_rawspecial_t { + LIBRAW_RAWSPECIAL_SONYARW2_NONE(0), + LIBRAW_RAWSPECIAL_SONYARW2_BASEONLY(1), + LIBRAW_RAWSPECIAL_SONYARW2_DELTAONLY(1 << 1), + LIBRAW_RAWSPECIAL_SONYARW2_DELTAZEROBASE(1 << 2), + LIBRAW_RAWSPECIAL_SONYARW2_DELTATOVALUE(1 << 3), + LIBRAW_RAWSPECIAL_SONYARW2_ALLFLAGS( + LIBRAW_RAWSPECIAL_SONYARW2_BASEONLY.value + + LIBRAW_RAWSPECIAL_SONYARW2_DELTAONLY.value + + LIBRAW_RAWSPECIAL_SONYARW2_DELTAZEROBASE.value + + LIBRAW_RAWSPECIAL_SONYARW2_DELTATOVALUE.value), + LIBRAW_RAWSPECIAL_NODP2Q_INTERPOLATERG(1<<4), + LIBRAW_RAWSPECIAL_NODP2Q_INTERPOLATEAF(1 << 5), + LIBRAW_RAWSPECIAL_SRAW_NO_RGB(1 << 6), + LIBRAW_RAWSPECIAL_SRAW_NO_INTERPOLATE(1 << 7); + + public final int value; + private LibRaw_rawspecial_t(int v) { this.value = v; } + private LibRaw_rawspecial_t(LibRaw_rawspecial_t e) { this.value = e.value; } + public LibRaw_rawspecial_t intern() { for (LibRaw_rawspecial_t e : values()) if (e.value == value) return e; return this; } + @Override public String toString() { return intern().name(); } +} + +public enum LibRaw_rawspeed_bits_t { + LIBRAW_RAWSPEEDV1_USE(1), + LIBRAW_RAWSPEEDV1_FAILONUNKNOWN(1 << 1), + LIBRAW_RAWSPEEDV1_IGNOREERRORS(1 << 2), + /* bits 3-7 are reserved*/ + LIBRAW_RAWSPEEDV3_USE(1 << 8), + LIBRAW_RAWSPEEDV3_FAILONUNKNOWN(1 << 9), + LIBRAW_RAWSPEEDV3_IGNOREERRORS(1 << 10); + + public final int value; + private LibRaw_rawspeed_bits_t(int v) { this.value = v; } + private LibRaw_rawspeed_bits_t(LibRaw_rawspeed_bits_t e) { this.value = e.value; } + public LibRaw_rawspeed_bits_t intern() { for (LibRaw_rawspeed_bits_t e : values()) if (e.value == value) return e; return this; } + @Override public String toString() { return intern().name(); } +} + public enum LibRaw_decoder_flags { @@ -609,7 +764,9 @@ public enum LibRaw_decoder_flags { LIBRAW_DECODER_SINAR4SHOT(1 << 11), LIBRAW_DECODER_FLATDATA(1 << 12), LIBRAW_DECODER_FLAT_BG2_SWAPPED(1<<13), - LIBRAW_DECODER_NOTSET(1 << 15); + LIBRAW_DECODER_UNSUPPORTED_FORMAT(1 << 14), + LIBRAW_DECODER_NOTSET(1 << 15), + LIBRAW_DECODER_TRYRAWSPEED3(1 << 16); public final int value; private LibRaw_decoder_flags(int v) { this.value = v; } @@ -622,8 +779,9 @@ public enum LibRaw_decoder_flags { public enum LibRaw_constructor_flags { LIBRAW_OPTIONS_NONE(0), - LIBRAW_OPIONS_NO_MEMERR_CALLBACK(1), - LIBRAW_OPIONS_NO_DATAERR_CALLBACK(1 << 1); + LIBRAW_OPTIONS_NO_DATAERR_CALLBACK(1 << 1), + /* Compatibility w/ years old typo */ + LIBRAW_OPIONS_NO_DATAERR_CALLBACK(LIBRAW_OPTIONS_NO_DATAERR_CALLBACK.value); public final int value; private LibRaw_constructor_flags(int v) { this.value = v; } @@ -643,7 +801,8 @@ public enum LibRaw_warnings { LIBRAW_WARN_NO_BADPIXELMAP(1 << 8), LIBRAW_WARN_BAD_DARKFRAME_FILE(1 << 9), LIBRAW_WARN_BAD_DARKFRAME_DIM(1 << 10), - LIBRAW_WARN_NO_JASPER(1 << 11), +// #ifdef LIBRAW_OLD_VIDEO_SUPPORT +// #endif LIBRAW_WARN_RAWSPEED_PROBLEM(1 << 12), LIBRAW_WARN_RAWSPEED_UNSUPPORTED(1 << 13), LIBRAW_WARN_RAWSPEED_PROCESSED(1 << 14), @@ -652,7 +811,11 @@ public enum LibRaw_warnings { LIBRAW_WARN_DNGSDK_PROCESSED(1 << 17), LIBRAW_WARN_DNG_IMAGES_REORDERED(1 << 18), LIBRAW_WARN_DNG_STAGE2_APPLIED(1 << 19), - LIBRAW_WARN_DNG_STAGE3_APPLIED(1 << 20); + LIBRAW_WARN_DNG_STAGE3_APPLIED(1 << 20), + LIBRAW_WARN_RAWSPEED3_PROBLEM(1 << 21), + LIBRAW_WARN_RAWSPEED3_UNSUPPORTED(1 << 22), + LIBRAW_WARN_RAWSPEED3_PROCESSED(1 << 23), + LIBRAW_WARN_RAWSPEED3_NOTLISTED(1 << 24); public final int value; private LibRaw_warnings(int v) { this.value = v; } @@ -673,7 +836,8 @@ public enum LibRaw_exceptions { LIBRAW_EXCEPTION_IO_BADFILE(8), LIBRAW_EXCEPTION_DECODE_JPEG2000(9), LIBRAW_EXCEPTION_TOOBIG(10), - LIBRAW_EXCEPTION_MEMPOOL(11); + LIBRAW_EXCEPTION_MEMPOOL(11), + LIBRAW_EXCEPTION_UNSUPPORTED_FORMAT(12); public final int value; private LibRaw_exceptions(int v) { this.value = v; } @@ -736,6 +900,7 @@ public enum LibRaw_errors { LIBRAW_UNSUPPORTED_THUMBNAIL(-6), LIBRAW_INPUT_CLOSED(-7), LIBRAW_NOT_IMPLEMENTED(-8), + LIBRAW_REQUEST_FOR_NONEXISTENT_THUMBNAIL(-9), LIBRAW_UNSUFFICIENT_MEMORY(-100007), LIBRAW_DATA_ERROR(-100008), LIBRAW_IO_ERROR(-100009), @@ -753,13 +918,34 @@ public enum LibRaw_errors { // #define LIBRAW_FATAL_ERROR(ec) ((ec) < -100000) +public enum LibRaw_internal_thumbnail_formats { + LIBRAW_INTERNAL_THUMBNAIL_UNKNOWN(0), + LIBRAW_INTERNAL_THUMBNAIL_KODAK_THUMB(1), + LIBRAW_INTERNAL_THUMBNAIL_KODAK_YCBCR(2), + LIBRAW_INTERNAL_THUMBNAIL_KODAK_RGB(3), + LIBRAW_INTERNAL_THUMBNAIL_JPEG(4), + LIBRAW_INTERNAL_THUMBNAIL_LAYER(5), + LIBRAW_INTERNAL_THUMBNAIL_ROLLEI(6), + LIBRAW_INTERNAL_THUMBNAIL_PPM(7), + LIBRAW_INTERNAL_THUMBNAIL_PPM16(8), + LIBRAW_INTERNAL_THUMBNAIL_X3F(9); + + public final int value; + private LibRaw_internal_thumbnail_formats(int v) { this.value = v; } + private LibRaw_internal_thumbnail_formats(LibRaw_internal_thumbnail_formats e) { this.value = e.value; } + public LibRaw_internal_thumbnail_formats intern() { for (LibRaw_internal_thumbnail_formats e : values()) if (e.value == value) return e; return this; } + @Override public String toString() { return intern().name(); } +} + + public enum LibRaw_thumbnail_formats { LIBRAW_THUMBNAIL_UNKNOWN(0), LIBRAW_THUMBNAIL_JPEG(1), LIBRAW_THUMBNAIL_BITMAP(2), LIBRAW_THUMBNAIL_BITMAP16(3), LIBRAW_THUMBNAIL_LAYER(4), - LIBRAW_THUMBNAIL_ROLLEI(5); + LIBRAW_THUMBNAIL_ROLLEI(5), + LIBRAW_THUMBNAIL_H265(6); public final int value; private LibRaw_thumbnail_formats(int v) { this.value = v; } @@ -786,7 +972,7 @@ public enum LibRaw_image_formats { /* -*- C++ -*- * File: libraw_version.h - * Copyright 2008-2020 LibRaw LLC (info@libraw.org) + * Copyright 2008-2021 LibRaw LLC (info@libraw.org) * Created: Mon Sept 8, 2008 * * LibRaw C++ interface @@ -807,11 +993,11 @@ public enum LibRaw_image_formats { // #define __VERSION_H public static final int LIBRAW_MAJOR_VERSION = 0; -public static final int LIBRAW_MINOR_VERSION = 20; -public static final int LIBRAW_PATCH_VERSION = 2; +public static final int LIBRAW_MINOR_VERSION = 21; +public static final int LIBRAW_PATCH_VERSION = 1; // #define LIBRAW_VERSION_TAIL Release -public static final int LIBRAW_SHLIB_CURRENT = 20; +public static final int LIBRAW_SHLIB_CURRENT = 23; public static final int LIBRAW_SHLIB_REVISION = 0; public static final int LIBRAW_SHLIB_AGE = 0; @@ -853,7 +1039,7 @@ public enum LibRaw_image_formats { /* -*- C++ -*- * File: libraw_types.h - * Copyright 2008-2020 LibRaw LLC (info@libraw.org) + * Copyright 2008-2021 LibRaw LLC (info@libraw.org) * Created: Sat Mar 8 , 2008 * * LibRaw C data structures @@ -892,6 +1078,9 @@ public enum LibRaw_image_formats { // #if defined(_OPENMP) +// #if defined(LIBRAW_FORCE_OPENMP) +// #define LIBRAW_USE_OPENMP +// #else // #if defined(_WIN32) // #if defined(_MSC_VER) && // (_MSC_VER >= 1600 || (_MSC_VER == 1500 && _MSC_FULL_VER >= 150030729)) @@ -912,6 +1101,7 @@ public enum LibRaw_image_formats { // #define LIBRAW_USE_OPENMP // #endif // #endif +// #endif // #ifdef LIBRAW_USE_OPENMP // #endif @@ -949,11 +1139,6 @@ public enum LibRaw_image_formats { // Targeting ../exif_parser_callback.java - - public static native void default_memory_callback(Pointer data, @Cast("const char*") BytePointer file, - @Cast("const char*") BytePointer where); - public static native void default_memory_callback(Pointer data, String file, - String where); // Targeting ../data_callback.java @@ -989,6 +1174,9 @@ public static native void default_data_callback(Pointer data, String file, // Targeting ../libraw_image_sizes_t.java +// Targeting ../libraw_area_t.java + + // Targeting ../ph1_t.java @@ -1025,6 +1213,9 @@ public static native void default_data_callback(Pointer data, String file, // Targeting ../libraw_pentax_makernotes_t.java +// Targeting ../libraw_ricoh_makernotes_t.java + + // Targeting ../libraw_samsung_makernotes_t.java @@ -1043,18 +1234,30 @@ public static native void default_data_callback(Pointer data, String file, // Targeting ../libraw_thumbnail_t.java +// Targeting ../libraw_thumbnail_item_t.java + + +// Targeting ../libraw_thumbnail_list_t.java + + // Targeting ../libraw_gps_info_t.java // Targeting ../libraw_imgother_t.java +// Targeting ../libraw_afinfo_item_t.java + + // Targeting ../libraw_metadata_common_t.java // Targeting ../libraw_output_params_t.java +// Targeting ../libraw_raw_unpack_params_t.java + + // Targeting ../libraw_rawdata_t.java @@ -1082,6 +1285,9 @@ public static native void default_data_callback(Pointer data, String file, // Targeting ../libraw_data_t.java +// Targeting ../fuji_q_table.java + + // Targeting ../fuji_compressed_params.java @@ -1125,7 +1331,7 @@ public static native void default_data_callback(Pointer data, String file, /* -*- C -*- * File: libraw_datastream.h - * Copyright 2008-2020 LibRaw LLC (info@libraw.org) + * Copyright 2008-2021 LibRaw LLC (info@libraw.org) * Created: Sun Jan 18 13:07:35 2009 * * LibRaw Data stream interface @@ -1192,9 +1398,6 @@ public static native void default_data_callback(Pointer data, String file, // Targeting ../LibRaw_abstract_datastream.java -// Targeting ../LibRaw_file_datastream.java - - // Targeting ../LibRaw_buffer_datastream.java @@ -1219,7 +1422,7 @@ public static native void default_data_callback(Pointer data, String file, /* -*- C++ -*- * File: libraw.h - * Copyright 2008-2020 LibRaw LLC (info@libraw.org) + * Copyright 2008-2021 LibRaw LLC (info@libraw.org) * Created: Sat Mar 8, 2008 * * LibRaw C++ interface @@ -1243,8 +1446,17 @@ public static native void default_data_callback(Pointer data, String file, public static final int _FILE_OFFSET_BITS = 64; // #endif -/* maximum file size to use LibRaw_file_datastream (fully buffered) I/O */ -public static final long LIBRAW_USE_STREAMS_DATASTREAM_MAXSIZE = (250 * 1024L * 1024L); +// Enable use old cinema cameras if USE_OLD_VIDEOCAMS defined +// #ifdef USE_OLD_VIDEOCAMS +// #define LIBRAW_OLD_VIDEO_SUPPORT +// #endif + +// #ifndef LIBRAW_USE_DEPRECATED_IOSTREAMS_DATASTREAM +// #define LIBRAW_NO_IOSTREAMS_DATASTREAM +// #endif + +// #ifndef LIBRAW_NO_IOSTREAMS_DATASTREAM +// #endif // #include // #include @@ -1279,6 +1491,10 @@ public static native void default_data_callback(Pointer data, String file, // # ifndef LIBRAW_WIN32_UNICODEPATHS // # define LIBRAW_WIN32_UNICODEPATHS // # endif +// # elif defined(_LIBCPP_HAS_OPEN_WITH_WCHAR) +// # ifndef LIBRAW_WIN32_UNICODEPATHS +// # define LIBRAW_WIN32_UNICODEPATHS +// # endif // # endif // #endif @@ -1298,15 +1514,39 @@ public static native void default_data_callback(Pointer data, String file, public static native libraw_data_t libraw_init(@Cast("unsigned int") int flags); public static native int libraw_open_file(libraw_data_t arg0, @Cast("const char*") BytePointer arg1); public static native int libraw_open_file(libraw_data_t arg0, String arg1); - public static native int libraw_open_file_ex(libraw_data_t arg0, @Cast("const char*") BytePointer arg1, - @Cast("INT64") long max_buff_sz); - public static native int libraw_open_file_ex(libraw_data_t arg0, String arg1, - @Cast("INT64") long max_buff_sz); +// #ifndef LIBRAW_NO_IOSTREAMS_DATASTREAM +// #endif // #if defined(_WIN32) || defined(WIN32) // #endif - public static native int libraw_open_buffer(libraw_data_t arg0, Pointer buffer, @Cast("size_t") long size); + + public static native int libraw_open_buffer(libraw_data_t arg0, @Const Pointer buffer, @Cast("size_t") long size); + public static native int libraw_open_bayer(libraw_data_t lr, @Cast("unsigned char*") BytePointer data, + @Cast("unsigned") int datalen, @Cast("ushort") short _raw_width, + @Cast("ushort") short _raw_height, @Cast("ushort") short _left_margin, + @Cast("ushort") short _top_margin, @Cast("ushort") short _right_margin, + @Cast("ushort") short _bottom_margin, @Cast("unsigned char") byte procflags, + @Cast("unsigned char") byte bayer_battern, + @Cast("unsigned") int unused_bits, @Cast("unsigned") int otherflags, + @Cast("unsigned") int black_level); + public static native int libraw_open_bayer(libraw_data_t lr, @Cast("unsigned char*") ByteBuffer data, + @Cast("unsigned") int datalen, @Cast("ushort") short _raw_width, + @Cast("ushort") short _raw_height, @Cast("ushort") short _left_margin, + @Cast("ushort") short _top_margin, @Cast("ushort") short _right_margin, + @Cast("ushort") short _bottom_margin, @Cast("unsigned char") byte procflags, + @Cast("unsigned char") byte bayer_battern, + @Cast("unsigned") int unused_bits, @Cast("unsigned") int otherflags, + @Cast("unsigned") int black_level); + public static native int libraw_open_bayer(libraw_data_t lr, @Cast("unsigned char*") byte[] data, + @Cast("unsigned") int datalen, @Cast("ushort") short _raw_width, + @Cast("ushort") short _raw_height, @Cast("ushort") short _left_margin, + @Cast("ushort") short _top_margin, @Cast("ushort") short _right_margin, + @Cast("ushort") short _bottom_margin, @Cast("unsigned char") byte procflags, + @Cast("unsigned char") byte bayer_battern, + @Cast("unsigned") int unused_bits, @Cast("unsigned") int otherflags, + @Cast("unsigned") int black_level); public static native int libraw_unpack(libraw_data_t arg0); public static native int libraw_unpack_thumb(libraw_data_t arg0); + public static native int libraw_unpack_thumb_ex(libraw_data_t arg0,int arg1); public static native void libraw_recycle_datastream(libraw_data_t arg0); public static native void libraw_recycle(libraw_data_t arg0); public static native void libraw_close(libraw_data_t arg0); @@ -1321,8 +1561,6 @@ public static native int libraw_open_file_ex(libraw_data_t arg0, String arg1, public static native int libraw_cameraCount(); /* helpers */ - public static native void libraw_set_memerror_handler(libraw_data_t arg0, memory_callback cb, - Pointer datap); public static native void libraw_set_exifparser_handler(libraw_data_t arg0, exif_parser_callback cb, Pointer datap); @@ -1355,6 +1593,7 @@ public static native int libraw_dcraw_ppm_tiff_writer(libraw_data_t lr, /* getters/setters used by 3DLut Creator */ public static native void libraw_set_demosaic(libraw_data_t lr, int value); public static native void libraw_set_output_color(libraw_data_t lr, int value); + public static native void libraw_set_adjust_maximum_thr(libraw_data_t lr, float value); public static native void libraw_set_user_mul(libraw_data_t lr, int index, float val); public static native void libraw_set_output_bps(libraw_data_t lr, int value); public static native void libraw_set_gamma(libraw_data_t lr, int index, float value); @@ -1381,14 +1620,10 @@ public static native int libraw_dcraw_ppm_tiff_writer(libraw_data_t lr, // #ifdef LIBRAW_LIBRARY_BUILD -// #define RUN_CALLBACK(stage, iter, expect) -// if (callbacks.progress_cb) -// { -// int rr = (*callbacks.progress_cb)(callbacks.progresscb_data, stage, iter, -// expect); -// if (rr != 0) -// throw LIBRAW_EXCEPTION_CANCELLED_BY_CALLBACK; -// } +// #endif + + +// #ifdef LIBRAW_LIBRARY_BUILD // #endif // #endif /* __cplusplus */ diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_afinfo_item_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_afinfo_item_t.java new file mode 100644 index 00000000000..6c6ddfa5892 --- /dev/null +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_afinfo_item_t.java @@ -0,0 +1,37 @@ +// Targeted by JavaCPP version 1.5.9-SNAPSHOT: DO NOT EDIT THIS FILE + +package org.bytedeco.libraw; + +import java.nio.*; +import org.bytedeco.javacpp.*; +import org.bytedeco.javacpp.annotation.*; + +import static org.bytedeco.javacpp.presets.javacpp.*; + +import static org.bytedeco.libraw.global.LibRaw.*; + + + @Properties(inherit = org.bytedeco.libraw.presets.LibRaw.class) +public class libraw_afinfo_item_t extends Pointer { + static { Loader.load(); } + /** Default native constructor. */ + public libraw_afinfo_item_t() { super((Pointer)null); allocate(); } + /** Native array allocator. Access with {@link Pointer#position(long)}. */ + public libraw_afinfo_item_t(long size) { super((Pointer)null); allocateArray(size); } + /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ + public libraw_afinfo_item_t(Pointer p) { super(p); } + private native void allocate(); + private native void allocateArray(long size); + @Override public libraw_afinfo_item_t position(long position) { + return (libraw_afinfo_item_t)super.position(position); + } + @Override public libraw_afinfo_item_t getPointer(long i) { + return new libraw_afinfo_item_t((Pointer)this).offsetAddress(i); + } + + public native @Cast("unsigned") int AFInfoData_tag(); public native libraw_afinfo_item_t AFInfoData_tag(int setter); + public native short AFInfoData_order(); public native libraw_afinfo_item_t AFInfoData_order(short setter); + public native @Cast("unsigned") int AFInfoData_version(); public native libraw_afinfo_item_t AFInfoData_version(int setter); + public native @Cast("unsigned") int AFInfoData_length(); public native libraw_afinfo_item_t AFInfoData_length(int setter); + public native @Cast("uchar*") BytePointer AFInfoData(); public native libraw_afinfo_item_t AFInfoData(BytePointer setter); + } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_area_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_area_t.java new file mode 100644 index 00000000000..fe41c4c95b6 --- /dev/null +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_area_t.java @@ -0,0 +1,36 @@ +// Targeted by JavaCPP version 1.5.9-SNAPSHOT: DO NOT EDIT THIS FILE + +package org.bytedeco.libraw; + +import java.nio.*; +import org.bytedeco.javacpp.*; +import org.bytedeco.javacpp.annotation.*; + +import static org.bytedeco.javacpp.presets.javacpp.*; + +import static org.bytedeco.libraw.global.LibRaw.*; + + + @Properties(inherit = org.bytedeco.libraw.presets.LibRaw.class) +public class libraw_area_t extends Pointer { + static { Loader.load(); } + /** Default native constructor. */ + public libraw_area_t() { super((Pointer)null); allocate(); } + /** Native array allocator. Access with {@link Pointer#position(long)}. */ + public libraw_area_t(long size) { super((Pointer)null); allocateArray(size); } + /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ + public libraw_area_t(Pointer p) { super(p); } + private native void allocate(); + private native void allocateArray(long size); + @Override public libraw_area_t position(long position) { + return (libraw_area_t)super.position(position); + } + @Override public libraw_area_t getPointer(long i) { + return new libraw_area_t((Pointer)this).offsetAddress(i); + } + + public native short t(); public native libraw_area_t t(short setter); + public native short l(); public native libraw_area_t l(short setter); + public native short b(); public native libraw_area_t b(short setter); + public native short r(); public native libraw_area_t r(short setter); // top, left, bottom, right pixel coordinates, (0,0) is top left pixel; + } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_callbacks_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_callbacks_t.java index 715449b710a..0cbbac0f183 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_callbacks_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_callbacks_t.java @@ -29,9 +29,6 @@ public class libraw_callbacks_t extends Pointer { return new libraw_callbacks_t((Pointer)this).offsetAddress(i); } - public native memory_callback mem_cb(); public native libraw_callbacks_t mem_cb(memory_callback setter); - public native Pointer memcb_data(); public native libraw_callbacks_t memcb_data(Pointer setter); - public native data_callback data_cb(); public native libraw_callbacks_t data_cb(data_callback setter); public native Pointer datacb_data(); public native libraw_callbacks_t datacb_data(Pointer setter); diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_canon_makernotes_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_canon_makernotes_t.java index dadbef597cf..ac5d178d111 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_canon_makernotes_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_canon_makernotes_t.java @@ -46,36 +46,8 @@ public class libraw_canon_makernotes_t extends Pointer { public native short FlashExposureLock(); public native libraw_canon_makernotes_t FlashExposureLock(short setter); public native short ExposureMode(); public native libraw_canon_makernotes_t ExposureMode(short setter); public native short AESetting(); public native libraw_canon_makernotes_t AESetting(short setter); - public native @Cast("uchar") byte HighlightTonePriority(); public native libraw_canon_makernotes_t HighlightTonePriority(byte setter); /* stabilization */ public native short ImageStabilization(); public native libraw_canon_makernotes_t ImageStabilization(short setter); - /* focus */ - public native short FocusMode(); public native libraw_canon_makernotes_t FocusMode(short setter); - public native short AFPoint(); public native libraw_canon_makernotes_t AFPoint(short setter); - public native short FocusContinuous(); public native libraw_canon_makernotes_t FocusContinuous(short setter); - public native short AFPointsInFocus30D(); public native libraw_canon_makernotes_t AFPointsInFocus30D(short setter); - public native @Cast("uchar") byte AFPointsInFocus1D(int i); public native libraw_canon_makernotes_t AFPointsInFocus1D(int i, byte setter); - @MemberGetter public native @Cast("uchar*") BytePointer AFPointsInFocus1D(); - public native @Cast("ushort") short AFPointsInFocus5D(); public native libraw_canon_makernotes_t AFPointsInFocus5D(short setter); /* bytes in reverse*/ - /* AFInfo */ - public native @Cast("ushort") short AFAreaMode(); public native libraw_canon_makernotes_t AFAreaMode(short setter); - public native @Cast("ushort") short NumAFPoints(); public native libraw_canon_makernotes_t NumAFPoints(short setter); - public native @Cast("ushort") short ValidAFPoints(); public native libraw_canon_makernotes_t ValidAFPoints(short setter); - public native @Cast("ushort") short AFImageWidth(); public native libraw_canon_makernotes_t AFImageWidth(short setter); - public native @Cast("ushort") short AFImageHeight(); public native libraw_canon_makernotes_t AFImageHeight(short setter); - public native short AFAreaWidths(int i); public native libraw_canon_makernotes_t AFAreaWidths(int i, short setter); - @MemberGetter public native ShortPointer AFAreaWidths(); /* cycle to NumAFPoints */ - public native short AFAreaHeights(int i); public native libraw_canon_makernotes_t AFAreaHeights(int i, short setter); - @MemberGetter public native ShortPointer AFAreaHeights(); /* --''-- */ - public native short AFAreaXPositions(int i); public native libraw_canon_makernotes_t AFAreaXPositions(int i, short setter); - @MemberGetter public native ShortPointer AFAreaXPositions(); /* --''-- */ - public native short AFAreaYPositions(int i); public native libraw_canon_makernotes_t AFAreaYPositions(int i, short setter); - @MemberGetter public native ShortPointer AFAreaYPositions(); /* --''-- */ - public native short AFPointsInFocus(int i); public native libraw_canon_makernotes_t AFPointsInFocus(int i, short setter); - @MemberGetter public native ShortPointer AFPointsInFocus(); /* cycle to floor((NumAFPoints+15)/16) */ - public native short AFPointsSelected(int i); public native libraw_canon_makernotes_t AFPointsSelected(int i, short setter); - @MemberGetter public native ShortPointer AFPointsSelected(); /* --''-- */ - public native @Cast("ushort") short PrimaryAFPoint(); public native libraw_canon_makernotes_t PrimaryAFPoint(short setter); /* flash */ public native short FlashMode(); public native libraw_canon_makernotes_t FlashMode(short setter); public native short FlashActivity(); public native libraw_canon_makernotes_t FlashActivity(short setter); @@ -88,20 +60,33 @@ public class libraw_canon_makernotes_t extends Pointer { /* sensor */ public native short SensorWidth(); public native libraw_canon_makernotes_t SensorWidth(short setter); public native short SensorHeight(); public native libraw_canon_makernotes_t SensorHeight(short setter); - public native short SensorLeftBorder(); public native libraw_canon_makernotes_t SensorLeftBorder(short setter); - public native short SensorTopBorder(); public native libraw_canon_makernotes_t SensorTopBorder(short setter); - public native short SensorRightBorder(); public native libraw_canon_makernotes_t SensorRightBorder(short setter); - public native short SensorBottomBorder(); public native libraw_canon_makernotes_t SensorBottomBorder(short setter); - public native short BlackMaskLeftBorder(); public native libraw_canon_makernotes_t BlackMaskLeftBorder(short setter); - public native short BlackMaskTopBorder(); public native libraw_canon_makernotes_t BlackMaskTopBorder(short setter); - public native short BlackMaskRightBorder(); public native libraw_canon_makernotes_t BlackMaskRightBorder(short setter); - public native short BlackMaskBottomBorder(); public native libraw_canon_makernotes_t BlackMaskBottomBorder(short setter); + public native int AFMicroAdjMode(); public native libraw_canon_makernotes_t AFMicroAdjMode(int setter); public native float AFMicroAdjValue(); public native libraw_canon_makernotes_t AFMicroAdjValue(float setter); public native short MakernotesFlip(); public native libraw_canon_makernotes_t MakernotesFlip(short setter); public native short RecordMode(); public native libraw_canon_makernotes_t RecordMode(short setter); public native short SRAWQuality(); public native libraw_canon_makernotes_t SRAWQuality(short setter); public native @Cast("unsigned") int wbi(); public native libraw_canon_makernotes_t wbi(int setter); - public native float firmware(); public native libraw_canon_makernotes_t firmware(float setter); public native short RF_lensID(); public native libraw_canon_makernotes_t RF_lensID(short setter); + public native int AutoLightingOptimizer(); public native libraw_canon_makernotes_t AutoLightingOptimizer(int setter); + public native int HighlightTonePriority(); public native libraw_canon_makernotes_t HighlightTonePriority(int setter); + + /* -1 = n/a 1 = Economy + 2 = Normal 3 = Fine + 4 = RAW 5 = Superfine + 7 = CRAW 130 = Normal Movie, CRM LightRaw + 131 = CRM StandardRaw */ + public native short Quality(); public native libraw_canon_makernotes_t Quality(short setter); + /* data compression curve + 0 = OFF 1 = CLogV1 2 = CLogV2? 3 = CLogV3 */ + public native int CanonLog(); public native libraw_canon_makernotes_t CanonLog(int setter); + + public native @ByRef libraw_area_t DefaultCropAbsolute(); public native libraw_canon_makernotes_t DefaultCropAbsolute(libraw_area_t setter); + public native @ByRef libraw_area_t RecommendedImageArea(); public native libraw_canon_makernotes_t RecommendedImageArea(libraw_area_t setter); // contains the image in proper aspect ratio? + public native @ByRef libraw_area_t LeftOpticalBlack(); public native libraw_canon_makernotes_t LeftOpticalBlack(libraw_area_t setter); // use this, when present, to estimate black levels? + public native @ByRef libraw_area_t UpperOpticalBlack(); public native libraw_canon_makernotes_t UpperOpticalBlack(libraw_area_t setter); + public native @ByRef libraw_area_t ActiveArea(); public native libraw_canon_makernotes_t ActiveArea(libraw_area_t setter); + + public native short ISOgain(int i); public native libraw_canon_makernotes_t ISOgain(int i, short setter); + @MemberGetter public native ShortPointer ISOgain(); // AutoISO & BaseISO per ExifTool } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_colordata_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_colordata_t.java index ea5aec77442..8cefd75a0a2 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_colordata_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_colordata_t.java @@ -36,8 +36,24 @@ public class libraw_colordata_t extends Pointer { public native @Cast("unsigned") int black(); public native libraw_colordata_t black(int setter); public native @Cast("unsigned") int data_maximum(); public native libraw_colordata_t data_maximum(int setter); public native @Cast("unsigned") int maximum(); public native libraw_colordata_t maximum(int setter); + +// Canon (SpecularWhiteLevel) +// Kodak (14N, 14nx, SLR/c/n, DCS720X, DCS760C, DCS760M, ProBack, ProBack645, P712, P880, P850) +// Olympus, except: +// C5050Z, C5060WZ, C7070WZ, C8080WZ +// SP350, SP500UZ, SP510UZ, SP565UZ +// E-10, E-20 +// E-300, E-330, E-400, E-410, E-420, E-450, E-500, E-510, E-520 +// E-1, E-3 +// XZ-1 +// Panasonic +// Pentax +// Sony +// and aliases of the above +// DNG public native long linear_max(int i); public native libraw_colordata_t linear_max(int i, long setter); @MemberGetter public native CLongPointer linear_max(); + public native float fmaximum(); public native libraw_colordata_t fmaximum(float setter); public native float fnorm(); public native libraw_colordata_t fnorm(float setter); public native @Cast("ushort") short white(int i, int j); public native libraw_colordata_t white(int i, int j, short setter); @@ -83,17 +99,17 @@ public class libraw_colordata_t extends Pointer { public native int as_shot_wb_applied(); public native libraw_colordata_t as_shot_wb_applied(int setter); public native @ByRef libraw_P1_color_t P1_color(int i); public native libraw_colordata_t P1_color(int i, libraw_P1_color_t setter); @MemberGetter public native libraw_P1_color_t P1_color(); - public native @Cast("unsigned") int raw_bps(); public native libraw_colordata_t raw_bps(int setter); /* for Phase One, raw format */ + public native @Cast("unsigned") int raw_bps(); public native libraw_colordata_t raw_bps(int setter); /* for Phase One: raw format; For other cameras: bits per pixel (copy of tiff_bps in most cases) */ /* Phase One raw format values, makernotes tag 0x010e: 0 Name unknown 1 "RAW 1" 2 "RAW 2" - 3 "IIQ L" + 3 "IIQ L" (IIQ L14) 4 Never seen 5 "IIQ S" - 6 "IIQ S v.2" + 6 "IIQ Sv2" (S14 / S14+) 7 Never seen - 8 Name unknown + 8 "IIQ L16" (IIQ L16EX / IIQ L16) */ public native int ExifColorSpace(); public native libraw_colordata_t ExifColorSpace(int setter); } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_data_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_data_t.java index e83443fd1d5..12c959a1648 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_data_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_data_t.java @@ -37,11 +37,13 @@ public class libraw_data_t extends Pointer { public native @ByRef libraw_makernotes_t makernotes(); public native libraw_data_t makernotes(libraw_makernotes_t setter); public native @ByRef libraw_shootinginfo_t shootinginfo(); public native libraw_data_t shootinginfo(libraw_shootinginfo_t setter); public native @ByRef libraw_output_params_t params(); public native libraw_data_t params(libraw_output_params_t setter); + public native @ByRef libraw_raw_unpack_params_t rawparams(); public native libraw_data_t rawparams(libraw_raw_unpack_params_t setter); public native @Cast("unsigned int") int progress_flags(); public native libraw_data_t progress_flags(int setter); public native @Cast("unsigned int") int process_warnings(); public native libraw_data_t process_warnings(int setter); public native @ByRef libraw_colordata_t color(); public native libraw_data_t color(libraw_colordata_t setter); public native @ByRef libraw_imgother_t other(); public native libraw_data_t other(libraw_imgother_t setter); public native @ByRef libraw_thumbnail_t thumbnail(); public native libraw_data_t thumbnail(libraw_thumbnail_t setter); + public native @ByRef libraw_thumbnail_list_t thumbs_list(); public native libraw_data_t thumbs_list(libraw_thumbnail_list_t setter); public native @ByRef libraw_rawdata_t rawdata(); public native libraw_data_t rawdata(libraw_rawdata_t setter); public native Pointer parent_class(); public native libraw_data_t parent_class(Pointer setter); } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_dng_levels_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_dng_levels_t.java index 80c2acec00d..9bd0a68362c 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_dng_levels_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_dng_levels_t.java @@ -38,8 +38,10 @@ public class libraw_dng_levels_t extends Pointer { public native float dng_fblack(); public native libraw_dng_levels_t dng_fblack(float setter); public native @Cast("unsigned") int dng_whitelevel(int i); public native libraw_dng_levels_t dng_whitelevel(int i, int setter); @MemberGetter public native @Cast("unsigned*") IntPointer dng_whitelevel(); - public native @Cast("unsigned") int default_crop(int i); public native libraw_dng_levels_t default_crop(int i, int setter); - @MemberGetter public native @Cast("unsigned*") IntPointer default_crop(); /* Origin and size */ + public native @Cast("ushort") short default_crop(int i); public native libraw_dng_levels_t default_crop(int i, short setter); + @MemberGetter public native @Cast("ushort*") ShortPointer default_crop(); /* Origin and size */ + public native float user_crop(int i); public native libraw_dng_levels_t user_crop(int i, float setter); + @MemberGetter public native FloatPointer user_crop(); // top-left-bottom-right relative to default_crop public native @Cast("unsigned") int preview_colorspace(); public native libraw_dng_levels_t preview_colorspace(int setter); public native float analogbalance(int i); public native libraw_dng_levels_t analogbalance(int i, float setter); @MemberGetter public native FloatPointer analogbalance(); diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_fuji_info_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_fuji_info_t.java index 2e21d56e0f6..dbfa9f598cd 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_fuji_info_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_fuji_info_t.java @@ -50,6 +50,10 @@ public class libraw_fuji_info_t extends Pointer { public native @Cast("ushort") short AFMode(); public native libraw_fuji_info_t AFMode(short setter); public native @Cast("ushort") short FocusPixel(int i); public native libraw_fuji_info_t FocusPixel(int i, short setter); @MemberGetter public native @Cast("ushort*") ShortPointer FocusPixel(); + public native @Cast("ushort") short PrioritySettings(); public native libraw_fuji_info_t PrioritySettings(short setter); + public native @Cast("unsigned") int FocusSettings(); public native libraw_fuji_info_t FocusSettings(int setter); + public native @Cast("unsigned") int AF_C_Settings(); public native libraw_fuji_info_t AF_C_Settings(int setter); + public native @Cast("ushort") short FocusWarning(); public native libraw_fuji_info_t FocusWarning(short setter); public native @Cast("ushort") short ImageStabilization(int i); public native libraw_fuji_info_t ImageStabilization(int i, short setter); @MemberGetter public native @Cast("ushort*") ShortPointer ImageStabilization(); public native @Cast("ushort") short FlashMode(); public native libraw_fuji_info_t FlashMode(short setter); @@ -72,13 +76,13 @@ public class libraw_fuji_info_t extends Pointer { 4 - 1.25x crop (electronic shutter, continuous high) */ public native @Cast("ushort") short CropMode(); public native libraw_fuji_info_t CropMode(short setter); - public native @Cast("ushort") short FrameRate(); public native libraw_fuji_info_t FrameRate(short setter); - public native @Cast("ushort") short FrameWidth(); public native libraw_fuji_info_t FrameWidth(short setter); - public native @Cast("ushort") short FrameHeight(); public native libraw_fuji_info_t FrameHeight(short setter); public native @Cast("char") byte SerialSignature(int i); public native libraw_fuji_info_t SerialSignature(int i, byte setter); @MemberGetter public native @Cast("char*") BytePointer SerialSignature(); + public native @Cast("char") byte SensorID(int i); public native libraw_fuji_info_t SensorID(int i, byte setter); + @MemberGetter public native @Cast("char*") BytePointer SensorID(); public native @Cast("char") byte RAFVersion(int i); public native libraw_fuji_info_t RAFVersion(int i, byte setter); @MemberGetter public native @Cast("char*") BytePointer RAFVersion(); + public native int RAFDataGeneration(); public native libraw_fuji_info_t RAFDataGeneration(int setter); // 0 (none), 1..4, 4096 public native @Cast("ushort") short RAFDataVersion(); public native libraw_fuji_info_t RAFDataVersion(short setter); public native int isTSNERDTS(); public native libraw_fuji_info_t isTSNERDTS(int setter); @@ -88,4 +92,24 @@ public class libraw_fuji_info_t extends Pointer { 2 - continuous high */ public native short DriveMode(); public native libraw_fuji_info_t DriveMode(short setter); + + /* + tag 0x4000 BlackLevel: + S9100, S9000, S7000, S6000fd, S5200, S5100, S5000, + S5Pro, S3Pro, S2Pro, S20Pro, + S200EXR, S100FS, + F810, F700, + E900, E550, + DBP, and aliases for all of the above + */ + public native @Cast("ushort") short BlackLevel(int i); public native libraw_fuji_info_t BlackLevel(int i, short setter); + @MemberGetter public native @Cast("ushort*") ShortPointer BlackLevel(); + public native @Cast("unsigned") int RAFData_ImageSizeTable(int i); public native libraw_fuji_info_t RAFData_ImageSizeTable(int i, int setter); + @MemberGetter public native @Cast("unsigned*") IntPointer RAFData_ImageSizeTable(); + public native int AutoBracketing(); public native libraw_fuji_info_t AutoBracketing(int setter); + public native int SequenceNumber(); public native libraw_fuji_info_t SequenceNumber(int setter); + public native int SeriesLength(); public native libraw_fuji_info_t SeriesLength(int setter); + public native float PixelShiftOffset(int i); public native libraw_fuji_info_t PixelShiftOffset(int i, float setter); + @MemberGetter public native FloatPointer PixelShiftOffset(); + public native int ImageCount(); public native libraw_fuji_info_t ImageCount(int setter); } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_image_sizes_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_image_sizes_t.java index 45cb4389834..8e91d1982b4 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_image_sizes_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_image_sizes_t.java @@ -42,5 +42,7 @@ public class libraw_image_sizes_t extends Pointer { public native int flip(); public native libraw_image_sizes_t flip(int setter); public native int mask(int i, int j); public native libraw_image_sizes_t mask(int i, int j, int setter); @MemberGetter public native @Cast("int(* /*[8]*/ )[4]") IntPointer mask(); - public native @ByRef libraw_raw_inset_crop_t raw_inset_crop(); public native libraw_image_sizes_t raw_inset_crop(libraw_raw_inset_crop_t setter); + public native @Cast("ushort") short raw_aspect(); public native libraw_image_sizes_t raw_aspect(short setter); + public native @ByRef libraw_raw_inset_crop_t raw_inset_crops(int i); public native libraw_image_sizes_t raw_inset_crops(int i, libraw_raw_inset_crop_t setter); + @MemberGetter public native libraw_raw_inset_crop_t raw_inset_crops(); } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_makernotes_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_makernotes_t.java index b02e61a4056..47c33846a52 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_makernotes_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_makernotes_t.java @@ -39,6 +39,7 @@ public class libraw_makernotes_t extends Pointer { public native @ByRef libraw_panasonic_makernotes_t panasonic(); public native libraw_makernotes_t panasonic(libraw_panasonic_makernotes_t setter); public native @ByRef libraw_pentax_makernotes_t pentax(); public native libraw_makernotes_t pentax(libraw_pentax_makernotes_t setter); public native @ByRef libraw_p1_makernotes_t phaseone(); public native libraw_makernotes_t phaseone(libraw_p1_makernotes_t setter); + public native @ByRef libraw_ricoh_makernotes_t ricoh(); public native libraw_makernotes_t ricoh(libraw_ricoh_makernotes_t setter); public native @ByRef libraw_samsung_makernotes_t samsung(); public native libraw_makernotes_t samsung(libraw_samsung_makernotes_t setter); public native @ByRef libraw_metadata_common_t common(); public native libraw_makernotes_t common(libraw_metadata_common_t setter); } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_metadata_common_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_metadata_common_t.java index 017db36116d..1d9ac81513e 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_metadata_common_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_metadata_common_t.java @@ -48,4 +48,8 @@ public class libraw_metadata_common_t extends Pointer { public native @Cast("ushort") short ColorSpace(); public native libraw_metadata_common_t ColorSpace(short setter); public native @Cast("char") byte firmware(int i); public native libraw_metadata_common_t firmware(int i, byte setter); @MemberGetter public native @Cast("char*") BytePointer firmware(); + public native float ExposureCalibrationShift(); public native libraw_metadata_common_t ExposureCalibrationShift(float setter); + public native @ByRef libraw_afinfo_item_t afdata(int i); public native libraw_metadata_common_t afdata(int i, libraw_afinfo_item_t setter); + @MemberGetter public native libraw_afinfo_item_t afdata(); + public native int afcount(); public native libraw_metadata_common_t afcount(int setter); } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_nikon_makernotes_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_nikon_makernotes_t.java index 30820f1c733..ba96177f965 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_nikon_makernotes_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_nikon_makernotes_t.java @@ -37,24 +37,6 @@ public class libraw_nikon_makernotes_t extends Pointer { @MemberGetter public native @Cast("uchar*") BytePointer ImageStabilization(); public native @Cast("uchar") byte VibrationReduction(); public native libraw_nikon_makernotes_t VibrationReduction(byte setter); public native @Cast("uchar") byte VRMode(); public native libraw_nikon_makernotes_t VRMode(byte setter); - /* focus */ - public native @Cast("char") byte FocusMode(int i); public native libraw_nikon_makernotes_t FocusMode(int i, byte setter); - @MemberGetter public native @Cast("char*") BytePointer FocusMode(); - public native @Cast("uchar") byte AFPoint(); public native libraw_nikon_makernotes_t AFPoint(byte setter); - public native @Cast("ushort") short AFPointsInFocus(); public native libraw_nikon_makernotes_t AFPointsInFocus(short setter); - public native @Cast("uchar") byte ContrastDetectAF(); public native libraw_nikon_makernotes_t ContrastDetectAF(byte setter); - public native @Cast("uchar") byte AFAreaMode(); public native libraw_nikon_makernotes_t AFAreaMode(byte setter); - public native @Cast("uchar") byte PhaseDetectAF(); public native libraw_nikon_makernotes_t PhaseDetectAF(byte setter); - public native @Cast("uchar") byte PrimaryAFPoint(); public native libraw_nikon_makernotes_t PrimaryAFPoint(byte setter); - public native @Cast("uchar") byte AFPointsUsed(int i); public native libraw_nikon_makernotes_t AFPointsUsed(int i, byte setter); - @MemberGetter public native @Cast("uchar*") BytePointer AFPointsUsed(); - public native @Cast("ushort") short AFImageWidth(); public native libraw_nikon_makernotes_t AFImageWidth(short setter); - public native @Cast("ushort") short AFImageHeight(); public native libraw_nikon_makernotes_t AFImageHeight(short setter); - public native @Cast("ushort") short AFAreaXPposition(); public native libraw_nikon_makernotes_t AFAreaXPposition(short setter); - public native @Cast("ushort") short AFAreaYPosition(); public native libraw_nikon_makernotes_t AFAreaYPosition(short setter); - public native @Cast("ushort") short AFAreaWidth(); public native libraw_nikon_makernotes_t AFAreaWidth(short setter); - public native @Cast("ushort") short AFAreaHeight(); public native libraw_nikon_makernotes_t AFAreaHeight(short setter); - public native @Cast("uchar") byte ContrastDetectAFInFocus(); public native libraw_nikon_makernotes_t ContrastDetectAFInFocus(byte setter); /* flash */ public native @Cast("char") byte FlashSetting(int i); public native libraw_nikon_makernotes_t FlashSetting(int i, byte setter); @MemberGetter public native @Cast("char*") BytePointer FlashSetting(); @@ -83,7 +65,23 @@ public class libraw_nikon_makernotes_t extends Pointer { public native @Cast("uchar") byte FlashGroupOutputAndCompensation(int i); public native libraw_nikon_makernotes_t FlashGroupOutputAndCompensation(int i, byte setter); @MemberGetter public native @Cast("uchar*") BytePointer FlashGroupOutputAndCompensation(); public native @Cast("uchar") byte FlashColorFilter(); public native libraw_nikon_makernotes_t FlashColorFilter(byte setter); + +/* NEF compression, comments follow those for ExifTool tag 0x0093: + 1: Lossy (type 1) + 2: Uncompressed + 3: Lossless + 4: Lossy (type 2) + 5: Striped packed 12-bit + 6: Uncompressed (14-bit reduced to 12-bit) + 7: Unpacked 12-bit + 8: Small raw + 9: Packed 12-bit + 10: Packed 14-bit + 13: High Efficiency (HE) + 14: High Efficiency* (HE*) +*/ public native @Cast("ushort") short NEFCompression(); public native libraw_nikon_makernotes_t NEFCompression(short setter); + public native int ExposureMode(); public native libraw_nikon_makernotes_t ExposureMode(int setter); public native int ExposureProgram(); public native libraw_nikon_makernotes_t ExposureProgram(int setter); public native int nMEshots(); public native libraw_nikon_makernotes_t nMEshots(int setter); @@ -105,4 +103,10 @@ public class libraw_nikon_makernotes_t extends Pointer { public native @ByRef libraw_sensor_highspeed_crop_t SensorHighSpeedCrop(); public native libraw_nikon_makernotes_t SensorHighSpeedCrop(libraw_sensor_highspeed_crop_t setter); public native @Cast("ushort") short SensorWidth(); public native libraw_nikon_makernotes_t SensorWidth(short setter); public native @Cast("ushort") short SensorHeight(); public native libraw_nikon_makernotes_t SensorHeight(short setter); + public native @Cast("ushort") short Active_D_Lighting(); public native libraw_nikon_makernotes_t Active_D_Lighting(short setter); + public native @Cast("unsigned") int ShotInfoVersion(); public native libraw_nikon_makernotes_t ShotInfoVersion(int setter); + public native short MakernotesFlip(); public native libraw_nikon_makernotes_t MakernotesFlip(short setter); + public native double RollAngle(); public native libraw_nikon_makernotes_t RollAngle(double setter); // positive is clockwise, CW + public native double PitchAngle(); public native libraw_nikon_makernotes_t PitchAngle(double setter); // positive is upwords + public native double YawAngle(); public native libraw_nikon_makernotes_t YawAngle(double setter); // positive is to the right } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_olympus_makernotes_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_olympus_makernotes_t.java index 8cd211e1146..26c58a373a1 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_olympus_makernotes_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_olympus_makernotes_t.java @@ -29,8 +29,14 @@ public class libraw_olympus_makernotes_t extends Pointer { return new libraw_olympus_makernotes_t((Pointer)this).offsetAddress(i); } + public native @Cast("char") byte CameraType2(int i); public native libraw_olympus_makernotes_t CameraType2(int i, byte setter); + @MemberGetter public native @Cast("char*") BytePointer CameraType2(); + public native @Cast("ushort") short ValidBits(); public native libraw_olympus_makernotes_t ValidBits(short setter); public native int SensorCalibration(int i); public native libraw_olympus_makernotes_t SensorCalibration(int i, int setter); @MemberGetter public native IntPointer SensorCalibration(); + public native @Cast("ushort") short DriveMode(int i); public native libraw_olympus_makernotes_t DriveMode(int i, short setter); + @MemberGetter public native @Cast("ushort*") ShortPointer DriveMode(); + public native @Cast("ushort") short ColorSpace(); public native libraw_olympus_makernotes_t ColorSpace(short setter); public native @Cast("ushort") short FocusMode(int i); public native libraw_olympus_makernotes_t FocusMode(int i, short setter); @MemberGetter public native @Cast("ushort*") ShortPointer FocusMode(); public native @Cast("ushort") short AutoFocus(); public native libraw_olympus_makernotes_t AutoFocus(short setter); @@ -40,12 +46,22 @@ public class libraw_olympus_makernotes_t extends Pointer { public native double AFPointSelected(int i); public native libraw_olympus_makernotes_t AFPointSelected(int i, double setter); @MemberGetter public native DoublePointer AFPointSelected(); public native @Cast("ushort") short AFResult(); public native libraw_olympus_makernotes_t AFResult(short setter); - public native @Cast("ushort") short DriveMode(int i); public native libraw_olympus_makernotes_t DriveMode(int i, short setter); - @MemberGetter public native @Cast("ushort*") ShortPointer DriveMode(); - public native @Cast("ushort") short ColorSpace(); public native libraw_olympus_makernotes_t ColorSpace(short setter); public native @Cast("uchar") byte AFFineTune(); public native libraw_olympus_makernotes_t AFFineTune(byte setter); public native short AFFineTuneAdj(int i); public native libraw_olympus_makernotes_t AFFineTuneAdj(int i, short setter); @MemberGetter public native ShortPointer AFFineTuneAdj(); - public native @Cast("char") byte CameraType2(int i); public native libraw_olympus_makernotes_t CameraType2(int i, byte setter); - @MemberGetter public native @Cast("char*") BytePointer CameraType2(); + public native @Cast("unsigned") int SpecialMode(int i); public native libraw_olympus_makernotes_t SpecialMode(int i, int setter); + @MemberGetter public native @Cast("unsigned*") IntPointer SpecialMode(); + public native @Cast("ushort") short ZoomStepCount(); public native libraw_olympus_makernotes_t ZoomStepCount(short setter); + public native @Cast("ushort") short FocusStepCount(); public native libraw_olympus_makernotes_t FocusStepCount(short setter); + public native @Cast("ushort") short FocusStepInfinity(); public native libraw_olympus_makernotes_t FocusStepInfinity(short setter); + public native @Cast("ushort") short FocusStepNear(); public native libraw_olympus_makernotes_t FocusStepNear(short setter); + public native double FocusDistance(); public native libraw_olympus_makernotes_t FocusDistance(double setter); + public native @Cast("ushort") short AspectFrame(int i); public native libraw_olympus_makernotes_t AspectFrame(int i, short setter); + @MemberGetter public native @Cast("ushort*") ShortPointer AspectFrame(); // left, top, width, height + public native @Cast("unsigned") int StackedImage(int i); public native libraw_olympus_makernotes_t StackedImage(int i, int setter); + @MemberGetter public native @Cast("unsigned*") IntPointer StackedImage(); + public native @Cast("uchar") byte isLiveND(); public native libraw_olympus_makernotes_t isLiveND(byte setter); + public native @Cast("unsigned") int LiveNDfactor(); public native libraw_olympus_makernotes_t LiveNDfactor(int setter); + public native @Cast("ushort") short Panorama_mode(); public native libraw_olympus_makernotes_t Panorama_mode(short setter); + public native @Cast("ushort") short Panorama_frameNum(); public native libraw_olympus_makernotes_t Panorama_frameNum(short setter); } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_output_params_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_output_params_t.java index ecd92a85376..4f7789b18b8 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_output_params_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_output_params_t.java @@ -39,7 +39,6 @@ public class libraw_output_params_t extends Pointer { @MemberGetter public native DoublePointer gamm(); /* -g */ public native float user_mul(int i); public native libraw_output_params_t user_mul(int i, float setter); @MemberGetter public native FloatPointer user_mul(); /* -r mul0 mul1 mul2 mul3 */ - public native @Cast("unsigned") int shot_select(); public native libraw_output_params_t shot_select(int setter); /* -s */ public native float bright(); public native libraw_output_params_t bright(float setter); /* -b */ public native float threshold(); public native libraw_output_params_t threshold(float setter); /* -n */ public native int half_size(); public native libraw_output_params_t half_size(int setter); /* -h */ @@ -55,6 +54,7 @@ public class libraw_output_params_t extends Pointer { public native @Cast("char*") BytePointer dark_frame(); public native libraw_output_params_t dark_frame(BytePointer setter); /* -K */ public native int output_bps(); public native libraw_output_params_t output_bps(int setter); /* -4 */ public native int output_tiff(); public native libraw_output_params_t output_tiff(int setter); /* -T */ + public native int output_flags(); public native libraw_output_params_t output_flags(int setter); public native int user_flip(); public native libraw_output_params_t user_flip(int setter); /* -t */ public native int user_qual(); public native libraw_output_params_t user_qual(int setter); /* -q */ public native int user_black(); public native libraw_output_params_t user_black(int setter); /* -k */ @@ -74,25 +74,8 @@ public class libraw_output_params_t extends Pointer { public native int exp_correc(); public native libraw_output_params_t exp_correc(int setter); public native float exp_shift(); public native libraw_output_params_t exp_shift(float setter); public native float exp_preser(); public native libraw_output_params_t exp_preser(float setter); - /* Raw speed */ - public native int use_rawspeed(); public native libraw_output_params_t use_rawspeed(int setter); - /* DNG SDK */ - public native int use_dngsdk(); public native libraw_output_params_t use_dngsdk(int setter); /* Disable Auto-scale */ public native int no_auto_scale(); public native libraw_output_params_t no_auto_scale(int setter); /* Disable intepolation */ public native int no_interpolation(); public native libraw_output_params_t no_interpolation(int setter); - /* int x3f_flags; */ - /* Sony ARW2 digging mode */ - /* int sony_arw2_options; */ - public native @Cast("unsigned") int raw_processing_options(); public native libraw_output_params_t raw_processing_options(int setter); - public native @Cast("unsigned") int max_raw_memory_mb(); public native libraw_output_params_t max_raw_memory_mb(int setter); - public native int sony_arw2_posterization_thr(); public native libraw_output_params_t sony_arw2_posterization_thr(int setter); - /* Nikon Coolscan */ - public native float coolscan_nef_gamma(); public native libraw_output_params_t coolscan_nef_gamma(float setter); - public native @Cast("char") byte p4shot_order(int i); public native libraw_output_params_t p4shot_order(int i, byte setter); - @MemberGetter public native @Cast("char*") BytePointer p4shot_order(); - /* Custom camera list */ - public native @Cast("char*") BytePointer custom_camera_strings(int i); public native libraw_output_params_t custom_camera_strings(int i, BytePointer setter); - public native @Cast("char**") PointerPointer custom_camera_strings(); public native libraw_output_params_t custom_camera_strings(PointerPointer setter); } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_panasonic_makernotes_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_panasonic_makernotes_t.java index fc56d76a546..9f8ae54aec7 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_panasonic_makernotes_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_panasonic_makernotes_t.java @@ -44,4 +44,8 @@ public class libraw_panasonic_makernotes_t extends Pointer { public native float gamma(); public native libraw_panasonic_makernotes_t gamma(float setter); public native int HighISOMultiplier(int i); public native libraw_panasonic_makernotes_t HighISOMultiplier(int i, int setter); @MemberGetter public native IntPointer HighISOMultiplier(); /* 0->R, 1->G, 2->B */ + public native short FocusStepNear(); public native libraw_panasonic_makernotes_t FocusStepNear(short setter); + public native short FocusStepCount(); public native libraw_panasonic_makernotes_t FocusStepCount(short setter); + public native @Cast("unsigned") int ZoomPosition(); public native libraw_panasonic_makernotes_t ZoomPosition(int setter); + public native @Cast("unsigned") int LensManufacturer(); public native libraw_panasonic_makernotes_t LensManufacturer(int setter); } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_pentax_makernotes_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_pentax_makernotes_t.java index 7d5c99d40de..2cfc9a92343 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_pentax_makernotes_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_pentax_makernotes_t.java @@ -29,17 +29,19 @@ public class libraw_pentax_makernotes_t extends Pointer { return new libraw_pentax_makernotes_t((Pointer)this).offsetAddress(i); } - public native @Cast("ushort") short FocusMode(); public native libraw_pentax_makernotes_t FocusMode(short setter); - public native @Cast("ushort") short AFPointSelected(); public native libraw_pentax_makernotes_t AFPointSelected(short setter); - public native @Cast("unsigned") int AFPointsInFocus(); public native libraw_pentax_makernotes_t AFPointsInFocus(int setter); - public native @Cast("ushort") short FocusPosition(); public native libraw_pentax_makernotes_t FocusPosition(short setter); public native @Cast("uchar") byte DriveMode(int i); public native libraw_pentax_makernotes_t DriveMode(int i, byte setter); @MemberGetter public native @Cast("uchar*") BytePointer DriveMode(); + public native @Cast("ushort") short FocusMode(int i); public native libraw_pentax_makernotes_t FocusMode(int i, short setter); + @MemberGetter public native @Cast("ushort*") ShortPointer FocusMode(); + public native @Cast("ushort") short AFPointSelected(int i); public native libraw_pentax_makernotes_t AFPointSelected(int i, short setter); + @MemberGetter public native @Cast("ushort*") ShortPointer AFPointSelected(); + public native @Cast("ushort") short AFPointSelected_Area(); public native libraw_pentax_makernotes_t AFPointSelected_Area(short setter); + public native int AFPointsInFocus_version(); public native libraw_pentax_makernotes_t AFPointsInFocus_version(int setter); + public native @Cast("unsigned") int AFPointsInFocus(); public native libraw_pentax_makernotes_t AFPointsInFocus(int setter); + public native @Cast("ushort") short FocusPosition(); public native libraw_pentax_makernotes_t FocusPosition(short setter); public native short AFAdjustment(); public native libraw_pentax_makernotes_t AFAdjustment(short setter); + public native @Cast("uchar") byte AFPointMode(); public native libraw_pentax_makernotes_t AFPointMode(byte setter); public native @Cast("uchar") byte MultiExposure(); public native libraw_pentax_makernotes_t MultiExposure(byte setter); /* last bit is not "1" if ME is not used */ public native @Cast("ushort") short Quality(); public native libraw_pentax_makernotes_t Quality(short setter); /* 4 is raw, 7 is raw w/ pixel shift, 8 is raw w/ dynamic pixel shift */ - /* uchar AFPointMode; */ - /* uchar SRResult; */ - /* uchar ShakeReduction; */ } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_raw_inset_crop_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_raw_inset_crop_t.java index b9e92797da8..ef79b45778f 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_raw_inset_crop_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_raw_inset_crop_t.java @@ -33,5 +33,4 @@ public class libraw_raw_inset_crop_t extends Pointer { public native @Cast("ushort") short ctop(); public native libraw_raw_inset_crop_t ctop(short setter); public native @Cast("ushort") short cwidth(); public native libraw_raw_inset_crop_t cwidth(short setter); public native @Cast("ushort") short cheight(); public native libraw_raw_inset_crop_t cheight(short setter); - public native @Cast("ushort") short aspect(); public native libraw_raw_inset_crop_t aspect(short setter); } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_raw_unpack_params_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_raw_unpack_params_t.java new file mode 100644 index 00000000000..066ad804163 --- /dev/null +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_raw_unpack_params_t.java @@ -0,0 +1,48 @@ +// Targeted by JavaCPP version 1.5.9-SNAPSHOT: DO NOT EDIT THIS FILE + +package org.bytedeco.libraw; + +import java.nio.*; +import org.bytedeco.javacpp.*; +import org.bytedeco.javacpp.annotation.*; + +import static org.bytedeco.javacpp.presets.javacpp.*; + +import static org.bytedeco.libraw.global.LibRaw.*; + + + @Properties(inherit = org.bytedeco.libraw.presets.LibRaw.class) +public class libraw_raw_unpack_params_t extends Pointer { + static { Loader.load(); } + /** Default native constructor. */ + public libraw_raw_unpack_params_t() { super((Pointer)null); allocate(); } + /** Native array allocator. Access with {@link Pointer#position(long)}. */ + public libraw_raw_unpack_params_t(long size) { super((Pointer)null); allocateArray(size); } + /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ + public libraw_raw_unpack_params_t(Pointer p) { super(p); } + private native void allocate(); + private native void allocateArray(long size); + @Override public libraw_raw_unpack_params_t position(long position) { + return (libraw_raw_unpack_params_t)super.position(position); + } + @Override public libraw_raw_unpack_params_t getPointer(long i) { + return new libraw_raw_unpack_params_t((Pointer)this).offsetAddress(i); + } + + /* Raw speed */ + public native int use_rawspeed(); public native libraw_raw_unpack_params_t use_rawspeed(int setter); + /* DNG SDK */ + public native int use_dngsdk(); public native libraw_raw_unpack_params_t use_dngsdk(int setter); + public native @Cast("unsigned") int options(); public native libraw_raw_unpack_params_t options(int setter); + public native @Cast("unsigned") int shot_select(); public native libraw_raw_unpack_params_t shot_select(int setter); /* -s */ + public native @Cast("unsigned") int specials(); public native libraw_raw_unpack_params_t specials(int setter); + public native @Cast("unsigned") int max_raw_memory_mb(); public native libraw_raw_unpack_params_t max_raw_memory_mb(int setter); + public native int sony_arw2_posterization_thr(); public native libraw_raw_unpack_params_t sony_arw2_posterization_thr(int setter); + /* Nikon Coolscan */ + public native float coolscan_nef_gamma(); public native libraw_raw_unpack_params_t coolscan_nef_gamma(float setter); + public native @Cast("char") byte p4shot_order(int i); public native libraw_raw_unpack_params_t p4shot_order(int i, byte setter); + @MemberGetter public native @Cast("char*") BytePointer p4shot_order(); + /* Custom camera list */ + public native @Cast("char*") BytePointer custom_camera_strings(int i); public native libraw_raw_unpack_params_t custom_camera_strings(int i, BytePointer setter); + public native @Cast("char**") PointerPointer custom_camera_strings(); public native libraw_raw_unpack_params_t custom_camera_strings(PointerPointer setter); + } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_ricoh_makernotes_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_ricoh_makernotes_t.java new file mode 100644 index 00000000000..0bcf069ab78 --- /dev/null +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_ricoh_makernotes_t.java @@ -0,0 +1,50 @@ +// Targeted by JavaCPP version 1.5.9-SNAPSHOT: DO NOT EDIT THIS FILE + +package org.bytedeco.libraw; + +import java.nio.*; +import org.bytedeco.javacpp.*; +import org.bytedeco.javacpp.annotation.*; + +import static org.bytedeco.javacpp.presets.javacpp.*; + +import static org.bytedeco.libraw.global.LibRaw.*; + + + @Properties(inherit = org.bytedeco.libraw.presets.LibRaw.class) +public class libraw_ricoh_makernotes_t extends Pointer { + static { Loader.load(); } + /** Default native constructor. */ + public libraw_ricoh_makernotes_t() { super((Pointer)null); allocate(); } + /** Native array allocator. Access with {@link Pointer#position(long)}. */ + public libraw_ricoh_makernotes_t(long size) { super((Pointer)null); allocateArray(size); } + /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ + public libraw_ricoh_makernotes_t(Pointer p) { super(p); } + private native void allocate(); + private native void allocateArray(long size); + @Override public libraw_ricoh_makernotes_t position(long position) { + return (libraw_ricoh_makernotes_t)super.position(position); + } + @Override public libraw_ricoh_makernotes_t getPointer(long i) { + return new libraw_ricoh_makernotes_t((Pointer)this).offsetAddress(i); + } + + public native @Cast("ushort") short AFStatus(); public native libraw_ricoh_makernotes_t AFStatus(short setter); + public native @Cast("unsigned") int AFAreaXPosition(int i); public native libraw_ricoh_makernotes_t AFAreaXPosition(int i, int setter); + @MemberGetter public native @Cast("unsigned*") IntPointer AFAreaXPosition(); + public native @Cast("unsigned") int AFAreaYPosition(int i); public native libraw_ricoh_makernotes_t AFAreaYPosition(int i, int setter); + @MemberGetter public native @Cast("unsigned*") IntPointer AFAreaYPosition(); + public native @Cast("ushort") short AFAreaMode(); public native libraw_ricoh_makernotes_t AFAreaMode(short setter); + public native @Cast("unsigned") int SensorWidth(); public native libraw_ricoh_makernotes_t SensorWidth(int setter); + public native @Cast("unsigned") int SensorHeight(); public native libraw_ricoh_makernotes_t SensorHeight(int setter); + public native @Cast("unsigned") int CroppedImageWidth(); public native libraw_ricoh_makernotes_t CroppedImageWidth(int setter); + public native @Cast("unsigned") int CroppedImageHeight(); public native libraw_ricoh_makernotes_t CroppedImageHeight(int setter); + public native @Cast("ushort") short WideAdapter(); public native libraw_ricoh_makernotes_t WideAdapter(short setter); + public native @Cast("ushort") short CropMode(); public native libraw_ricoh_makernotes_t CropMode(short setter); + public native @Cast("ushort") short NDFilter(); public native libraw_ricoh_makernotes_t NDFilter(short setter); + public native @Cast("ushort") short AutoBracketing(); public native libraw_ricoh_makernotes_t AutoBracketing(short setter); + public native @Cast("ushort") short MacroMode(); public native libraw_ricoh_makernotes_t MacroMode(short setter); + public native @Cast("ushort") short FlashMode(); public native libraw_ricoh_makernotes_t FlashMode(short setter); + public native double FlashExposureComp(); public native libraw_ricoh_makernotes_t FlashExposureComp(double setter); + public native double ManualFlashOutput(); public native libraw_ricoh_makernotes_t ManualFlashOutput(double setter); + } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_sony_info_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_sony_info_t.java index 43e547789b0..264ab74822b 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/libraw_sony_info_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_sony_info_t.java @@ -29,42 +29,54 @@ public class libraw_sony_info_t extends Pointer { return new libraw_sony_info_t((Pointer)this).offsetAddress(i); } - public native @Cast("ushort") short CameraType(); public native libraw_sony_info_t CameraType(short setter); - public native @Cast("uchar") byte Sony0x9400_version(); public native libraw_sony_info_t Sony0x9400_version(byte setter); /* 0 if not found/deciphered, 0xa, 0xb, 0xc - following exiftool convention */ +/* afdata: + 0x0010 CameraInfo + 0x2020 AFPointsUsed + 0x2022 FocalPlaneAFPointsUsed + 0x202a Tag202a + 0x940e AFInfo +*/ + public native @Cast("ushort") short CameraType(); public native libraw_sony_info_t CameraType(short setter); // init in 0xffff + public native @Cast("uchar") byte Sony0x9400_version(); public native libraw_sony_info_t Sony0x9400_version(byte setter); /* 0 if not found/deciphered, + 0xa, 0xb, 0xc following exiftool convention */ public native @Cast("uchar") byte Sony0x9400_ReleaseMode2(); public native libraw_sony_info_t Sony0x9400_ReleaseMode2(byte setter); public native @Cast("unsigned") int Sony0x9400_SequenceImageNumber(); public native libraw_sony_info_t Sony0x9400_SequenceImageNumber(int setter); public native @Cast("uchar") byte Sony0x9400_SequenceLength1(); public native libraw_sony_info_t Sony0x9400_SequenceLength1(byte setter); public native @Cast("unsigned") int Sony0x9400_SequenceFileNumber(); public native libraw_sony_info_t Sony0x9400_SequenceFileNumber(int setter); public native @Cast("uchar") byte Sony0x9400_SequenceLength2(); public native libraw_sony_info_t Sony0x9400_SequenceLength2(byte setter); - public native @Cast("uint8_t") byte AFAreaModeSetting(); public native libraw_sony_info_t AFAreaModeSetting(byte setter); + public native @Cast("uint8_t") byte AFAreaModeSetting(); public native libraw_sony_info_t AFAreaModeSetting(byte setter); // init in 0xff; + + public native @Cast("uint16_t") short AFAreaMode(); public native libraw_sony_info_t AFAreaMode(short setter); // init in 0xffff; + public native @Cast("ushort") short FlexibleSpotPosition(int i); public native libraw_sony_info_t FlexibleSpotPosition(int i, short setter); - @MemberGetter public native @Cast("ushort*") ShortPointer FlexibleSpotPosition(); - public native @Cast("uint8_t") byte AFPointSelected(); public native libraw_sony_info_t AFPointSelected(byte setter); + @MemberGetter public native @Cast("ushort*") ShortPointer FlexibleSpotPosition(); // init in (0xffff, 0xffff) + public native @Cast("uint8_t") byte AFPointSelected(); public native libraw_sony_info_t AFPointSelected(byte setter); // init in 0xff + public native @Cast("uint8_t") byte AFPointSelected_0x201e(); public native libraw_sony_info_t AFPointSelected_0x201e(byte setter); // init in 0xff + public native short nAFPointsUsed(); public native libraw_sony_info_t nAFPointsUsed(short setter); public native @Cast("uint8_t") byte AFPointsUsed(int i); public native libraw_sony_info_t AFPointsUsed(int i, byte setter); @MemberGetter public native @Cast("uint8_t*") BytePointer AFPointsUsed(); - public native @Cast("uint8_t") byte AFTracking(); public native libraw_sony_info_t AFTracking(byte setter); + public native @Cast("uint8_t") byte AFTracking(); public native libraw_sony_info_t AFTracking(byte setter); // init in 0xff public native @Cast("uint8_t") byte AFType(); public native libraw_sony_info_t AFType(byte setter); public native @Cast("ushort") short FocusLocation(int i); public native libraw_sony_info_t FocusLocation(int i, short setter); @MemberGetter public native @Cast("ushort*") ShortPointer FocusLocation(); - - - public native @Cast("uchar") byte AFMicroAdjRegisteredLenses(); public native libraw_sony_info_t AFMicroAdjRegisteredLenses(byte setter); + public native @Cast("ushort") short FocusPosition(); public native libraw_sony_info_t FocusPosition(short setter); // init in 0xffff + public native @Cast("int8_t") byte AFMicroAdjValue(); public native libraw_sony_info_t AFMicroAdjValue(byte setter); // init in 0x7f + public native @Cast("int8_t") byte AFMicroAdjOn(); public native libraw_sony_info_t AFMicroAdjOn(byte setter); // init in -1 + public native @Cast("uchar") byte AFMicroAdjRegisteredLenses(); public native libraw_sony_info_t AFMicroAdjRegisteredLenses(byte setter); // init in 0xff public native @Cast("ushort") short VariableLowPassFilter(); public native libraw_sony_info_t VariableLowPassFilter(short setter); - public native @Cast("unsigned") int LongExposureNoiseReduction(); public native libraw_sony_info_t LongExposureNoiseReduction(int setter); - public native @Cast("ushort") short HighISONoiseReduction(); public native libraw_sony_info_t HighISONoiseReduction(short setter); + public native @Cast("unsigned") int LongExposureNoiseReduction(); public native libraw_sony_info_t LongExposureNoiseReduction(int setter); // init in 0xffffffff + public native @Cast("ushort") short HighISONoiseReduction(); public native libraw_sony_info_t HighISONoiseReduction(short setter); // init in 0xffff public native @Cast("ushort") short HDR(int i); public native libraw_sony_info_t HDR(int i, short setter); @MemberGetter public native @Cast("ushort*") ShortPointer HDR(); public native @Cast("ushort") short group2010(); public native libraw_sony_info_t group2010(short setter); - public native @Cast("ushort") short real_iso_offset(); public native libraw_sony_info_t real_iso_offset(short setter); + public native @Cast("ushort") short group9050(); public native libraw_sony_info_t group9050(short setter); + public native @Cast("ushort") short real_iso_offset(); public native libraw_sony_info_t real_iso_offset(short setter); // init in 0xffff public native @Cast("ushort") short MeteringMode_offset(); public native libraw_sony_info_t MeteringMode_offset(short setter); public native @Cast("ushort") short ExposureProgram_offset(); public native libraw_sony_info_t ExposureProgram_offset(short setter); public native @Cast("ushort") short ReleaseMode2_offset(); public native libraw_sony_info_t ReleaseMode2_offset(short setter); - public native @Cast("unsigned") int MinoltaCamID(); public native libraw_sony_info_t MinoltaCamID(int setter); + public native @Cast("unsigned") int MinoltaCamID(); public native libraw_sony_info_t MinoltaCamID(int setter); // init in 0xffffffff public native float firmware(); public native libraw_sony_info_t firmware(float setter); - public native @Cast("ushort") short ImageCount3_offset(); public native libraw_sony_info_t ImageCount3_offset(short setter); + public native @Cast("ushort") short ImageCount3_offset(); public native libraw_sony_info_t ImageCount3_offset(short setter); // init in 0xffff public native @Cast("unsigned") int ImageCount3(); public native libraw_sony_info_t ImageCount3(int setter); - public native @Cast("unsigned") int ElectronicFrontCurtainShutter(); public native libraw_sony_info_t ElectronicFrontCurtainShutter(int setter); + public native @Cast("unsigned") int ElectronicFrontCurtainShutter(); public native libraw_sony_info_t ElectronicFrontCurtainShutter(int setter); // init in 0xffffffff public native @Cast("ushort") short MeteringMode2(); public native libraw_sony_info_t MeteringMode2(short setter); public native @Cast("char") byte SonyDateTime(int i); public native libraw_sony_info_t SonyDateTime(int i, byte setter); @MemberGetter public native @Cast("char*") BytePointer SonyDateTime(); @@ -76,20 +88,33 @@ public class libraw_sony_info_t extends Pointer { here */ public native @Cast("ushort") short prd_ImageHeight(); public native libraw_sony_info_t prd_ImageHeight(short setter); public native @Cast("ushort") short prd_ImageWidth(); public native libraw_sony_info_t prd_ImageWidth(short setter); - public native @Cast("ushort") short prd_RawBitDepth(); public native libraw_sony_info_t prd_RawBitDepth(short setter); + public native @Cast("ushort") short prd_Total_bps(); public native libraw_sony_info_t prd_Total_bps(short setter); + public native @Cast("ushort") short prd_Active_bps(); public native libraw_sony_info_t prd_Active_bps(short setter); public native @Cast("ushort") short prd_StorageMethod(); public native libraw_sony_info_t prd_StorageMethod(short setter); /* 82 -> Padded; 89 -> Linear */ public native @Cast("ushort") short prd_BayerPattern(); public native libraw_sony_info_t prd_BayerPattern(short setter); /* 0 -> not valid; 1 -> RGGB; 4 -> GBRG */ - public native @Cast("ushort") short SonyRawFileType(); public native libraw_sony_info_t SonyRawFileType(short setter); /* takes precedence over RAWFileType and Quality: + public native @Cast("ushort") short SonyRawFileType(); public native libraw_sony_info_t SonyRawFileType(short setter); /* init in 0xffff + valid for ARW 2.0 and up (FileFormat >= 3000) + takes precedence over RAWFileType and Quality: 0 for uncompressed 14-bit raw 1 for uncompressed 12-bit raw - 2 for compressed raw + 2 for compressed raw (lossy) 3 for lossless compressed raw + 4 for lossless compressed raw v.2 (ILCE-1) */ - public native @Cast("ushort") short RAWFileType(); public native libraw_sony_info_t RAWFileType(short setter); /* takes precedence over Quality - 0 for compressed raw, 1 for uncompressed; + public native @Cast("ushort") short RAWFileType(); public native libraw_sony_info_t RAWFileType(short setter); /* init in 0xffff + takes precedence over Quality + 0 for compressed raw, + 1 for uncompressed; + 2 lossless compressed raw v.2 */ - public native @Cast("unsigned") int Quality(); public native libraw_sony_info_t Quality(int setter); /* 0 or 6 for raw, 7 or 8 for compressed raw */ + public native @Cast("ushort") short RawSizeType(); public native libraw_sony_info_t RawSizeType(short setter); /* init in 0xffff + 1 - large, + 2 - small, + 3 - medium + */ + public native @Cast("unsigned") int Quality(); public native libraw_sony_info_t Quality(int setter); /* init in 0xffffffff + 0 or 6 for raw, 7 or 8 for compressed raw */ public native @Cast("ushort") short FileFormat(); public native libraw_sony_info_t FileFormat(short setter); /* 1000 SR2 2000 ARW 1.0 3000 ARW 2.0 @@ -100,5 +125,8 @@ public class libraw_sony_info_t extends Pointer { 3320 ARW 2.3.2 3330 ARW 2.3.3 3350 ARW 2.3.5 + 4000 ARW 4.0 */ + public native @Cast("char") byte MetaVersion(int i); public native libraw_sony_info_t MetaVersion(int i, byte setter); + @MemberGetter public native @Cast("char*") BytePointer MetaVersion(); } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_thumbnail_item_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_thumbnail_item_t.java new file mode 100644 index 00000000000..e3b00b0d519 --- /dev/null +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_thumbnail_item_t.java @@ -0,0 +1,39 @@ +// Targeted by JavaCPP version 1.5.9-SNAPSHOT: DO NOT EDIT THIS FILE + +package org.bytedeco.libraw; + +import java.nio.*; +import org.bytedeco.javacpp.*; +import org.bytedeco.javacpp.annotation.*; + +import static org.bytedeco.javacpp.presets.javacpp.*; + +import static org.bytedeco.libraw.global.LibRaw.*; + + + @Properties(inherit = org.bytedeco.libraw.presets.LibRaw.class) +public class libraw_thumbnail_item_t extends Pointer { + static { Loader.load(); } + /** Default native constructor. */ + public libraw_thumbnail_item_t() { super((Pointer)null); allocate(); } + /** Native array allocator. Access with {@link Pointer#position(long)}. */ + public libraw_thumbnail_item_t(long size) { super((Pointer)null); allocateArray(size); } + /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ + public libraw_thumbnail_item_t(Pointer p) { super(p); } + private native void allocate(); + private native void allocateArray(long size); + @Override public libraw_thumbnail_item_t position(long position) { + return (libraw_thumbnail_item_t)super.position(position); + } + @Override public libraw_thumbnail_item_t getPointer(long i) { + return new libraw_thumbnail_item_t((Pointer)this).offsetAddress(i); + } + + public native LibRaw_internal_thumbnail_formats tformat(); public native libraw_thumbnail_item_t tformat(LibRaw_internal_thumbnail_formats setter); + public native @Cast("ushort") short twidth(); public native libraw_thumbnail_item_t twidth(short setter); + public native @Cast("ushort") short theight(); public native libraw_thumbnail_item_t theight(short setter); + public native @Cast("ushort") short tflip(); public native libraw_thumbnail_item_t tflip(short setter); + public native @Cast("unsigned") int tlength(); public native libraw_thumbnail_item_t tlength(int setter); + public native @Cast("unsigned") int tmisc(); public native libraw_thumbnail_item_t tmisc(int setter); + public native @Cast("INT64") long toffset(); public native libraw_thumbnail_item_t toffset(long setter); + } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/libraw_thumbnail_list_t.java b/libraw/src/gen/java/org/bytedeco/libraw/libraw_thumbnail_list_t.java new file mode 100644 index 00000000000..96a73b2265a --- /dev/null +++ b/libraw/src/gen/java/org/bytedeco/libraw/libraw_thumbnail_list_t.java @@ -0,0 +1,35 @@ +// Targeted by JavaCPP version 1.5.9-SNAPSHOT: DO NOT EDIT THIS FILE + +package org.bytedeco.libraw; + +import java.nio.*; +import org.bytedeco.javacpp.*; +import org.bytedeco.javacpp.annotation.*; + +import static org.bytedeco.javacpp.presets.javacpp.*; + +import static org.bytedeco.libraw.global.LibRaw.*; + + + @Properties(inherit = org.bytedeco.libraw.presets.LibRaw.class) +public class libraw_thumbnail_list_t extends Pointer { + static { Loader.load(); } + /** Default native constructor. */ + public libraw_thumbnail_list_t() { super((Pointer)null); allocate(); } + /** Native array allocator. Access with {@link Pointer#position(long)}. */ + public libraw_thumbnail_list_t(long size) { super((Pointer)null); allocateArray(size); } + /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ + public libraw_thumbnail_list_t(Pointer p) { super(p); } + private native void allocate(); + private native void allocateArray(long size); + @Override public libraw_thumbnail_list_t position(long position) { + return (libraw_thumbnail_list_t)super.position(position); + } + @Override public libraw_thumbnail_list_t getPointer(long i) { + return new libraw_thumbnail_list_t((Pointer)this).offsetAddress(i); + } + + public native int thumbcount(); public native libraw_thumbnail_list_t thumbcount(int setter); + public native @ByRef libraw_thumbnail_item_t thumblist(int i); public native libraw_thumbnail_list_t thumblist(int i, libraw_thumbnail_item_t setter); + @MemberGetter public native libraw_thumbnail_item_t thumblist(); + } diff --git a/libraw/src/gen/java/org/bytedeco/libraw/ph1_t.java b/libraw/src/gen/java/org/bytedeco/libraw/ph1_t.java index ab939d4a7e9..5b6e0c9cf6f 100644 --- a/libraw/src/gen/java/org/bytedeco/libraw/ph1_t.java +++ b/libraw/src/gen/java/org/bytedeco/libraw/ph1_t.java @@ -9,7 +9,7 @@ import static org.bytedeco.javacpp.presets.javacpp.*; import static org.bytedeco.libraw.global.LibRaw.*; - + @Properties(inherit = org.bytedeco.libraw.presets.LibRaw.class) public class ph1_t extends Pointer { diff --git a/libraw/src/main/java/org/bytedeco/libraw/presets/LibRaw.java b/libraw/src/main/java/org/bytedeco/libraw/presets/LibRaw.java index eede5fa110a..20c0c089451 100644 --- a/libraw/src/main/java/org/bytedeco/libraw/presets/LibRaw.java +++ b/libraw/src/main/java/org/bytedeco/libraw/presets/LibRaw.java @@ -1,5 +1,5 @@ /* - * Copyright (C) 2022 Jarek Sacha, Samuel Audet + * Copyright (C) 2022-2023 Jarek Sacha, Samuel Audet * * Licensed either under the Apache License, Version 2.0, or (at your option) * under the terms of the GNU General Public License as published by @@ -48,7 +48,7 @@ "libraw/libraw_datastream.h", "libraw/libraw.h", }, - link = "raw_r@.20", + link = "raw_r@.23", preload = "gomp@.1" ), @Platform(value = "windows", @@ -70,6 +70,7 @@ public class LibRaw implements InfoMapper { public void map(InfoMap infoMap) { infoMap .put(new Info().enumerate()) + .put(new Info("signed __int8").cast().valueTypes("byte").pointerTypes("BytePointer", "ByteBuffer", "byte[]")) // // libraw_const.h // @@ -108,18 +109,6 @@ public void map(InfoMap infoMap) { .put(new Info("LIBRAW_VERSION").skip()) .put(new Info("LIBRAW_VERSION_TAIL").skip()) - // - // libraw_types.h - // - // Realated to incorrect wrapping of `signed __int8` - .put(new Info("libraw_sony_info_t::AFMicroAdjValue").skip()) - .put(new Info("libraw_sony_info_t::AFMicroAdjOn").skip()) - .put(new Info("fuji_compressed_params::q_table").skip()) - .put(new Info("libraw_nikon_makernotes_t::q_table").skip()) - .put(new Info("libraw_nikon_makernotes_t::AFFineTuneAdj").skip()) - - .put(new Info("libraw_static_table_t").skip(true)) - // // "libraw_datastream.h" // @@ -142,6 +131,12 @@ public void map(InfoMap infoMap) { // To build on non-Windows // .put(new Info("defined(_WIN32) || defined(WIN32)").define(false)) + + .put(new Info("LIBRAW_LIBRARY_BUILD", + "LIBRAW_OLD_VIDEO_SUPPORT", + "defined (LIBRAW_LIBRARY_BUILD) && defined(__cplusplus)", + "defined (LIBRAW_NO_IOSTREAMS_DATASTREAM) && defined (LIBRAW_WIN32_CALLS)").define(false)) + .put(new Info("LIBRAW_NO_IOSTREAMS_DATASTREAM").define(true)) ; } } diff --git a/numpy/README.md b/numpy/README.md index bd416f8c35e..394f5c944bc 100644 --- a/numpy/README.md +++ b/numpy/README.md @@ -9,7 +9,7 @@ Introduction ------------ This directory contains the JavaCPP Presets module for: - * NumPy 1.24.2 http://www.numpy.org/ + * NumPy 1.24.3 http://www.numpy.org/ Please refer to the parent README.md file for more detailed information about the JavaCPP Presets. @@ -48,7 +48,7 @@ We can use [Maven 3](http://maven.apache.org/) to download and install automatic org.bytedeco numpy-platform - 1.24.2-1.5.9-SNAPSHOT + 1.24.3-1.5.9-SNAPSHOT diff --git a/numpy/cppbuild.sh b/numpy/cppbuild.sh index 73ce93fbcaa..3bb58e9cc3b 100755 --- a/numpy/cppbuild.sh +++ b/numpy/cppbuild.sh @@ -7,7 +7,7 @@ if [[ -z "$PLATFORM" ]]; then exit fi -NUMPY_VERSION=1.24.2 +NUMPY_VERSION=1.24.3 download https://github.com/numpy/numpy/releases/download/v$NUMPY_VERSION/numpy-$NUMPY_VERSION.tar.gz numpy-$NUMPY_VERSION.tar.gz mkdir -p $PLATFORM diff --git a/numpy/platform/pom.xml b/numpy/platform/pom.xml index d1b6a06255f..67d16561a95 100644 --- a/numpy/platform/pom.xml +++ b/numpy/platform/pom.xml @@ -12,7 +12,7 @@ org.bytedeco numpy-platform - 1.24.2-${project.parent.version} + 1.24.3-${project.parent.version} JavaCPP Presets Platform for NumPy diff --git a/numpy/pom.xml b/numpy/pom.xml index 36412be0d4c..b9a1a4d7eb5 100644 --- a/numpy/pom.xml +++ b/numpy/pom.xml @@ -11,7 +11,7 @@ org.bytedeco numpy - 1.24.2-${project.parent.version} + 1.24.3-${project.parent.version} JavaCPP Presets for NumPy diff --git a/numpy/samples/pom.xml b/numpy/samples/pom.xml index 780305fbeef..c7a09812549 100644 --- a/numpy/samples/pom.xml +++ b/numpy/samples/pom.xml @@ -12,7 +12,7 @@ org.bytedeco numpy-platform - 1.24.2-1.5.9-SNAPSHOT + 1.24.3-1.5.9-SNAPSHOT diff --git a/opencv/README.md b/opencv/README.md index aebb89aa714..20f2c6adc34 100644 --- a/opencv/README.md +++ b/opencv/README.md @@ -77,7 +77,7 @@ We can use [Maven 3](http://maven.apache.org/) to download and install automatic org.bytedeco numpy-platform - 1.24.2-1.5.9-SNAPSHOT + 1.24.3-1.5.9-SNAPSHOT diff --git a/opencv/pom.xml b/opencv/pom.xml index 6c3088f0fef..d0263c575ee 100644 --- a/opencv/pom.xml +++ b/opencv/pom.xml @@ -23,7 +23,7 @@ org.bytedeco numpy - 1.24.2-${project.parent.version} + 1.24.3-${project.parent.version} true @@ -67,7 +67,7 @@ org.bytedeco numpy-platform - 1.24.2-${project.parent.version} + 1.24.3-${project.parent.version} diff --git a/opencv/samples/pom.xml b/opencv/samples/pom.xml index 248cb512af0..03f6768f2fb 100644 --- a/opencv/samples/pom.xml +++ b/opencv/samples/pom.xml @@ -40,7 +40,7 @@ org.bytedeco numpy-platform - 1.24.2-1.5.9-SNAPSHOT + 1.24.3-1.5.9-SNAPSHOT diff --git a/platform/pom.xml b/platform/pom.xml index 1bcf5d3e986..44907ba6a54 100644 --- a/platform/pom.xml +++ b/platform/pom.xml @@ -216,7 +216,7 @@ org.bytedeco numpy-platform - 1.24.2-${project.version} + 1.24.3-${project.version} org.bytedeco @@ -246,7 +246,7 @@ org.bytedeco libraw - 0.20.2-${project.version} + 0.21.1-${project.version} org.bytedeco @@ -291,7 +291,7 @@ org.bytedeco pytorch-platform - 2.0.0-${project.version} + 2.0.1-${project.version} org.bytedeco @@ -311,7 +311,7 @@ org.bytedeco tritonserver-platform - 2.32-${project.version} + 2.33-${project.version} org.bytedeco diff --git a/pytorch/README.md b/pytorch/README.md index 0d971e9bd12..40c6d538a88 100644 --- a/pytorch/README.md +++ b/pytorch/README.md @@ -9,7 +9,7 @@ Introduction ------------ This directory contains the JavaCPP Presets module for: - * PyTorch 2.0.0 https://pytorch.org/ + * PyTorch 2.0.1 https://pytorch.org/ Please refer to the parent README.md file for more detailed information about the JavaCPP Presets. @@ -48,14 +48,14 @@ We can use [Maven 3](http://maven.apache.org/) to download and install automatic org.bytedeco pytorch-platform - 2.0.0-1.5.9-SNAPSHOT + 2.0.1-1.5.9-SNAPSHOT org.bytedeco pytorch-platform-gpu - 2.0.0-1.5.9-SNAPSHOT + 2.0.1-1.5.9-SNAPSHOT diff --git a/pytorch/cppbuild.sh b/pytorch/cppbuild.sh index b252549eae7..f0f5e0ecf50 100755 --- a/pytorch/cppbuild.sh +++ b/pytorch/cppbuild.sh @@ -30,7 +30,7 @@ if [[ $PLATFORM == windows* ]]; then export PYTHON_BIN_PATH=$(which python.exe) fi -PYTORCH_VERSION=2.0.0 +PYTORCH_VERSION=2.0.1 mkdir -p "$PLATFORM$EXTENSION" cd "$PLATFORM$EXTENSION" diff --git a/pytorch/platform/gpu/pom.xml b/pytorch/platform/gpu/pom.xml index a7e91fbe11e..220a65d6896 100644 --- a/pytorch/platform/gpu/pom.xml +++ b/pytorch/platform/gpu/pom.xml @@ -12,7 +12,7 @@ org.bytedeco pytorch-platform-gpu - 2.0.0-${project.parent.version} + 2.0.1-${project.parent.version} JavaCPP Presets Platform GPU for PyTorch @@ -34,7 +34,7 @@ org.bytedeco numpy-platform - 1.24.2-${project.parent.version} + 1.24.3-${project.parent.version} true diff --git a/pytorch/platform/pom.xml b/pytorch/platform/pom.xml index 9ccd8b1d737..418172dfe17 100644 --- a/pytorch/platform/pom.xml +++ b/pytorch/platform/pom.xml @@ -12,7 +12,7 @@ org.bytedeco pytorch-platform - 2.0.0-${project.parent.version} + 2.0.1-${project.parent.version} JavaCPP Presets Platform for PyTorch @@ -33,7 +33,7 @@ org.bytedeco numpy-platform - 1.24.2-${project.parent.version} + 1.24.3-${project.parent.version} true diff --git a/pytorch/pom.xml b/pytorch/pom.xml index 34e3303baf5..b2a2beb7851 100644 --- a/pytorch/pom.xml +++ b/pytorch/pom.xml @@ -11,7 +11,7 @@ org.bytedeco pytorch - 2.0.0-${project.parent.version} + 2.0.1-${project.parent.version} JavaCPP Presets for PyTorch @@ -27,7 +27,7 @@ org.bytedeco numpy - 1.24.2-${project.parent.version} + 1.24.3-${project.parent.version} true @@ -52,7 +52,7 @@ org.bytedeco numpy-platform - 1.24.2-${project.parent.version} + 1.24.3-${project.parent.version} diff --git a/pytorch/samples/pom.xml b/pytorch/samples/pom.xml index baef050d9f1..a11c27cbbd1 100644 --- a/pytorch/samples/pom.xml +++ b/pytorch/samples/pom.xml @@ -12,14 +12,14 @@ org.bytedeco pytorch-platform - 2.0.0-1.5.9-SNAPSHOT + 2.0.1-1.5.9-SNAPSHOT org.bytedeco pytorch-platform-gpu - 2.0.0-1.5.9-SNAPSHOT + 2.0.1-1.5.9-SNAPSHOT diff --git a/pytorch/src/main/java/org/bytedeco/pytorch/presets/torch.java b/pytorch/src/main/java/org/bytedeco/pytorch/presets/torch.java index 69e84e441fa..93ef71f6e11 100644 --- a/pytorch/src/main/java/org/bytedeco/pytorch/presets/torch.java +++ b/pytorch/src/main/java/org/bytedeco/pytorch/presets/torch.java @@ -1771,7 +1771,7 @@ ), @Platform( value = {"linux", "macosx", "windows"}, - link = {"c10", "c10_cuda", "torch_cpu", "torch_cuda", "torch"}, + link = {"c10", "c10_cuda", "nvfuser_codegen", "torch_cpu", "torch_cuda", "torch"}, preload = {"gomp@.1", "iomp5", "omp", "tbb@.2", "asmjit", "fbgemm", "cupti@.12"}, preloadpath = { "/usr/local/cuda-12.1/lib64/", @@ -1806,7 +1806,7 @@ public class torch implements LoadEnabled, InfoMapper { if (platform.startsWith("windows")) { preloads.add(i++, "zlibwapi"); } - String[] libs = {"cudart", "cublasLt", "cublas", "cufft", "curand", "cusolver", "cusparse", "cudnn", "nccl", "nvrtc", "myelin", "nvinfer", + String[] libs = {"cudart", "cublasLt", "cublas", "cufft", "curand", "cusolver", "nvJitLink", "cusparse", "cudnn", "nccl", "nvrtc", "myelin", "nvinfer", "cudnn_ops_infer", "cudnn_ops_train", "cudnn_adv_infer", "cudnn_adv_train", "cudnn_cnn_infer", "cudnn_cnn_train"}; for (String lib : libs) { if (platform.startsWith("linux")) { @@ -1818,6 +1818,7 @@ public class torch implements LoadEnabled, InfoMapper { : lib.equals("curand") ? "@.10" : lib.equals("cudart") ? "@.12" : lib.equals("nvrtc") ? "@.12" + : lib.equals("nvJitLink") ? "@.12" : "@.12"; } else if (platform.startsWith("windows")) { lib += lib.startsWith("cudnn") ? "64_8" @@ -1828,6 +1829,7 @@ public class torch implements LoadEnabled, InfoMapper { : lib.equals("curand") ? "64_10" : lib.equals("cudart") ? "64_12" : lib.equals("nvrtc") ? "64_120_0" + : lib.equals("nvJitLink") ? "64_120_0" : "64_12"; } else { continue; // no CUDA diff --git a/scipy/cppbuild.sh b/scipy/cppbuild.sh index d7a7fa55767..3bc897935d8 100755 --- a/scipy/cppbuild.sh +++ b/scipy/cppbuild.sh @@ -102,7 +102,7 @@ if ! $PYTHON_BIN_PATH -m pip install --no-deps --target=$PYTHON_LIB_PATH $TOOLS; echo "extra_link_args = -lgfortran" >> site.cfg chmod +x "$CPYTHON_HOST_PATH/bin/python3.11" export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$CPYTHON_HOST_PATH/lib/:$CPYTHON_HOST_PATH" - "$CPYTHON_HOST_PATH/bin/python3.11" -m pip install --no-deps --target="$CPYTHON_HOST_PATH/lib/python3.11/" crossenv==1.0 numpy==1.24.2 $TOOLS + "$CPYTHON_HOST_PATH/bin/python3.11" -m pip install --no-deps --target="$CPYTHON_HOST_PATH/lib/python3.11/" crossenv==1.0 numpy==1.24.3 $TOOLS "$CPYTHON_HOST_PATH/bin/python3.11" -m crossenv "$PYTHON_BIN_PATH" crossenv cp -a "$NUMPY_PATH/python/numpy" "$CPYTHON_HOST_PATH/lib/python3.11/" # cp -a "$CPYTHON_HOST_PATH/lib/python3.11/include" "$PYTHON_LIB_PATH" diff --git a/scipy/platform/pom.xml b/scipy/platform/pom.xml index 88f962aa742..57bea63b343 100644 --- a/scipy/platform/pom.xml +++ b/scipy/platform/pom.xml @@ -23,7 +23,7 @@ org.bytedeco numpy-platform - 1.24.2-${project.parent.version} + 1.24.3-${project.parent.version} ${project.groupId} diff --git a/scipy/pom.xml b/scipy/pom.xml index 45e2b12264e..24fb0b7610b 100644 --- a/scipy/pom.xml +++ b/scipy/pom.xml @@ -18,7 +18,7 @@ org.bytedeco numpy - 1.24.2-${project.parent.version} + 1.24.3-${project.parent.version} org.bytedeco @@ -41,7 +41,7 @@ org.bytedeco numpy - 1.24.2-${project.parent.version} + 1.24.3-${project.parent.version} org.bytedeco @@ -58,7 +58,7 @@ org.bytedeco numpy - 1.24.2-${project.parent.version} + 1.24.3-${project.parent.version} ${javacpp.platform} diff --git a/tensorrt/README.md b/tensorrt/README.md index 0d75fb6023f..86cf7b980a1 100644 --- a/tensorrt/README.md +++ b/tensorrt/README.md @@ -17,7 +17,7 @@ Introduction ------------ This directory contains the JavaCPP Presets module for: - * TensorRT 8.6.0.12 https://developer.nvidia.com/tensorrt + * TensorRT 8.6.1.6 https://developer.nvidia.com/tensorrt Please refer to the parent README.md file for more detailed information about the JavaCPP Presets. diff --git a/tensorrt/src/gen/java/org/bytedeco/tensorrt/global/nvinfer.java b/tensorrt/src/gen/java/org/bytedeco/tensorrt/global/nvinfer.java index cd0b9b18a06..aa0e54c9488 100644 --- a/tensorrt/src/gen/java/org/bytedeco/tensorrt/global/nvinfer.java +++ b/tensorrt/src/gen/java/org/bytedeco/tensorrt/global/nvinfer.java @@ -48,9 +48,9 @@ public class nvinfer extends org.bytedeco.tensorrt.presets.nvinfer { /** TensorRT minor version. */ public static final int NV_TENSORRT_MINOR = 6; /** TensorRT patch version. */ -public static final int NV_TENSORRT_PATCH = 0; +public static final int NV_TENSORRT_PATCH = 1; /** TensorRT build number. */ -public static final int NV_TENSORRT_BUILD = 12; +public static final int NV_TENSORRT_BUILD = 6; /** TensorRT LWS major version. */ public static final int NV_TENSORRT_LWS_MAJOR = 0; @@ -59,12 +59,15 @@ public class nvinfer extends org.bytedeco.tensorrt.presets.nvinfer { /** TensorRT LWS patch version. */ public static final int NV_TENSORRT_LWS_PATCH = 0; +// This #define is deprecated in TensorRT 8.6 and will be removed in 10.0. Use NV_TENSORRT_MAJOR. /** Shared object library major version number. */ public static final int NV_TENSORRT_SONAME_MAJOR = 8; +// This #define is deprecated in TensorRT 8.6 and will be removed in 10.0. Use NV_TENSORRT_MINOR. /** Shared object library minor version number. */ public static final int NV_TENSORRT_SONAME_MINOR = 6; +// This #define is deprecated in TensorRT 8.6 and will be removed in 10.0. Use NV_TENSORRT_PATCH. /** Shared object library patch version number. */ -public static final int NV_TENSORRT_SONAME_PATCH = 0; +public static final int NV_TENSORRT_SONAME_PATCH = 1; /** An early access release */ public static final int NV_TENSORRT_RELEASE_TYPE_EARLY_ACCESS = 0; @@ -74,7 +77,7 @@ public class nvinfer extends org.bytedeco.tensorrt.presets.nvinfer { public static final int NV_TENSORRT_RELEASE_TYPE_GENERAL_AVAILABILITY = 2; /** TensorRT release type */ -public static final int NV_TENSORRT_RELEASE_TYPE = NV_TENSORRT_RELEASE_TYPE_EARLY_ACCESS; +public static final int NV_TENSORRT_RELEASE_TYPE = NV_TENSORRT_RELEASE_TYPE_GENERAL_AVAILABILITY; // #endif // NV_INFER_VERSION_H @@ -3151,8 +3154,8 @@ public class nvinfer extends org.bytedeco.tensorrt.presets.nvinfer { kDLA_GLOBAL_DRAM(3), /** - * kTACTIC_DRAM is the host DRAM used by the optimizer to - * run tactics. On embedded devices, where host and device memory are unified, this includes all device + * kTACTIC_DRAM is the device DRAM used by the optimizer to + * run tactics. On embedded devices, where host and device memory are unified, this includes all host * memory required by TensorRT to build the network up to the point of each memory allocation. * This defaults to 75% of totalGlobalMem as reported by cudaGetDeviceProperties when * cudaGetDeviceProperties.embedded is true, and 100% otherwise. diff --git a/tensorrt/src/gen/java/org/bytedeco/tensorrt/global/nvonnxparser.java b/tensorrt/src/gen/java/org/bytedeco/tensorrt/global/nvonnxparser.java index 330fac2e4b1..1e1f41ce7b7 100644 --- a/tensorrt/src/gen/java/org/bytedeco/tensorrt/global/nvonnxparser.java +++ b/tensorrt/src/gen/java/org/bytedeco/tensorrt/global/nvonnxparser.java @@ -78,21 +78,27 @@ public class nvonnxparser extends org.bytedeco.tensorrt.presets.nvonnxparser { public static final int NV_ONNX_PARSER_PATCH = 0; + +//! //! //! @MemberGetter public static native int NV_ONNX_PARSER_VERSION(); public static final int NV_ONNX_PARSER_VERSION = NV_ONNX_PARSER_VERSION(); -/** \typedef SubGraph_t +/** + * \typedef SubGraph_t * * \brief The data structure containing the parsing capability of * a set of nodes in an ONNX graph. * */ + +//! //! //! -/** \typedef SubGraphCollection_t +/** + * \typedef SubGraphCollection_t * * \brief The data structure containing all SubGraph_t partitioned * out of an ONNX graph. @@ -109,12 +115,13 @@ public class nvonnxparser extends org.bytedeco.tensorrt.presets.nvonnxparser { * \brief The TensorRT ONNX parser API namespace * */ -@Namespace("nvonnxparser") public static native @Name("EnumMax") int ErrorCodeEnumMax(); -/** \enum ErrorCode - * - * \brief the type of parser error - */ + +/** + * \enum ErrorCode + * + * \brief The type of error that the parser may return + * */ @Namespace("nvonnxparser") public enum ErrorCode { kSUCCESS(0), kINTERNAL_ERROR(1), @@ -132,6 +139,41 @@ public class nvonnxparser extends org.bytedeco.tensorrt.presets.nvonnxparser { public ErrorCode intern() { for (ErrorCode e : values()) if (e.value == value) return e; return this; } @Override public String toString() { return intern().name(); } } + +/** + * Maximum number of flags in the ErrorCode enum. + * + * @see ErrorCode + * */ + + +/** + * \brief Represents one or more OnnxParserFlag values using binary OR + * operations, e.g., 1U << OnnxParserFlag::kNATIVE_INSTANCENORM + * + * @see IParser::setFlags() and IParser::getFlags() + * */ + +@Namespace("nvonnxparser") public enum OnnxParserFlag { + /** Parse the ONNX model into the INetworkDefinition with the intention of using TensorRT's native layer + * implementation over the plugin implementation for InstanceNormalization nodes. This flag is planned to be + * deprecated in TensorRT 8.7 and removed in TensorRT 9.0. This flag is required when building version-compatible + * or hardware-compatible engines. There may be performance degradations when this flag is enabled. */ + kNATIVE_INSTANCENORM(0); + + public final int value; + private OnnxParserFlag(int v) { this.value = v; } + private OnnxParserFlag(OnnxParserFlag e) { this.value = e.value; } + public OnnxParserFlag intern() { for (OnnxParserFlag e : values()) if (e.value == value) return e; return this; } + @Override public String toString() { return intern().name(); } +} + +/** + * Maximum number of flags in the OnnxParserFlag enum. + * + * @see OnnxParserFlag + * */ + // Targeting ../nvonnxparser/IParserError.java @@ -144,20 +186,21 @@ public class nvonnxparser extends org.bytedeco.tensorrt.presets.nvonnxparser { public static native Pointer createNvOnnxParser_INTERNAL(Pointer network, Pointer logger, int version); public static native int getNvOnnxParserVersion(); -/** \brief Create a new parser object - * - * @param network The network definition that the parser will write to - * @param logger The logger to use - * @return a new parser object or NULL if an error occurred - * - * Any input dimensions that are constant should not be changed after parsing, - * because correctness of the translation may rely on those constants. - * Changing a dynamic input dimension, i.e. one that translates to -1 in - * TensorRT, to a constant is okay if the constant is consistent with the model. - * Each instance of the parser is designed to only parse one ONNX model once. - * - * @see IParser - */ +/** + * \brief Create a new parser object + * + * @param network The network definition that the parser will write to + * @param logger The logger to use + * @return a new parser object or NULL if an error occurred + * + * Any input dimensions that are constant should not be changed after parsing, + * because correctness of the translation may rely on those constants. + * Changing a dynamic input dimension, i.e. one that translates to -1 in + * TensorRT, to a constant is okay if the constant is consistent with the model. + * Each instance of the parser is designed to only parse one ONNX model once. + * + * @see IParser + * */ @Namespace("nvonnxparser") public static native IParser createParser(@ByRef INetworkDefinition network, @ByRef ILogger logger); // namespace diff --git a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/ICudaEngine.java b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/ICudaEngine.java index e48c90adafc..506c2da382f 100644 --- a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/ICudaEngine.java +++ b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/ICudaEngine.java @@ -489,8 +489,12 @@ public class ICudaEngine extends INoCopy { * @param tensorName The name of an input or output tensor. * * \warning The string tensorName must be null-terminated, and be at most 4096 bytes including the terminator. + * \warning The function can only return the result of profile 0, and issues a warning message when there are + * multiple profiles in the engine, use getTensorBytesPerComponent with profileIndex when there are multiple + * profiles. * * @see getTensorVectorizedDim() + * @see getTensorBytesPerComponent(tensorName, profileIndex) * */ @@ -503,6 +507,30 @@ public class ICudaEngine extends INoCopy { public native @NoException(true) int getTensorBytesPerComponent(String tensorName); public native @NoException(true) int getTensorBytesPerComponent(@Cast("const char*") BytePointer tensorName); + /** + * \brief Return the number of bytes per component of an element of given profile, or -1 if the provided name does + * not map to an input or output tensor. + * + * The vector component size is returned if getTensorVectorizedDim(tensorName, profileIndex) != -1. + * + * @param tensorName The name of an input or output tensor. + * @param profileIndex The profile index to query + * + * \warning The string tensorName must be null-terminated, and be at most 4096 bytes including the terminator. + * + * @see getTensorVectorizedDim(tensorName, profileIndex) + * */ + + + //! + //! + //! + //! + //! + //! + public native @NoException(true) int getTensorBytesPerComponent(String tensorName, int profileIndex); + public native @NoException(true) int getTensorBytesPerComponent(@Cast("const char*") BytePointer tensorName, int profileIndex); + /** * \brief Return the number of components included in one element. * @@ -533,8 +561,12 @@ public class ICudaEngine extends INoCopy { * @param tensorName The name of an input or output tensor. * * \warning The string tensorName must be null-terminated, and be at most 4096 bytes including the terminator. + * \warning The function can only return the result of profile 0, and issues a warning message when there + * are multiple profiles in the engine, use getTensorComponentsPerElement with profileIndex when there are + * multiple profiles. * * @see getTensorVectorizedDim() + * @see getTensorComponentsPerElement(tensorName, profileIndex) * */ @@ -543,9 +575,33 @@ public class ICudaEngine extends INoCopy { //! //! //! + //! public native @NoException(true) int getTensorComponentsPerElement(String tensorName); public native @NoException(true) int getTensorComponentsPerElement(@Cast("const char*") BytePointer tensorName); + /** + * \brief Return the number of components included in one element of given profile, or -1 if the provided name does + * not map to an input or output tensor. + * + * The number of elements in the vectors is returned if getTensorVectorizedDim(tensorName, profileIndex) != -1. + * + * @param tensorName The name of an input or output tensor. + * @param profileIndex The profile index to query + * + * \warning The string tensorName must be null-terminated, and be at most 4096 bytes including the terminator. + * + * @see getTensorVectorizedDim(tensorName, profileIndex) + * */ + + + //! + //! + //! + //! + //! + public native @NoException(true) int getTensorComponentsPerElement(String tensorName, int profileIndex); + public native @NoException(true) int getTensorComponentsPerElement(@Cast("const char*") BytePointer tensorName, int profileIndex); + /** * \brief Return the binding format. * @@ -564,10 +620,30 @@ public class ICudaEngine extends INoCopy { public native @Deprecated @NoException(true) TensorFormat getBindingFormat(int bindingIndex); /** - * \brief Return the binding format, or TensorFormat::kLINEAR if the provided name does not map to an input or + * \brief Return the tensor format, or TensorFormat::kLINEAR if the provided name does not map to an input or * output tensor. * + * \warning The string tensorName must be null-terminated, and be at most 4096 bytes including the terminator. + * \warning This API can only return the tensor format of profile 0, and issues a warning message when there are + * multiple profiles in the engine, use getTensorFormat with profileIndex when there are multiple profiles. + * + * @see getTensorFormat(tensorName, profileIndex) + * */ + + + //! + //! + //! + //! + public native @NoException(true) TensorFormat getTensorFormat(String tensorName); + public native @NoException(true) @Cast("nvinfer1::TensorFormat") int getTensorFormat(@Cast("const char*") BytePointer tensorName); + + /** + * \brief Return the tensor format of given profile, or TensorFormat::kLINEAR if the provided name does not map to + * an input or output tensor. + * * @param tensorName The name of an input or output tensor. + * @param profileIndex The profile index to query the format for. * * \warning The string tensorName must be null-terminated, and be at most 4096 bytes including the terminator. * */ @@ -579,8 +655,8 @@ public class ICudaEngine extends INoCopy { //! //! //! - public native @NoException(true) TensorFormat getTensorFormat(String tensorName); - public native @NoException(true) @Cast("nvinfer1::TensorFormat") int getTensorFormat(@Cast("const char*") BytePointer tensorName); + public native @NoException(true) TensorFormat getTensorFormat(String tensorName, int profileIndex); + public native @NoException(true) @Cast("nvinfer1::TensorFormat") int getTensorFormat(@Cast("const char*") BytePointer tensorName, int profileIndex); /** * \brief Return the human readable description of the tensor format, or nullptr if the provided name does not @@ -626,6 +702,8 @@ public class ICudaEngine extends INoCopy { * @param tensorName The name of an input or output tensor. * * \warning The string tensorName must be null-terminated, and be at most 4096 bytes including the terminator. + * \warning The function can only return the result of profile 0, and issues a warning message when there are + * multiple profiles in the engine, use getTensorFormatDesc with profileIndex when there are multiple profiles. * */ @@ -634,10 +712,38 @@ public class ICudaEngine extends INoCopy { //! //! //! - //! public native @NoException(true) String getTensorFormatDesc(String tensorName); public native @NoException(true) @Cast("const char*") BytePointer getTensorFormatDesc(@Cast("const char*") BytePointer tensorName); + /** + * \brief Return the human readable description of the tensor format of given profile, or empty string if the + * provided name does not map to an input or output tensor. + * + * The description includes the order, vectorization, data type, and strides. + * Examples are shown as follows: + * Example 1: kCHW + FP32 + * "Row major linear FP32 format" + * Example 2: kCHW2 + FP16 + * "Two wide channel vectorized row major FP16 format" + * Example 3: kHWC8 + FP16 + Line Stride = 32 + * "Channel major FP16 format where C % 8 == 0 and H Stride % 32 == 0" + * + * @param tensorName The name of an input or output tensor. + * @param profileIndex The profile index to query the format for. + * + * \warning The string tensorName must be null-terminated, and be at most 4096 bytes including the terminator. + * */ + + + //! + //! + //! + //! + //! + //! + public native @NoException(true) String getTensorFormatDesc(String tensorName, int profileIndex); + public native @NoException(true) @Cast("const char*") BytePointer getTensorFormatDesc(@Cast("const char*") BytePointer tensorName, int profileIndex); + /** * \brief Return the dimension index that the buffer is vectorized, or -1 is the name is not found. * @@ -667,6 +773,8 @@ public class ICudaEngine extends INoCopy { * @param tensorName The name of an input or output tensor. * * \warning The string tensorName must be null-terminated, and be at most 4096 bytes including the terminator. + * \warning The function can only return the result of profile 0, and issues a warning message when there are + * multiple profiles in the engine, use getTensorVectorizedDim with profileIndex when there are multiple profiles. * */ @@ -678,6 +786,27 @@ public class ICudaEngine extends INoCopy { public native @NoException(true) int getTensorVectorizedDim(String tensorName); public native @NoException(true) int getTensorVectorizedDim(@Cast("const char*") BytePointer tensorName); + /** + * \brief Return the dimension index that the buffer is vectorized of given profile, or -1 if the provided name + * does not map to an input or output tensor. + * + * Specifically -1 is returned if scalars per vector is 1. + * + * @param tensorName The name of an input. + * @param profileIndex The profile index to query the format for. + * + * \warning The string tensorName must be null-terminated, and be at most 4096 bytes including the terminator. + * */ + + + //! + //! + //! + //! + //! + public native @NoException(true) int getTensorVectorizedDim(String tensorName, int profileIndex); + public native @NoException(true) int getTensorVectorizedDim(@Cast("const char*") BytePointer tensorName, int profileIndex); + /** * \brief Returns the name of the network associated with the engine. * diff --git a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/IPluginRegistry.java b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/IPluginRegistry.java index cded5730699..58fa0019e45 100644 --- a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/IPluginRegistry.java +++ b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/IPluginRegistry.java @@ -100,12 +100,6 @@ public class IPluginRegistry extends Pointer { * - Allowed context for the API call * - Thread-safe: Yes * */ - - - //! - //! - //! - //! public native @NoException(true) IPluginCreator getPluginCreator(String pluginName, String pluginVersion, String pluginNamespace/*=""*/); public native @NoException(true) IPluginCreator getPluginCreator(String pluginName, String pluginVersion); @@ -113,61 +107,6 @@ public class IPluginRegistry extends Pointer { @Cast("const char*") BytePointer pluginNamespace/*=""*/); public native @NoException(true) IPluginCreator getPluginCreator(@Cast("const char*") BytePointer pluginName, @Cast("const char*") BytePointer pluginVersion); - /** - * \brief Return whether the parent registry will be searched if a plugin is not found in this registry - * default: true - * - * @return bool variable indicating whether parent search is enabled. - * - * @see setParentSearchEnabled - * */ - - - //! - //! - //! - //! - public native @Cast("bool") boolean isParentSearchEnabled(); - - /** - * \brief Set whether the parent registry will be searched if a plugin is not found in this registry. - * - * @param enabled The bool variable indicating whether parent search is enabled. - * - * @see isParentSearchEnabled - * */ - - - //! - //! - //! - //! - public native void setParentSearchEnabled(@Cast("const bool") boolean enabled); - - /** - * \brief Load and register a shared library of plugins. - * - * @param pluginPath the plugin library path. - * - * @return The loaded plugin library handle. The call will fail and return - * nullptr if any of the plugins are already registered. - * */ - - - //! - //! - //! - public native @NoException(true) PluginLibraryHandle loadLibrary(String pluginPath); - public native @NoException(true) PluginLibraryHandle loadLibrary(@Cast("const char*") BytePointer pluginPath); - - /** - * \brief Deregister plugins associated with a library. Any resources acquired when the library - * was loaded will be released. - * - * @param handle the plugin library handle to deregister. - * */ - public native @NoException(true) void deregisterLibrary(PluginLibraryHandle handle); - // @cond SuppressDoxyWarnings @@ -238,5 +177,66 @@ public class IPluginRegistry extends Pointer { * - Allowed context for the API call * - Thread-safe: Yes * */ + + + //! + //! + //! + //! public native @Cast("bool") @NoException(true) boolean deregisterCreator(@Const @ByRef IPluginCreator creator); + + /** + * \brief Return whether the parent registry will be searched if a plugin is not found in this registry + * default: true + * + * @return bool variable indicating whether parent search is enabled. + * + * @see setParentSearchEnabled + * */ + + + //! + //! + //! + //! + public native @Cast("bool") boolean isParentSearchEnabled(); + + /** + * \brief Set whether the parent registry will be searched if a plugin is not found in this registry. + * + * @param enabled The bool variable indicating whether parent search is enabled. + * + * @see isParentSearchEnabled + * */ + + + //! + //! + //! + //! + public native void setParentSearchEnabled(@Cast("const bool") boolean enabled); + + /** + * \brief Load and register a shared library of plugins. + * + * @param pluginPath the plugin library path. + * + * @return The loaded plugin library handle. The call will fail and return + * nullptr if any of the plugins are already registered. + * */ + + + //! + //! + //! + public native @NoException(true) PluginLibraryHandle loadLibrary(String pluginPath); + public native @NoException(true) PluginLibraryHandle loadLibrary(@Cast("const char*") BytePointer pluginPath); + + /** + * \brief Deregister plugins associated with a library. Any resources acquired when the library + * was loaded will be released. + * + * @param handle the plugin library handle to deregister. + * */ + public native @NoException(true) void deregisterLibrary(PluginLibraryHandle handle); } diff --git a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/IPluginV2DynamicExt.java b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/IPluginV2DynamicExt.java index 9c8248e558e..dd2315c3220 100644 --- a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/IPluginV2DynamicExt.java +++ b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/IPluginV2DynamicExt.java @@ -110,7 +110,7 @@ public class IPluginV2DynamicExt extends IPluginV2Ext { * \brief Return true if plugin supports the format and datatype for the input/output indexed by pos. * * For this method inputs are numbered 0..(nbInputs-1) and outputs are numbered nbInputs..(nbInputs+nbOutputs-1). - * Using this numbering, pos is an index into InOut, where 0 <= pos < nbInputs+nbOutputs-1. + * Using this numbering, pos is an index into InOut, where 0 <= pos < nbInputs+nbOutputs. * * TensorRT invokes this method to ask if the input/output indexed by pos supports the format/datatype specified * by inOut[pos].format and inOut[pos].type. The override should return true if that format/datatype at inOut[pos] @@ -128,8 +128,8 @@ public class IPluginV2DynamicExt extends IPluginV2Ext { * * A definition for a plugin that supports only FP16 NCHW for its two inputs, * and FP32 NCHW for its single output: * - * return inOut.format[pos] == TensorFormat::kLINEAR && (inOut.type[pos] == pos < 2 ? DataType::kHALF : - * DataType::kFLOAT); + * return inOut.format[pos] == TensorFormat::kLINEAR && (inOut.type[pos] == (pos < 2 ? DataType::kHALF : + * DataType::kFLOAT)); * * * A definition for a "polymorphic" plugin with two inputs and one output that supports * any format or type, but the inputs and output must have the same format and type: diff --git a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/IPluginV2IOExt.java b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/IPluginV2IOExt.java index f986b52abc9..f5b23d40cb3 100644 --- a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/IPluginV2IOExt.java +++ b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/IPluginV2IOExt.java @@ -73,7 +73,7 @@ public class IPluginV2IOExt extends IPluginV2Ext { * \brief Return true if plugin supports the format and datatype for the input/output indexed by pos. * * For this method inputs are numbered 0..(nbInputs-1) and outputs are numbered nbInputs..(nbInputs+nbOutputs-1). - * Using this numbering, pos is an index into InOut, where 0 <= pos < nbInputs+nbOutputs-1. + * Using this numbering, pos is an index into InOut, where 0 <= pos < nbInputs+nbOutputs. * * TensorRT invokes this method to ask if the input/output indexed by pos supports the format/datatype specified * by inOut[pos].format and inOut[pos].type. The override should return true if that format/datatype at inOut[pos] diff --git a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/VCudaEngine.java b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/VCudaEngine.java index 88c7a43bd19..f418d38da70 100644 --- a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/VCudaEngine.java +++ b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvinfer/VCudaEngine.java @@ -93,4 +93,15 @@ public class VCudaEngine extends VRoot { public native @NoException(true) HardwareCompatibilityLevel getHardwareCompatibilityLevel(); public native @NoException(true) ICudaEngine getPImpl(); public native @NoException(true) int getNbAuxStreams(); + + public native @NoException(true) int getTensorBytesPerComponentV2(String tensorName, int profileIndex); + public native @NoException(true) int getTensorBytesPerComponentV2(@Cast("const char*") BytePointer tensorName, int profileIndex); + public native @NoException(true) int getTensorComponentsPerElementV2(String tensorName, int profileIndex); + public native @NoException(true) int getTensorComponentsPerElementV2(@Cast("const char*") BytePointer tensorName, int profileIndex); + public native @NoException(true) TensorFormat getTensorFormatV2(String tensorName, int profileIndex); + public native @NoException(true) @Cast("nvinfer1::TensorFormat") int getTensorFormatV2(@Cast("const char*") BytePointer tensorName, int profileIndex); + public native @NoException(true) String getTensorFormatDescV2(String tensorName, int profileIndex); + public native @NoException(true) @Cast("const char*") BytePointer getTensorFormatDescV2(@Cast("const char*") BytePointer tensorName, int profileIndex); + public native @NoException(true) int getTensorVectorizedDimV2(String tensorName, int profileIndex); + public native @NoException(true) int getTensorVectorizedDimV2(@Cast("const char*") BytePointer tensorName, int profileIndex); } diff --git a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvonnxparser/IParser.java b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvonnxparser/IParser.java index d9465cbd3e3..45e9bc11bae 100644 --- a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvonnxparser/IParser.java +++ b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvonnxparser/IParser.java @@ -23,131 +23,265 @@ import static org.bytedeco.tensorrt.global.nvonnxparser.*; -/** \class IParser - * - * \brief an object for parsing ONNX models into a TensorRT network definition - */ +/** + * \class IParser + * + * \brief an object for parsing ONNX models into a TensorRT network definition + * */ @Namespace("nvonnxparser") @Properties(inherit = org.bytedeco.tensorrt.presets.nvonnxparser.class) public class IParser extends Pointer { static { Loader.load(); } /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ public IParser(Pointer p) { super(p); } - /** \brief Parse a serialized ONNX model into the TensorRT network. - * This method has very limited diagnostics. If parsing the serialized model - * fails for any reason (e.g. unsupported IR version, unsupported opset, etc.) - * it the user responsibility to intercept and report the error. - * To obtain a better diagnostic, use the parseFromFile method below. - * - * @param serialized_onnx_model Pointer to the serialized ONNX model - * @param serialized_onnx_model_size Size of the serialized ONNX model - * in bytes - * @param model_path Absolute path to the model file for loading external weights if required - * @return true if the model was parsed successfully - * @see getNbErrors() getError() - */ - public native @Cast("bool") boolean parse(@Const Pointer serialized_onnx_model, - @Cast("size_t") long serialized_onnx_model_size, - String model_path/*=nullptr*/); - public native @Cast("bool") boolean parse(@Const Pointer serialized_onnx_model, - @Cast("size_t") long serialized_onnx_model_size); - public native @Cast("bool") boolean parse(@Const Pointer serialized_onnx_model, - @Cast("size_t") long serialized_onnx_model_size, - @Cast("const char*") BytePointer model_path/*=nullptr*/); - - /** \brief Parse an onnx model file, which can be a binary protobuf or a text onnx model - * calls parse method inside. - * - * @param onnxModelFile name - * @param verbosity Level - * - * @return true if the model was parsed successfully - * - */ + /** + * \brief Parse a serialized ONNX model into the TensorRT network. + * This method has very limited diagnostics. If parsing the serialized model + * fails for any reason (e.g. unsupported IR version, unsupported opset, etc.) + * it the user responsibility to intercept and report the error. + * To obtain a better diagnostic, use the parseFromFile method below. + * + * @param serialized_onnx_model Pointer to the serialized ONNX model + * @param serialized_onnx_model_size Size of the serialized ONNX model + * in bytes + * @param model_path Absolute path to the model file for loading external weights if required + * @return true if the model was parsed successfully + * @see getNbErrors() getError() + * */ + + + //! + //! + //! + //! + //! + public native @Cast("bool") boolean parse( + @Const Pointer serialized_onnx_model, @Cast("size_t") long serialized_onnx_model_size, String model_path/*=nullptr*/); + public native @Cast("bool") boolean parse( + @Const Pointer serialized_onnx_model, @Cast("size_t") long serialized_onnx_model_size); + public native @Cast("bool") boolean parse( + @Const Pointer serialized_onnx_model, @Cast("size_t") long serialized_onnx_model_size, @Cast("const char*") BytePointer model_path/*=nullptr*/); + + /** + * \brief Parse an onnx model file, which can be a binary protobuf or a text onnx model + * calls parse method inside. + * + * @param onnxModelFile name + * @param verbosity Level + * + * @return true if the model was parsed successfully + * + * */ + + + //! + //! + //! public native @Cast("bool") boolean parseFromFile(String onnxModelFile, int verbosity); public native @Cast("bool") boolean parseFromFile(@Cast("const char*") BytePointer onnxModelFile, int verbosity); - /** \brief Check whether TensorRT supports a particular ONNX model. - * If the function returns True, one can proceed to engine building - * without having to call \p parse or \p parseFromFile. - * - * @param serialized_onnx_model Pointer to the serialized ONNX model - * @param serialized_onnx_model_size Size of the serialized ONNX model - * in bytes - * @param sub_graph_collection Container to hold supported subgraphs - * @param model_path Absolute path to the model file for loading external weights if required - * @return true if the model is supported - */ - public native @Cast("bool") boolean supportsModel(@Const Pointer serialized_onnx_model, - @Cast("size_t") long serialized_onnx_model_size, - @ByRef SubGraphCollection_t sub_graph_collection, - String model_path/*=nullptr*/); - public native @Cast("bool") boolean supportsModel(@Const Pointer serialized_onnx_model, - @Cast("size_t") long serialized_onnx_model_size, - @ByRef SubGraphCollection_t sub_graph_collection); - public native @Cast("bool") boolean supportsModel(@Const Pointer serialized_onnx_model, - @Cast("size_t") long serialized_onnx_model_size, - @ByRef SubGraphCollection_t sub_graph_collection, - @Cast("const char*") BytePointer model_path/*=nullptr*/); - - /** \brief Parse a serialized ONNX model into the TensorRT network - * with consideration of user provided weights - * - * @param serialized_onnx_model Pointer to the serialized ONNX model - * @param serialized_onnx_model_size Size of the serialized ONNX model - * in bytes - * @return true if the model was parsed successfully - * @see getNbErrors() getError() - */ - public native @Cast("bool") boolean parseWithWeightDescriptors( - @Const Pointer serialized_onnx_model, @Cast("size_t") long serialized_onnx_model_size); + /** + * \brief Check whether TensorRT supports a particular ONNX model. + * If the function returns True, one can proceed to engine building + * without having to call \p parse or \p parseFromFile. + * + * @param serialized_onnx_model Pointer to the serialized ONNX model + * @param serialized_onnx_model_size Size of the serialized ONNX model + * in bytes + * @param sub_graph_collection Container to hold supported subgraphs + * @param model_path Absolute path to the model file for loading external weights if required + * @return true if the model is supported + * */ + + + //! + //! + //! + public native @Cast("bool") boolean supportsModel(@Const Pointer serialized_onnx_model, @Cast("size_t") long serialized_onnx_model_size, + @ByRef SubGraphCollection_t sub_graph_collection, String model_path/*=nullptr*/); + public native @Cast("bool") boolean supportsModel(@Const Pointer serialized_onnx_model, @Cast("size_t") long serialized_onnx_model_size, + @ByRef SubGraphCollection_t sub_graph_collection); + public native @Cast("bool") boolean supportsModel(@Const Pointer serialized_onnx_model, @Cast("size_t") long serialized_onnx_model_size, + @ByRef SubGraphCollection_t sub_graph_collection, @Cast("const char*") BytePointer model_path/*=nullptr*/); + + /** + * \brief Parse a serialized ONNX model into the TensorRT network + * with consideration of user provided weights + * + * @param serialized_onnx_model Pointer to the serialized ONNX model + * @param serialized_onnx_model_size Size of the serialized ONNX model + * in bytes + * @return true if the model was parsed successfully + * @see getNbErrors() getError() + * */ + + + //! + //! + //! + //! + public native @Cast("bool") boolean parseWithWeightDescriptors(@Const Pointer serialized_onnx_model, @Cast("size_t") long serialized_onnx_model_size); - /** \brief Returns whether the specified operator may be supported by the - * parser. - * - * Note that a result of true does not guarantee that the operator will be - * supported in all cases (i.e., this function may return false-positives). - * - * @param op_name The name of the ONNX operator to check for support - */ + /** + * \brief Returns whether the specified operator may be supported by the + * parser. + * + * Note that a result of true does not guarantee that the operator will be + * supported in all cases (i.e., this function may return false-positives). + * + * @param op_name The name of the ONNX operator to check for support + * */ + + + //! + //! + //! public native @Cast("bool") boolean supportsOperator(String op_name); public native @Cast("bool") boolean supportsOperator(@Cast("const char*") BytePointer op_name); - /** \brief destroy this object - * - * \warning deprecated and planned on being removed in TensorRT 10.0 - */ + + /** + * \brief destroy this object + * + * \warning deprecated and planned on being removed in TensorRT 10.0 + * */ + + + //! + //! + //! public native @Deprecated void destroy(); - /** \brief Get the number of errors that occurred during prior calls to - * \p parse - * - * @see getError() clearErrors() IParserError - */ + + /** + * \brief Get the number of errors that occurred during prior calls to + * \p parse + * + * @see getError() clearErrors() IParserError + * */ + + + //! + //! + //! public native int getNbErrors(); - /** \brief Get an error that occurred during prior calls to \p parse - * - * @see getNbErrors() clearErrors() IParserError - */ + + /** + * \brief Get an error that occurred during prior calls to \p parse + * + * @see getNbErrors() clearErrors() IParserError + * */ + + + //! + //! + //! public native @Const IParserError getError(int index); - /** \brief Clear errors from prior calls to \p parse - * - * @see getNbErrors() getError() IParserError - */ + + /** + * \brief Clear errors from prior calls to \p parse + * + * @see getNbErrors() getError() IParserError + * */ public native void clearErrors(); - /** \brief Query the plugin libraries needed to implement operations used by the parser in a version-compatible - * engine. - * - * This provides a list of plugin libraries on the filesystem needed to implement operations - * in the parsed network. If you are building a version-compatible engine using this network, - * provide this list to IBuilderConfig::setPluginsToSerialize to serialize these plugins along - * with the version-compatible engine, or, if you want to ship these plugin libraries externally - * to the engine, ensure that IPluginRegistry::loadLibrary is used to load these libraries in the - * appropriate runtime before deserializing the corresponding engine. - * - * @param nbPluginLibs [out] Returns the number of plugin libraries in the array, or -1 if there was an error. - * @return Array of {@code nbPluginLibs} C-strings describing plugin library paths on the filesystem if nbPluginLibs > 0, - * or nullptr otherwise. This array is owned by the IParser, and the pointers in the array are only valid until the - * next call to parse(), supportsModel(), parseFromFile(), or parseWithWeightDescriptors(). - */ + /** + * \brief Query the plugin libraries needed to implement operations used by the parser in a version-compatible + * engine. + * + * This provides a list of plugin libraries on the filesystem needed to implement operations + * in the parsed network. If you are building a version-compatible engine using this network, + * provide this list to IBuilderConfig::setPluginsToSerialize to serialize these plugins along + * with the version-compatible engine, or, if you want to ship these plugin libraries externally + * to the engine, ensure that IPluginRegistry::loadLibrary is used to load these libraries in the + * appropriate runtime before deserializing the corresponding engine. + * + * @param nbPluginLibs [out] Returns the number of plugin libraries in the array, or -1 if there was an error. + * @return Array of {@code nbPluginLibs} C-strings describing plugin library paths on the filesystem if nbPluginLibs > 0, + * or nullptr otherwise. This array is owned by the IParser, and the pointers in the array are only valid until + * the next call to parse(), supportsModel(), parseFromFile(), or parseWithWeightDescriptors(). + * */ + + + //! + //! + //! + //! + //! + //! public native @Cast("const char**") @NoException(true) PointerPointer getUsedVCPluginLibraries(@Cast("int64_t*") @ByRef long[] nbPluginLibs); + + /** + * \brief Set the parser flags. + * + * The flags are listed in the OnnxParserFlag enum. + * + * @param OnnxParserFlag The flags used when parsing an ONNX model. + * + * \note This function will override the previous set flags, rather than bitwise ORing the new flag. + * + * @see getFlags() + * */ + + + //! + //! + //! + //! + public native @NoException(true) void setFlags(@Cast("nvonnxparser::OnnxParserFlags") int onnxParserFlags); + + /** + * \brief Get the parser flags. Defaults to 0. + * + * @return The parser flags as a bitmask. + * + * @see setFlags() + * */ + + + //! + //! + //! + //! + public native @Cast("nvonnxparser::OnnxParserFlags") @NoException(true) int getFlags(); + + /** + * \brief clear a parser flag. + * + * clears the parser flag from the enabled flags. + * + * @see setFlags() + * */ + + + //! + //! + //! + //! + public native @NoException(true) void clearFlag(OnnxParserFlag onnxParserFlag); + public native @NoException(true) void clearFlag(@Cast("nvonnxparser::OnnxParserFlag") int onnxParserFlag); + + /** + * \brief Set a single parser flag. + * + * Add the input parser flag to the already enabled flags. + * + * @see setFlags() + * */ + + + //! + //! + //! + //! + public native @NoException(true) void setFlag(OnnxParserFlag onnxParserFlag); + public native @NoException(true) void setFlag(@Cast("nvonnxparser::OnnxParserFlag") int onnxParserFlag); + + /** + * \brief Returns true if the parser flag is set + * + * @see getFlags() + * + * @return True if flag is set, false if unset. + * */ + public native @Cast("bool") @NoException(true) boolean getFlag(OnnxParserFlag onnxParserFlag); + public native @Cast("bool") @NoException(true) boolean getFlag(@Cast("nvonnxparser::OnnxParserFlag") int onnxParserFlag); } diff --git a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvonnxparser/IParserError.java b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvonnxparser/IParserError.java index c2a98920b2d..775b92ce1fb 100644 --- a/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvonnxparser/IParserError.java +++ b/tensorrt/src/gen/java/org/bytedeco/tensorrt/nvonnxparser/IParserError.java @@ -23,32 +23,54 @@ import static org.bytedeco.tensorrt.global.nvonnxparser.*; -/** \class IParserError - * - * \brief an object containing information about an error - */ +/** + * \class IParserError + * + * \brief an object containing information about an error + * */ @Namespace("nvonnxparser") @Properties(inherit = org.bytedeco.tensorrt.presets.nvonnxparser.class) public class IParserError extends Pointer { static { Loader.load(); } /** Pointer cast constructor. Invokes {@link Pointer#Pointer(Pointer)}. */ public IParserError(Pointer p) { super(p); } - /** \brief the error code - */ + /** + * \brief the error code + * */ + + //! + //! public native org.bytedeco.tensorrt.global.nvonnxparser.ErrorCode code(); - /** \brief description of the error - */ + /** + * \brief description of the error + * */ + + //! + //! public native String desc(); - /** \brief source file in which the error occurred - */ + /** + * \brief source file in which the error occurred + * */ + + //! + //! public native String file(); - /** \brief source line at which the error occurred - */ + /** + * \brief source line at which the error occurred + * */ + + //! + //! public native int line(); - /** \brief source function in which the error occurred - */ + /** + * \brief source function in which the error occurred + * */ + + //! + //! public native String func(); - /** \brief index of the ONNX model node in which the error occurred - */ + /** + * \brief index of the ONNX model node in which the error occurred + * */ public native int node(); } diff --git a/tensorrt/src/main/java/org/bytedeco/tensorrt/presets/nvinfer.java b/tensorrt/src/main/java/org/bytedeco/tensorrt/presets/nvinfer.java index f3ee72c6d02..797f209d432 100644 --- a/tensorrt/src/main/java/org/bytedeco/tensorrt/presets/nvinfer.java +++ b/tensorrt/src/main/java/org/bytedeco/tensorrt/presets/nvinfer.java @@ -50,7 +50,7 @@ include = {"NvInferVersion.h", "NvInferRuntimeBase.h", "NvInferRuntimePlugin.h", "NvInferRuntimeCommon.h", "NvInferLegacyDims.h", "NvInferRuntime.h", "NvInfer.h", "NvInferImpl.h", "NvUtils.h"}, link = "nvinfer@.8", - preload = "nvinfer_builder_resource@.8.6.0" + preload = "nvinfer_builder_resource@.8.6.1" ), @Platform( value = "linux-arm64", @@ -126,7 +126,7 @@ public void map(InfoMap infoMap) { .put(new Info("nvinfer1::IErrorRecorder::ErrorDesc").valueTypes("String", "@Cast(\"const char*\") BytePointer")) .put(new Info("nvinfer1::PluginFormat").cast().valueTypes("TensorFormat", "int").pointerTypes("IntPointer", "IntBuffer", "int[]")) .put(new Info("nvinfer1::safe::IPluginRegistry").pointerTypes("SafeIPluginRegistry")) - .put(new Info("nvinfer1::EnumMax").skip()) + .put(new Info("nvinfer1::EnumMax", "nvinfer1::EnumMaxImpl").skip()) .put(new Info("nvinfer1::Weights::values").javaText("public native @Const Pointer values(); public native Weights values(Pointer values);")) .put(new Info("nvinfer1::IDimensionExpr", "nvinfer1::IExprBuilder", "nvinfer1::IOptimizationProfile", "nvinfer1::ITensor", "nvinfer1::ILayer", "nvinfer1::IConvolutionLayer", "nvinfer1::IFullyConnectedLayer", "nvinfer1::IActivationLayer", "nvinfer1::IPoolingLayer", diff --git a/tensorrt/src/main/java/org/bytedeco/tensorrt/presets/nvonnxparser.java b/tensorrt/src/main/java/org/bytedeco/tensorrt/presets/nvonnxparser.java index d1df7b3f516..3fc901ee904 100644 --- a/tensorrt/src/main/java/org/bytedeco/tensorrt/presets/nvonnxparser.java +++ b/tensorrt/src/main/java/org/bytedeco/tensorrt/presets/nvonnxparser.java @@ -42,13 +42,13 @@ public class nvonnxparser implements InfoMapper { public void map(InfoMap infoMap) { infoMap.put(new Info("SWIG").define(false)) + .put(new Info("nvonnxparser::EnumMax").skip()) .put(new Info("std::pair,bool>").pointerTypes("SubGraph_t").define()) .put(new Info("std::vector").pointerTypes("SubGraphCollection_t").define()) .put(new Info("std::vector").annotations("@StdVector").pointerTypes("SizeTPointer")) .put(new Info("nvonnxparser::IPluginFactory").pointerTypes("OnnxPluginFactory")) .put(new Info("nvonnxparser::IPluginFactoryExt").pointerTypes("OnnxPluginFactoryExt")) .put(new Info("nvonnxparser::ErrorCode").valueTypes("org.bytedeco.tensorrt.global.nvonnxparser.ErrorCode").enumerate()) - .put(new Info("nvonnxparser::EnumMax", "nvonnxparser::EnumMax").javaNames("ErrorCodeEnumMax")) .put(new Info("nvonnxparser::IParser::getUsedVCPluginLibraries").javaText( "public native @Cast(\"const char**\") @NoException(true) PointerPointer getUsedVCPluginLibraries(@Cast(\"int64_t*\") @ByRef long[] nbPluginLibs);")); } diff --git a/tritonserver/README.md b/tritonserver/README.md index cc02e41dd7e..32e7e5ec030 100644 --- a/tritonserver/README.md +++ b/tritonserver/README.md @@ -23,7 +23,7 @@ Introduction ------------ This directory contains the JavaCPP Presets module for: - * Triton Inference Server 2.32.0 https://github.com/triton-inference-server/server + * Triton Inference Server 2.33.0 https://github.com/triton-inference-server/server Please refer to the parent README.md file for more detailed information about the JavaCPP Presets. @@ -51,9 +51,9 @@ This sample intends to show how to call the Java-mapped C API of Triton to execu 1. Get the source code of Triton Inference Server to prepare the model repository: ```bash - $ wget https://github.com/triton-inference-server/server/archive/refs/tags/v2.32.0.tar.gz - $ tar zxvf v2.32.0.tar.gz - $ cd server-2.32.0/docs/examples/model_repository + $ wget https://github.com/triton-inference-server/server/archive/refs/tags/v2.33.0.tar.gz + $ tar zxvf v2.33.0.tar.gz + $ cd server-2.33.0/docs/examples/model_repository $ mkdir models $ cd models; cp -a ../simple . ``` @@ -61,7 +61,7 @@ Now, this `models` directory will be our model repository. 2. Start the Docker container to run the sample (assuming we are under the `models` directory created above): ```bash - $ docker run -it --gpus=all -v $(pwd):/workspace nvcr.io/nvidia/tritonserver:23.03-py3 bash + $ docker run -it --gpus=all -v $(pwd):/workspace nvcr.io/nvidia/tritonserver:23.04-py3 bash $ apt update $ apt install -y openjdk-11-jdk $ wget https://archive.apache.org/dist/maven/maven-3/3.8.4/binaries/apache-maven-3.8.4-bin.tar.gz diff --git a/tritonserver/platform/pom.xml b/tritonserver/platform/pom.xml index e1a3812ef1a..836b4ca334e 100644 --- a/tritonserver/platform/pom.xml +++ b/tritonserver/platform/pom.xml @@ -12,7 +12,7 @@ org.bytedeco tritonserver-platform - 2.32-${project.parent.version} + 2.33-${project.parent.version} JavaCPP Presets Platform for Triton Inference Server diff --git a/tritonserver/platform/redist/pom.xml b/tritonserver/platform/redist/pom.xml index 8076adfe431..e9b1410d580 100644 --- a/tritonserver/platform/redist/pom.xml +++ b/tritonserver/platform/redist/pom.xml @@ -12,7 +12,7 @@ org.bytedeco tritonserver-platform-redist - 2.32-${project.parent.version} + 2.33-${project.parent.version} JavaCPP Presets Platform Redist for Triton Inference Server diff --git a/tritonserver/pom.xml b/tritonserver/pom.xml index fb6608d6994..dd07cc91c9c 100644 --- a/tritonserver/pom.xml +++ b/tritonserver/pom.xml @@ -11,7 +11,7 @@ org.bytedeco tritonserver - 2.32-${project.parent.version} + 2.33-${project.parent.version} JavaCPP Presets for Triton Inference Server diff --git a/tritonserver/samples/simple/pom.xml b/tritonserver/samples/simple/pom.xml index 6e53e9a8a64..3f3d8fcdcdf 100644 --- a/tritonserver/samples/simple/pom.xml +++ b/tritonserver/samples/simple/pom.xml @@ -12,7 +12,7 @@ org.bytedeco tritonserver-platform - 2.32-1.5.9-SNAPSHOT + 2.33-1.5.9-SNAPSHOT shaded diff --git a/tritonserver/samples/unsupported/pom.xml b/tritonserver/samples/unsupported/pom.xml index 9b27174f5aa..7aa122d5d16 100644 --- a/tritonserver/samples/unsupported/pom.xml +++ b/tritonserver/samples/unsupported/pom.xml @@ -23,7 +23,7 @@ org.bytedeco tritonserver-platform - 2.32-1.5.9-SNAPSHOT + 2.33-1.5.9-SNAPSHOT shaded