X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FOpenImageDialog.cxx;h=6b635e1388d06f958bc2485e69eead78f4ba6fc1;hb=9dd39f42ca5abd6ce26dccc8617e5edd30517587;hp=88ebdd363493988a80a2a33ca16b8ad48f556e05;hpb=29ac45e15af78e7565693465053770e00e7b1a0d;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/OpenImageDialog.cxx b/lib/maracasVisuLib/src/interface/wxWindows/widgets/OpenImageDialog.cxx index 88ebdd3..6b635e1 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/OpenImageDialog.cxx +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/OpenImageDialog.cxx @@ -2,56 +2,122 @@ #include "OpenImageDialog.h" #include "creaWx.h" +#if defined(__GNUC__) +// GCC compiler +// dlopen, dlsym, etc. + #include +#endif + typedef vtkImageData* (*GETIMAGEDATADIALOG)(); namespace creaMaracasVisuKernel{ - OpenImageDialog::OpenImageDialog() + OpenImageDialog::OpenImageDialog(bool usegimmick) { - img = NULL; - bool gimmicknotfound = true; + img = NULL; + + bool gimmickfound = false; - #ifdef WIN32 - HINSTANCE gimmickhandle; - gimmickhandle = LoadLibrary(TEXT("creaImageIO2.dll")); - std::cout<<"imagehandle "<ShowModal()==wxID_OK) { std::string path= crea::wx2std(FD->GetPath()); - - vtkMetaImageReader *reader = vtkMetaImageReader::New(); + vtkMetaImageReader* reader = vtkMetaImageReader::New(); reader->SetFileName(path.c_str()); - img = reader->GetOutput(); + reader->Update(); + img = vtkImageData::New(); + img->DeepCopy(reader->GetOutput()); + //reader->GetOutput()->Delete(); + reader->Delete(); + /*std::cout<<"image reference count "<GetReferenceCount()<GetOutput()->GetSpacing(spacing); + img->SetSpacing(spacing); + reader->GetOutput()->GetExtent(extint); + img->SetExtent(extint); + img->SetScalarType(reader->GetOutput()->GetScalarType()); + img->AllocateScalars(); + std::cout<<"image reference count "<GetReferenceCount()<GetOutput()->GetScalarPointer(i,j,k); + ptr2=(unsigned short*)img->GetScalarPointer(i,j,k); + *ptr2 = *ptr1; + } + } + }*/ + + std::cout<<"image reference count "<GetReferenceCount()<