Orion Poplawski b703dcb
diff -up gdcm-2.0.18/Examples/Cxx/CMakeLists.txt.charls gdcm-2.0.18/Examples/Cxx/CMakeLists.txt
Orion Poplawski b703dcb
--- gdcm-2.0.18/Examples/Cxx/CMakeLists.txt.charls	2011-06-29 01:08:45.000000000 -0600
Orion Poplawski b703dcb
+++ gdcm-2.0.18/Examples/Cxx/CMakeLists.txt	2011-11-02 09:33:12.023845136 -0600
Orion Poplawski b703dcb
@@ -107,7 +107,7 @@ ENDIF(GDCM_BUILD_TESTING)
Orion Poplawski b703dcb
 FOREACH(example ${EXAMPLES_SRCS})
Orion Poplawski b703dcb
   ADD_EXECUTABLE(${example} ${example}.cxx)
Orion Poplawski b703dcb
   IF(${example} STREQUAL "FixJAIBugJPEGLS")
Orion Poplawski b703dcb
-    TARGET_LINK_LIBRARIES(${example} gdcmMSFF gdcmcharls)
Orion Poplawski b703dcb
+    TARGET_LINK_LIBRARIES(${example} gdcmMSFF ${GDCM_CHARLS_LIBRARIES})
Orion Poplawski b703dcb
   ELSE()
Orion Poplawski b703dcb
     TARGET_LINK_LIBRARIES(${example} gdcmMSFF)
Orion Poplawski b703dcb
   ENDIF()
Orion Poplawski 0ae9dc7
diff -up gdcm-2.0.18/Examples/Cxx/FixJAIBugJPEGLS.cxx.charls gdcm-2.0.18/Examples/Cxx/FixJAIBugJPEGLS.cxx
Orion Poplawski 0ae9dc7
--- gdcm-2.0.18/Examples/Cxx/FixJAIBugJPEGLS.cxx.charls	2011-06-29 01:08:45.000000000 -0600
Orion Poplawski b2fed2e
+++ gdcm-2.0.18/Examples/Cxx/FixJAIBugJPEGLS.cxx	2011-11-02 09:15:59.630494712 -0600
Orion Poplawski 0ae9dc7
@@ -17,8 +17,7 @@
Orion Poplawski 0ae9dc7
 
Orion Poplawski 0ae9dc7
 #include <fstream>
Orion Poplawski 0ae9dc7
 
Orion Poplawski 0ae9dc7
-#include "gdcmcharls/stdafx.h"
Orion Poplawski 0ae9dc7
-#include "gdcmcharls/interface.h"
Orion Poplawski 0ae9dc7
+#include "gdcm_charls.h"
Orion Poplawski 0ae9dc7
 
Orion Poplawski 0ae9dc7
 /*
Orion Poplawski 0ae9dc7
  * This small example should show how one can handle the famous JAI-JPEGLS bug
Orion Poplawski c2ef216
@@ -67,7 +66,11 @@ int main(int argc, char *argv[])
Orion Poplawski c2ef216
   char *buffer = &vbuffer[0];
Orion Poplawski c2ef216
     sf->GetBuffer(buffer, totalLen);
Orion Poplawski c2ef216
 
Orion Poplawski c2ef216
+#ifdef GDCM_USE_SYSTEM_CHARLS
Orion Poplawski c2ef216
+  JlsParameters metadata;
Orion Poplawski c2ef216
+#else
Orion Poplawski c2ef216
   JlsParamaters metadata;
Orion Poplawski c2ef216
+#endif
Orion Poplawski c2ef216
   if (JpegLsReadHeader(buffer, totalLen, &metadata) != OK)
Orion Poplawski c2ef216
     {
Orion Poplawski c2ef216
     std::cerr << "Cant parse jpegls" << std::endl;
Orion Poplawski b2fed2e
@@ -156,15 +159,24 @@ int main(int argc, char *argv[])
Orion Poplawski c2ef216
   const char *pbyteCompressed = &vbuffer[0];
Orion Poplawski c2ef216
   unsigned int cbyteCompressed = vbuffer.size(); // updated legnth
Orion Poplawski c2ef216
 
Orion Poplawski c2ef216
+#ifdef GDCM_USE_SYSTEM_CHARLS
Orion Poplawski c2ef216
+  JlsParameters params = {0};
Orion Poplawski c2ef216
+#else
Orion Poplawski c2ef216
   JlsParamaters params = {0};
Orion Poplawski c2ef216
+#endif
Orion Poplawski c2ef216
   JpegLsReadHeader(pbyteCompressed, cbyteCompressed, &params);
Orion Poplawski c2ef216
 
Orion Poplawski c2ef216
   std::vector<BYTE> rgbyteOut;
Orion Poplawski b2fed2e
   //rgbyteOut.resize( image.GetBufferLength() );
Orion Poplawski b2fed2e
   rgbyteOut.resize(params.height *params.width * ((params.bitspersample + 7) / 8) * params.components);
Orion Poplawski b2fed2e
 
Orion Poplawski b2fed2e
+#ifdef GDCM_USE_SYSTEM_CHARLS
Orion Poplawski b2fed2e
+  JLS_ERROR result =
Orion Poplawski b2fed2e
+    JpegLsDecode(&rgbyteOut[0], rgbyteOut.size(), pbyteCompressed, cbyteCompressed, &params );
Orion Poplawski b2fed2e
+#else
Orion Poplawski b2fed2e
   JLS_ERROR result =
Orion Poplawski b2fed2e
     JpegLsDecode(&rgbyteOut[0], rgbyteOut.size(), pbyteCompressed, cbyteCompressed );
Orion Poplawski b2fed2e
+#endif
Orion Poplawski b2fed2e
   if (result != OK)
Orion Poplawski b2fed2e
     {
Orion Poplawski b2fed2e
     std::cerr << "Could not patch JAI-JPEGLS" << std::endl;