[trunk]fixes buffer overflow in t2.c
[openjpeg.git] / README
diff --git a/README b/README
index 05a280c29ebe64301cecd48bc6066b4f2e8346b5..0a8917825f03968d0283a24d05d8ce875a346ab9 100644 (file)
--- a/README
+++ b/README
@@ -4,22 +4,44 @@ OPENJPEG LIBRARY and APPLICATIONS
 
 Details on folders hierarchy:
 
-* libopenjpeg: contains the sources of the openjpeg library
-    * jpwl: contains the additional sources if you want to build a JPWL-flavoured library.
-* applications: contains all applications that use the openjpeg library
+* 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
-    * codec: a basic codec
+    * jp2: a basic codec
     * mj2: motion jpeg 2000 executables
-    * JavaOpenJPEG: java jni to use openjpeg in a java program
-    * jpip: complete client-server architecture for remote browsing of jpeg 2000 images. See corresponding README for more details.
-    * OPJViewer: gui for displaying j2k files (based on wxWidget)
-* thirdparty: thirdparty libraries used by some applications. These libraries will be build only if there are not found on the system. Note that libopenjpeg itself does not have any dependency.
+    * 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
-* m4: autotools related files
+* 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.
\ No newline at end of file
+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.