From 93efcb565592a9e71b2fd9e05b043a084f786664 Mon Sep 17 00:00:00 2001 From: Amandine Tournay <amandine.tournay@pasteur.fr> Date: Tue, 9 Mar 2021 17:38:45 +0100 Subject: [PATCH] Added project --- .gitignore | 6 + pom.xml | 110 ++++++++++++++++++ .../java/plugins/stef/library/JOALPlugin.java | 26 +++++ src/main/resources/joal.png | Bin 0 -> 19996 bytes 4 files changed, 142 insertions(+) create mode 100644 .gitignore create mode 100644 pom.xml create mode 100644 src/main/java/plugins/stef/library/JOALPlugin.java create mode 100644 src/main/resources/joal.png diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3d47f98 --- /dev/null +++ b/.gitignore @@ -0,0 +1,6 @@ +.idea/ +target/ +.settings/ +*.iml +.project +.classpath \ No newline at end of file diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..3eb5316 --- /dev/null +++ b/pom.xml @@ -0,0 +1,110 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + + <!-- Inherited Icy Parent POM --> + <parent> + <groupId>org.bioimageanalysis.icy</groupId> + <artifactId>parent-pom-plugin</artifactId> + <version>1.0.3</version> + </parent> + + <!-- Project Information --> + <artifactId>joal</artifactId> + <version>2.3.2</version> + + <packaging>jar</packaging> + + <name>JOAL for Icy</name> + <description>Java™ Binding for the OpenAL® API</description> + <url>http://icy.bioimageanalysis.org/plugin/jogamp-joal-library-for-icy/</url> + <inceptionYear>2020</inceptionYear> + + <organization> + <name>Institut Pasteur</name> + <url>https://pasteur.fr</url> + </organization> + + <licenses> + <license> + <name>GNU GPLv3</name> + <url>https://www.gnu.org/licenses/gpl-3.0.en.html</url> + <distribution>repo</distribution> + </license> + </licenses> + + <developers> + <developer> + <id>sdallongeville</id> + <name>Stéphane Dallongeville</name> + <url>https://research.pasteur.fr/fr/member/stephane-dallongeville/</url> + <roles> + <role>founder</role> + <role>lead</role> + <role>architect</role> + <role>developer</role> + <role>debugger</role> + <role>tester</role> + <role>maintainer</role> + <role>support</role> + </roles> + </developer> + </developers> + + <!-- Project properties --> + <properties> + + </properties> + + <!-- Project build configuration --> + <build> + <plugins> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> + <version>3.1.1</version> + <executions> + <execution> + <id>${project.artifactId}-fetch</id> + <phase>generate-sources</phase> + <goals> + <goal>unpack-dependencies</goal> + </goals> + <configuration> + <includeArtifactIds>joal</includeArtifactIds> + <outputDirectory>${project.build.outputDirectory}</outputDirectory> + <stripVersion>true</stripVersion> + <excludeTransitive>true</excludeTransitive> + </configuration> + </execution> + </executions> + </plugin> + </plugins> + </build> + + <!-- List of project's dependencies --> + <dependencies> + <!-- The core of Icy --> + <dependency> + <groupId>org.bioimageanalysis.icy</groupId> + <artifactId>icy-kernel</artifactId> + </dependency> + + <dependency> + <groupId>org.jogamp.joal</groupId> + <artifactId>joal</artifactId> + <version>2.3.2</version> + </dependency> + </dependencies> + + <!-- Icy Maven repository (to find parent POM) --> + <repositories> + <repository> + <id>icy</id> + <name>Icy's Nexus</name> + <url>https://icy-nexus.pasteur.fr/repository/Icy/</url> + </repository> + </repositories> +</project> diff --git a/src/main/java/plugins/stef/library/JOALPlugin.java b/src/main/java/plugins/stef/library/JOALPlugin.java new file mode 100644 index 0000000..ffaec72 --- /dev/null +++ b/src/main/java/plugins/stef/library/JOALPlugin.java @@ -0,0 +1,26 @@ +package plugins.stef.library; + +import icy.plugin.abstract_.Plugin; +import icy.plugin.interface_.PluginLibrary; + +/** + * Icy wrapper for the JogAmp JOAL library. + * + * @author Stephane Dallongeville + */ +public class JOALPlugin extends Plugin implements PluginLibrary +{ + static + { + try + { + // load native library + Plugin.loadLibrary(JOALPlugin.class, "joal"); + } + catch (Throwable t) + { + System.err.println("Could not load joal native library."); + System.err.println(t.getMessage()); + } + } +} diff --git a/src/main/resources/joal.png b/src/main/resources/joal.png new file mode 100644 index 0000000000000000000000000000000000000000..47d79904571e9b3afc1a4d00f05255d9bc8569e0 GIT binary patch literal 19996 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 literal 0 HcmV?d00001 -- GitLab