]> Creatis software - gdcm.git/blobdiff - src/gdcmJpeg12.cxx
* Doc/Website/MailingList.html added (Sidebar.html changed accordingly).
[gdcm.git] / src / gdcmJpeg12.cxx
index 97d7a77a66c3e829a3898b427cdbe1e227e2e360..a107ac22663b763998dc750c610b89366c8e878e 100644 (file)
@@ -1,79 +1,22 @@
-// gdcmJpeg12.cxx
-//-----------------------------------------------------------------------------
-#include <stdio.h>
-#include "gdcmFile.h"
+/*=========================================================================
+                                                                                
+  Program:   gdcm
+  Module:    $RCSfile: gdcmJpeg12.cxx,v $
+  Language:  C++
+  Date:      $Date: 2004/10/12 04:35:46 $
+  Version:   $Revision: 1.21 $
+                                                                                
+  Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
+  l'Image). All rights reserved. See Doc/License.txt or
+  http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details.
+                                                                                
+     This software is distributed WITHOUT ANY WARRANTY; without even
+     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+     PURPOSE.  See the above copyright notices for more information.
+                                                                                
+=========================================================================*/
 
-#define BITS_IN_JSAMPLE 12
-
-#ifdef GDCM_DEBUG
-#define GDCM_jpr_DEBUG 0
-#endif   //GDCM_DEBUG
-
-// BITS_IN_JSAMPLE is a compile time defined options.
-// We need both 8 an 12;
-// To avoid renaming *all* the Jpeg functions,
-// we hard code the 'brain damaged liker' option.
-// For all the functions, we shall have the 8 and 12 version
-// (8 with the 'long' name, 12 with the 'short' name)
-
-#define jpeg_read_header        jReadHeader
-#define my_error_exit           myErrorExit
-#define jpeg_destroy_decompress jDestDecompress
-#define jpeg_stdio_src          jStdSrc
-#define jpeg_read_header        jReadHeader
-#define jpeg_read_scanlines     jReadScanlines
-#define jpeg_finish_decompress  jFinDecompress
-//#define jpeg_create_decompress  jCreaDecompress //FIXME
-
-// -----------------
-#define jpeg_std_error           jStdError
-#define jpeg_CreateCompress      jCreaCompress
-#define jpeg_CreateDecompress    jCreaDecompress
-#define jpeg_destroy_compress    jDestCompress
-#define jpeg_destroy_decompress  jDestDecompress
-#define jpeg_stdio_dest          jStdDest
-#define jpeg_stdio_src           jStdSrc
-#define jpeg_set_defaults        jSetDefaults
-#define jpeg_set_colorspace      jSetColorspace
-#define jpeg_default_colorspace  jDefColorspace
-#define jpeg_set_quality         jSetQuality
-#define jpeg_set_linear_quality  jSetLQuality
-#define jpeg_add_quant_table     jAddQuantTable
-#define jpeg_quality_scaling     jQualityScaling
-#define jpeg_simple_progression  jSimProgress
-#define jpeg_suppress_tables     jSuppressTables
-#define jpeg_alloc_quant_table   jAlcQTable
-#define jpeg_alloc_huff_table    jAlcHTable
-#define jpeg_start_compress      jStrtCompress
-#define jpeg_write_scanlines     jWrtScanlines
-#define jpeg_finish_compress     jFinCompress
-#define jpeg_write_raw_data      jWrtRawData
-#define jpeg_write_marker        jWrtMarker
-#define jpeg_write_m_header      jWrtMHeader
-#define jpeg_write_m_byte        jWrtMByte
-#define jpeg_write_tables        jWrtTables
-#define jpeg_read_header         jReadHeader
-#define jpeg_start_decompress    jStrtDecompress
-#define jpeg_read_scanlines      jReadScanlines
-#define jpeg_finish_decompress   jFinDecompress
-#define jpeg_read_raw_data       jReadRawData
-#define jpeg_has_multiple_scans  jHasMultScn
-#define jpeg_start_output        jStrtOutput
-#define jpeg_finish_output       jFinOutput
-#define jpeg_input_complete      jInComplete
-#define jpeg_new_colormap        jNewCMap
-#define jpeg_consume_input          jConsumeInput
-#define jpeg_calc_output_dimensions jCalcDimensions
-#define jpeg_save_markers           jSaveMarkers
-#define jpeg_set_marker_processor   jSetMarker
-#define jpeg_read_coefficients      jReadCoefs
-#define jpeg_write_coefficients     jWrtCoefs
-#define jpeg_copy_critical_parameters jCopyCrit
-#define jpeg_abort_compress      jAbrtCompress
-#define jpeg_abort_decompress    jAbrtDecompress
-#define jpeg_abort               jAbort
-#define jpeg_destroy             jDestroy
-#define jpeg_resync_to_restart   jResyncRestart
+#include "gdcmFile.h"
 
 /*
  * <setjmp.h> is used for the optional error recovery mechanism shown in
  */
 
 extern "C" {
-#include "jpeg/libijg12/jpeglib12.h"
+#include "src/jpeg/libijg12/jconfig.h"
+#include "src/jpeg/libijg12/jpeglib.h"
 #include <setjmp.h>
 }
+namespace gdcm 
+{
+/******************** JPEG COMPRESSION SAMPLE INTERFACE *******************/
+
+//
+//  TODO
+//
+
+bool gdcm_write_JPEG_file12 (FILE* fp, void*  im_buff, 
+                             int image_width, int image_heigh, int quality)
+{
+  (void)fp;
+  (void)im_buff;
+  (void)image_width;
+  (void)image_heigh;
+  (void)quality;
+  
+  return true; //???
+}
 
 /******************** JPEG DECOMPRESSION SAMPLE INTERFACE *******************/
 
@@ -144,7 +107,8 @@ typedef struct my_error_mgr * my_error_ptr;
 /*
  * Here's the routine that will replace the standard error_exit method:
  */
-METHODDEF(void) my_error_exit (j_common_ptr cinfo) {
+METHODDEF(void) my_error_exit (j_common_ptr cinfo)
+{
    /* cinfo->err really points to a my_error_mgr struct, so coerce pointer */
    my_error_ptr myerr = (my_error_ptr) cinfo->err;
 
@@ -164,7 +128,7 @@ METHODDEF(void) my_error_exit (j_common_ptr cinfo) {
  */
  
  /**
- * \ingroup gdcmFile
+ * \ingroup File
  * \brief   routine for JPEG decompression 
  * @param fp pointer to an already open file descriptor 
  *                      12 significant bits per pixel
@@ -172,7 +136,8 @@ METHODDEF(void) my_error_exit (j_common_ptr cinfo) {
  * @return 1 on success, 0 on error
  */
  
-bool gdcmFile::gdcm_read_JPEG_file12 (FILE *fp,void * image_buffer) {
+bool gdcm_read_JPEG_file12 ( FILE* fp,void* image_buffer )
+{
    char *pimage;
 
    /* This struct contains the JPEG decompression parameters and pointers to
@@ -206,7 +171,7 @@ bool gdcmFile::gdcm_read_JPEG_file12 (FILE *fp,void * image_buffer) {
 
    int row_stride;/* physical row width in output buffer */
 #ifdef GDCM_JPG_DEBUG
-   printf("entree dans gdcmFile::gdcm_read_JPEG_file12, depuis gdcmJpeg\n");
+   printf("entree dans File::gdcm_read_JPEG_file12, depuis gdcmJpeg\n");
 #endif //GDCM_JPG_DEBUG
 
    /* In this example we want to open the input file before doing anything else,
@@ -377,7 +342,7 @@ bool gdcmFile::gdcm_read_JPEG_file12 (FILE *fp,void * image_buffer) {
 
    /* And we're done! */
 
-   return(true);
+   return true;
 }
 
 /*
@@ -406,3 +371,6 @@ bool gdcmFile::gdcm_read_JPEG_file12 (FILE *fp,void * image_buffer) {
  */
 
 //-----------------------------------------------------------------------------
+
+} // end namespace gdcm
+