[trunk]extend last commits to apps
[openjpeg.git] / README
diff --git a/README b/README
index 031cf3d8417f0e0b09862ae1697b18f9e600aa8b..0a8917825f03968d0283a24d05d8ce875a346ab9 100644 (file)
--- a/README
+++ b/README
@@ -1 +1,47 @@
-see INSTALL for installation procedures.
\ No newline at end of file
+
+OPENJPEG LIBRARY and APPLICATIONS
+----------------------------------
+
+Details on folders hierarchy:
+
+* src
+  * lib
+    * openjp2: contains the sources of the openjp2 library (Part 1 & 2)
+    * openjpwl: contains the additional sources if you want to build a JPWL-flavoured library.
+    * openjpip: complete client-server architecture for remote browsing of jpeg 2000 images.
+    * openjp3d: JP3D implementation
+    * openmj2: MJ2 implementation
+  * bin: contains all applications that use the openjpeg library
+    * common: common files to all applications
+    * jp2: a basic codec
+    * mj2: motion jpeg 2000 executables
+    * jpip: OpenJPIP applications (server and dec server)
+      * java: a Java client viewer for JPIP
+    * jp3d: JP3D applications
+      * tcltk: a test tool for JP3D
+    * wx
+      * OPJViewer: gui for displaying j2k files (based on wxWidget)
+* wrapping
+  * java: java jni to use openjpeg in a java program
+* thirdparty: thirdparty libraries used by some applications. These libraries will be built only if there are not found on the system. Note that libopenjpeg itself does not have any dependency.
+* doc: doxygen documentation setup file and man pages
+* tests: configuration files and utilities for the openjpeg test suite. All test images are located in 'http://openjpeg.googlecode.com/svn/data' folder.
+* cmake: cmake related files
+
+see LICENSE for license and copyright information.
+see INSTALL for installation procedures.
+see NEWS for user visible changes in successive releases.
+see CHANGES for per-revision changes.
+
+----------------
+API/ABI
+
+OpenJPEG strives to provide a stable API/ABI for your applications. As such it
+only exposes a limited subset of its functions.  It uses a mecanism of
+exporting/hiding functions. If you are unsure which functions you can use in
+your applications, you should compile OpenJPEG using something similar to gcc:
+-fvisibility=hidden compilation flag.
+See also: http://gcc.gnu.org/wiki/Visibility
+
+On windows, MSVC directly supports export/hidding function and as such the only
+API available is the one supported by OpenJPEG.