dcmjpls/include/dcmtk/dcmjpls/djlsutil.h

00001 /*
00002  *
00003  *  Copyright (C) 1997-2010, OFFIS e.V.
00004  *  All rights reserved.  See COPYRIGHT file for details.
00005  *
00006  *  This software and supporting documentation were developed by
00007  *
00008  *    OFFIS e.V.
00009  *    R&D Division Health
00010  *    Escherweg 2
00011  *    D-26121 Oldenburg, Germany
00012  *
00013  *
00014  *  Module:  dcmjpls
00015  *
00016  *  Author:  Martin Willkomm, Uli Schlachter
00017  *
00018  *  Purpose: enumerations, error constants and helper functions for dcmjp2k
00019  *
00020  *  Last Update:      $Author: joergr $
00021  *  Update Date:      $Date: 2010-10-14 13:17:19 $
00022  *  CVS/RCS Revision: $Revision: 1.6 $
00023  *  Status:           $State: Exp $
00024  *
00025  *  CVS/RCS Log at end of file
00026  *
00027  */
00028 
00029 #ifndef DCMJPLS_DJLSUTILS_H
00030 #define DCMJPLS_DJLSUTILS_H
00031 
00032 #include "dcmtk/config/osconfig.h"
00033 #include "dcmtk/ofstd/ofcond.h"   /* for class OFCondition */
00034 #include "dcmtk/oflog/oflog.h"
00035 
00036 
00037 // global definitions for logging mechanism provided by the oflog module
00038 
00039 OFLogger DCM_dcmjplsGetLogger();
00040 
00041 #define DCMJPLS_TRACE(msg) OFLOG_TRACE(DCM_dcmjplsGetLogger(), msg)
00042 #define DCMJPLS_DEBUG(msg) OFLOG_DEBUG(DCM_dcmjplsGetLogger(), msg)
00043 #define DCMJPLS_INFO(msg)  OFLOG_INFO(DCM_dcmjplsGetLogger(), msg)
00044 #define DCMJPLS_WARN(msg)  OFLOG_WARN(DCM_dcmjplsGetLogger(), msg)
00045 #define DCMJPLS_ERROR(msg) OFLOG_ERROR(DCM_dcmjplsGetLogger(), msg)
00046 #define DCMJPLS_FATAL(msg) OFLOG_FATAL(DCM_dcmjplsGetLogger(), msg)
00047 
00048 
00052 enum JLS_UIDCreation
00053 {
00057   EJLSUC_default,
00058 
00060   EJLSUC_always,
00061 
00063   EJLSUC_never
00064 };
00065 
00069 enum JLS_PlanarConfiguration
00070 {
00072   EJLSPC_restore,
00073 
00077   EJLSPC_auto,
00078 
00080   EJLSPC_colorByPixel,
00081 
00083   EJLSPC_colorByPlane
00084 };
00085 
00089 enum JLS_CompressionBitDepth
00090 {
00092   EJLSBD_original,
00093 
00097   EJLSBD_limit,
00098 
00103   EJLSBD_force
00104 };
00105 
00106 
00107 // CONDITION CONSTANTS
00108 
00110 extern const OFCondition EC_JLSUncompressedBufferTooSmall;
00111 
00113 extern const OFCondition EC_JLSCompressedBufferTooSmall;
00114 
00116 extern const OFCondition EC_JLSCodecUnsupportedImageType;
00117 
00119 extern const OFCondition EC_JLSCodecInvalidParameters;
00120 
00122 extern const OFCondition EC_JLSCodecUnsupportedValue;
00123 
00125 extern const OFCondition EC_JLSInvalidCompressedData;
00126 
00128 extern const OFCondition EC_JLSUnsupportedBitDepthForTransform;
00129 
00131 extern const OFCondition EC_JLSUnsupportedColorTransform;
00132 
00134 extern const OFCondition EC_JLSUnsupportedBitDepth;
00135 
00137 extern const OFCondition EC_JLSCannotComputeNumberOfFragments;
00138 
00140 extern const OFCondition EC_JLSImageDataMismatch;
00141 
00143 extern const OFCondition EC_JLSUnsupportedPhotometricInterpretation;
00144 
00146 extern const OFCondition EC_JLSUnsupportedPixelRepresentation;
00147 
00149 extern const OFCondition EC_JLSUnsupportedImageType;
00150 
00152 extern const OFCondition EC_JLSTooMuchCompressedData;
00153 
00154 #endif
00155 
00156 /*
00157  * CVS/RCS Log:
00158  * $Log: djlsutil.h,v $
00159  * Revision 1.6  2010-10-14 13:17:19  joergr
00160  * Updated copyright header. Added reference to COPYRIGHT file.
00161  *
00162  * Revision 1.5  2010-03-01 10:35:28  uli
00163  * Renamed include guards to avoid name clash with e.g. dcmjpeg.
00164  *
00165  * Revision 1.4  2010-02-25 08:50:38  uli
00166  * Updated to latest CharLS version.
00167  *
00168  * Revision 1.3  2009-10-07 13:16:47  uli
00169  * Switched to logging mechanism provided by the "new" oflog module.
00170  *
00171  * Revision 1.2  2009-07-31 09:05:43  meichel
00172  * Added more detailed error messages, minor code clean-up
00173  *
00174  * Revision 1.1  2009-07-29 14:46:46  meichel
00175  * Initial release of module dcmjpls, a JPEG-LS codec for DCMTK based on CharLS
00176  *
00177  * Revision 1.2  2007-06-20 12:37:37  meichel
00178  * Completed implementation of encoder, which now supports lossless
00179  *   "raw" and "cooked" and near-lossless "cooked" modes.
00180  *
00181  * Revision 1.1  2007/06/15 14:35:45  meichel
00182  * Renamed CMake project and include directory from dcmjpgls to dcmjpls
00183  *
00184  * Revision 1.4  2007/06/15 10:39:15  meichel
00185  * Completed implementation of decoder, which now correctly processes all
00186  *   of the NEMA JPEG-LS sample images, including fragmented frames.
00187  *
00188  * Revision 1.3  2007/06/14 12:36:14  meichel
00189  * Further code clean-up. Updated doxygen comments.
00190  *
00191  * Revision 1.2  2007/06/13 16:41:07  meichel
00192  * Code clean-up and removal of dead code
00193  *
00194  *
00195  */


Generated on 6 Jan 2011 for OFFIS DCMTK Version 3.6.0 by Doxygen 1.5.1