Commit 0a9cae53 authored by Julien Michel's avatar Julien Michel
Browse files

Désactivation de JPEG2000 quand ITK en externe

parent 4cb0a278
......@@ -234,7 +234,8 @@ LINK_DIRECTORIES( ${GDAL_LIBRARY_DIRS} )
OPTION(OTB_USE_EXTERNAL_ITK "Use an outside build of ITK." OFF)
IF(OTB_USE_EXTERNAL_ITK)
MESSAGE(STATUS "WARNING: If you use EXTERNAL ITK, the JPEG2000 format is not supported !")
MESSAGE(STATUS "WARNING: Due to conflicting libraries, jpeg2000 support is disabled when using external ITK.")
ADD_DEFINITIONS(-DOTB_JPEG2000_DISABLED)
FIND_PACKAGE(ITK)
IF(ITK_FOUND)
INCLUDE(${ITK_USE_FILE})
......@@ -242,6 +243,8 @@ IF(OTB_USE_EXTERNAL_ITK)
MESSAGE(FATAL_ERROR
"Cannot build OTB project without ITK. Please set ITK_DIR or set OTB_USE_EXTERNAL_ITK OFF to use INTERNAL ITK set on OTB/Utilities repository.")
ENDIF(ITK_FOUND)
ELSE(OTB_USE_EXTERNAL_ITK)
REMOVE_DEFINITIONS(-DOTB_JPEG2000_DISABLED)
ENDIF(OTB_USE_EXTERNAL_ITK)
......
......@@ -2,9 +2,10 @@
FILE(GLOB OTBIO_SRCS "*.cxx" )
#PROVISOIRE
#LIST(REMOVE_ITEM OTBIO_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/otbJPEG2000ImageIO.cxx" )
#LIST(REMOVE_ITEM OTBIO_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/otbJPEG2000ImageIOFactory.cxx" )
IF(OTB_USE_EXTERNAL_ITK)
LIST(REMOVE_ITEM OTBIO_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/otbJPEG2000ImageIO.cxx" )
LIST(REMOVE_ITEM OTBIO_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/otbJPEG2000ImageIOFactory.cxx" )
ENDIF(OTB_USE_EXTERNAL_ITK)
IF( NOT OTB_USE_CURL )
LIST(REMOVE_ITEM OTBIO_SRCS "${CMAKE_CURRENT_SOURCE_DIR}/otbTileMapImageIOFactory.cxx" )
......@@ -13,8 +14,11 @@ ENDIF( NOT OTB_USE_CURL )
ADD_LIBRARY(OTBIO ${OTBIO_SRCS})
#PROVISOIRE
#TARGET_LINK_LIBRARIES (OTBIO gdal OTBCommon ITKIO ITKCommon otbossim dxf )
IF(OTB_USE_EXTERNAL_ITK)
TARGET_LINK_LIBRARIES (OTBIO gdal OTBCommon ITKIO ITKCommon otbossim dxf )
ELSE(OTB_USE_EXTERNAL_ITK)
TARGET_LINK_LIBRARIES (OTBIO gdal OTBCommon ITKIO ITKCommon otbossim dxf openjpeg)
ENDIF(OTB_USE_EXTERNAL_ITK)
IF( OTB_USE_CURL )
TARGET_LINK_LIBRARIES (OTBIO ${CURL_LIBRARY})
......@@ -33,6 +37,12 @@ IF( NOT OTB_USE_CURL )
LIST(REMOVE_ITEM __files1 "${CMAKE_CURRENT_SOURCE_DIR}/otbTileMapImageIO.h" )
ENDIF( NOT OTB_USE_CURL )
IF(OTB_USE_EXTERNAL_ITK)
LIST(REMOVE_ITEM __files1 "${CMAKE_CURRENT_SOURCE_DIR}/otbJpeg2000ImageIOFactory.h" )
LIST(REMOVE_ITEM __files1 "${CMAKE_CURRENT_SOURCE_DIR}/otbJpeg2000ImageIO.h" )
ENDIF(OTB_USE_EXTERNAL_ITK)
INSTALL(FILES ${__files1} ${__files2}
DESTINATION ${OTB_INSTALL_INCLUDE_DIR}/IO
COMPONENT Development)
......
......@@ -28,7 +28,9 @@
#include "otbGDALImageIOFactory.h"
#include "otbLUMImageIOFactory.h"
#include "otbBSQImageIOFactory.h"
#ifndef OTB_JPEG2000_DISABLED
#include "otbJPEG2000ImageIOFactory.h"
#endif
#ifdef OTB_USE_CURL
#include "otbTileMapImageIOFactory.h"
#endif
......@@ -63,8 +65,10 @@ namespace otb
// LUM format for OTB
itk::ObjectFactoryBase::RegisterFactory( LUMImageIOFactory::New() );
#ifndef OTB_JPEG2000_DISABLED
// JPEG2000 : New format for OTB
itk::ObjectFactoryBase::RegisterFactory( JPEG2000ImageIOFactory::New() );
#endif OTB_JPEG2000_DISABLED
// GDAL : New format for OTB
itk::ObjectFactoryBase::RegisterFactory( GDALImageIOFactory::New() );
......
......@@ -177,17 +177,17 @@ namespace otb
int buffer_size_y = this->GetIORegion().GetSize()[1];
int buffer_size_x = this->GetIORegion().GetSize()[0];
int buffer_y0 = this->GetIORegion().GetIndex()[1] ;
int buffer_x0 = this->GetIORegion().GetIndex()[0] ;
int buffer_y0 = this->GetIORegion().GetIndex()[1];
int buffer_x0 = this->GetIORegion().GetIndex()[0];
otbMsgDevMacro( <<" JPEG2000ImageIO::Read() ");
otbMsgDevMacro( <<" ImageDimension : "<<m_Dimensions[0]<<","<<m_Dimensions[1]);
otbMsgDevMacro( <<" IORegion : "<<this->GetIORegion());
otbMsgDevMacro( <<" Nb Of Components : "<<this->GetNumberOfComponents());
std::cout <<" JPEG2000ImageIO::Read() "<<std::endl;
std::cout <<" ImageDimension : "<<m_Dimensions[0]<<","<<m_Dimensions[1]<<std::endl;
std::cout <<" IORegion : "<<this->GetIORegion()<<std::endl;
std::cout <<" Nb Of Components : "<<this->GetNumberOfComponents()<<std::endl;
otbMsgDevMacro(<<"IORegion: "<<this->GetIORegion());
otbMsgDevMacro(<<"Area to read: "<<buffer_x0<<" "<<buffer_y0 <<" "<< buffer_x0+buffer_size_x-1 <<" "<<buffer_y0+buffer_size_y-1 );
otbMsgDevMacro(<<"Component type: "<<this->GetComponentTypeAsString(this->GetComponentType()));
std::cout<<"IORegion: "<<this->GetIORegion()<<std::endl;
std::cout<<"Area to read: "<<buffer_x0<<" "<<buffer_y0 <<" "<< buffer_x0+buffer_size_x-1 <<" "<<buffer_y0+buffer_size_y-1 <<std::endl;
std::cout<<"Component type: "<<this->GetComponentTypeAsString(this->GetComponentType())<<std::endl;
// Creating openjpeg objects
if(System::SetToLower(System::GetExtension(m_FileName)) == "j2k")
......@@ -272,14 +272,14 @@ namespace otb
}
if(goesOn)
{
otbMsgDevMacro(<<"==========================");
otbMsgDevMacro(<<"Tile index: "<<tile_index);
otbMsgDevMacro(<<"Data size: "<<data_size);
otbMsgDevMacro(<<"Tile (x0,y0): "<<tile_x0<<" "<<tile_y0);
otbMsgDevMacro(<<"Tile (x1,y1): "<<tile_x1<<" "<<tile_y1);
otbMsgDevMacro(<<"Tile number of component: "<<nb_comps);
otbMsgDevMacro(<<"Goes on: "<<goesOn);
otbMsgDevMacro(<<"--------------------------");
std::cout<<"=========================="<<std::endl;
std::cout<<"Tile index: "<<tile_index<<std::endl;
std::cout<<"Data size: "<<data_size<<std::endl;
std::cout<<"Tile (x0,y0): "<<tile_x0<<" "<<tile_y0<<std::endl;
std::cout<<"Tile (x1,y1): "<<tile_x1<<" "<<tile_y1<<std::endl;
std::cout<<"Tile number of component: "<<nb_comps<<std::endl;
std::cout<<"Goes on: "<<goesOn<<std::endl;
std::cout<<"--------------------------"<<std::endl;
tile_data = new OPJ_BYTE[data_size];
......@@ -304,14 +304,14 @@ namespace otb
std::streamsize nb_lines = std::min(tile_y1,buffer_y0+buffer_size_y)- std::max(tile_y0,buffer_y0);
std::streampos buffer_step = nb_comps * m_NbOctetPixel;
otbMsgDevMacro(<<"buffer_skip: "<<buffer_skip);
otbMsgDevMacro(<<"tile_skip: "<<tile_skip);
otbMsgDevMacro(<<"buffer_offset_begin: "<<buffer_offset_begin);
otbMsgDevMacro(<<"buffer_offset_end: "<<buffer_offset_end);
otbMsgDevMacro(<<"tile_offset_begin: "<<tile_offset_begin);
otbMsgDevMacro(<<"tile_offset_end: "<<tile_offset_end);
otbMsgDevMacro(<<"line_size: "<<line_size);
otbMsgDevMacro(<<"nb_lines: "<<nb_lines);
std::cout<<"buffer_skip: "<<buffer_skip<<std::endl;
std::cout<<"tile_skip: "<<tile_skip<<std::endl;
std::cout<<"buffer_offset_begin: "<<buffer_offset_begin<<std::endl;
std::cout<<"buffer_offset_end: "<<buffer_offset_end<<std::endl;
std::cout<<"tile_offset_begin: "<<tile_offset_begin<<std::endl;
std::cout<<"tile_offset_end: "<<tile_offset_end<<std::endl;
std::cout<<"line_size: "<<line_size<<std::endl;
std::cout<<"nb_lines: "<<nb_lines<<std::endl;
std::streamoff buffer_pos,tile_pos;
......@@ -367,7 +367,7 @@ namespace otb
delete[] tile_data;
}
}
otbMsgDevMacro(<<"==========================");
std::cout<<"=========================="<<std::endl;
opj_stream_destroy(m_OpenJpegStream);
......@@ -505,24 +505,24 @@ namespace otb
this->SetPixelType(VECTOR);
}
otbMsgDevMacro(<<"==========================");
otbMsgDevMacro(<<"ReadImageInformation: ");
otbMsgDevMacro(<<"Tile (x0,y0): "<<tile_x0<<" "<<tile_y0);
otbMsgDevMacro(<<"Tile size: "<<tile_width<<" x "<<tile_height);
otbMsgDevMacro(<<"Number of tiles: "<<nb_tiles_x<<" "<<nb_tiles_y);
otbMsgDevMacro(<<"Precision: "<<precision);
otbMsgDevMacro(<<"Signed: "<<isSigned);
otbMsgDevMacro(<<"Number of octet per value: "<<m_NbOctetPixel);
otbMsgDevMacro(<<"==========================");
otbMsgDebugMacro( <<"Driver to read: JPEG2000");
otbMsgDebugMacro( <<" Read file : "<< m_FileName);
otbMsgDebugMacro( <<" Size : "<<m_Dimensions[0]<<","<<m_Dimensions[1]);
otbMsgDebugMacro( <<" ComponentType : "<<this->GetComponentType() );
otbMsgDebugMacro( <<" NumberOfComponents : "<<this->GetNumberOfComponents());
otbMsgDebugMacro( <<" ComponentSize : "<<this->GetComponentSize());
otbMsgDebugMacro( <<" GetPixelSize : "<<this->GetPixelSize());
std::cout<<"=========================="<<std::endl;
std::cout<<"ReadImageInformation: "<<std::endl;
std::cout<<"Tile (x0,y0): "<<tile_x0<<" "<<tile_y0<<std::endl;
std::cout<<"Tile size: "<<tile_width<<" x "<<tile_height<<std::endl;
std::cout<<"Number of tiles: "<<nb_tiles_x<<" "<<nb_tiles_y<<std::endl;
std::cout<<"Precision: "<<precision<<std::endl;
std::cout<<"Signed: "<<isSigned<<std::endl;
std::cout<<"Number of octet per value: "<<m_NbOctetPixel<<std::endl;
std::cout<<"=========================="<<std::endl;
std::cout <<"Driver to read: JPEG2000"<<std::endl;
std::cout <<" Read file : "<< m_FileName<<std::endl;
std::cout <<" Size : "<<m_Dimensions[0]<<","<<m_Dimensions[1]<<std::endl;
std::cout <<" ComponentType : "<<this->GetComponentType()<<std::endl;
std::cout <<" NumberOfComponents : "<<this->GetNumberOfComponents()<<std::endl;
std::cout <<" ComponentSize : "<<this->GetComponentSize()<<std::endl;
std::cout <<" GetPixelSize : "<<this->GetPixelSize()<<std::endl;
opj_stream_destroy(m_OpenJpegStream);
fclose(m_File);
......@@ -790,13 +790,13 @@ namespace otb
itkExceptionMacro(<< "The file "<<m_FileName.c_str()<<" is not defined as a JPEG2000 file");
}
otbMsgDebugMacro( <<"Driver to write: JPEG2000");
otbMsgDebugMacro( <<" Write file : "<< m_FileName);
otbMsgDebugMacro( <<" Size : "<<m_Dimensions[0]<<","<<m_Dimensions[1]);
otbMsgDebugMacro( <<" ComponentType : "<<this->GetComponentType() );
otbMsgDebugMacro( <<" NumberOfComponents : "<<this->GetNumberOfComponents());
otbMsgDebugMacro( <<" ComponentSize : "<<this->GetComponentSize());
otbMsgDebugMacro( <<" GetPixelSize : "<<this->GetPixelSize());
std::cout <<"Driver to write: JPEG2000"<<std::endl;
std::cout <<" Write file : "<< m_FileName<<std::endl;
std::cout <<" Size : "<<m_Dimensions[0]<<","<<m_Dimensions[1]<<std::endl;
std::cout <<" ComponentType : "<<this->GetComponentType()<<std::endl;
std::cout <<" NumberOfComponents : "<<this->GetNumberOfComponents()<<std::endl;
std::cout <<" ComponentSize : "<<this->GetComponentSize()<<std::endl;
std::cout <<" GetPixelSize : "<<this->GetPixelSize()<<std::endl;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment