X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FcreaImageIOGimmickView.cpp;h=4ada3a9c54277a33230e0bee464de9bc514f3f3f;hb=bebe9cec5af89cf1461b3230c9aa31e930d49fb8;hp=245b0b563c829ad96d34abb6fd28bfce268a37d6;hpb=f5357d5e24ce935ff82ebb98d21dc95185c3528e;p=creaImageIO.git diff --git a/src/creaImageIOGimmickView.cpp b/src/creaImageIOGimmickView.cpp index 245b0b5..4ada3a9 100644 --- a/src/creaImageIOGimmickView.cpp +++ b/src/creaImageIOGimmickView.cpp @@ -486,20 +486,37 @@ void GimmickView::ReadImagesNotThreaded(std::vector& s, std::vect void GimmickView::readImages1(std::vector& o_output, std::vector im, OutputAttr i_attr) { + + i_attr.outside.push_back("D0019_100a"); // simens Number Of Images In Mosaic + +//EED Borrame + int i,isize=i_attr.outside.size(); + for (i=0;i::iterator it; for (it=im.begin(); it!=im.end(); ++it) { OutStrGimmick out; out.img = vtkImageData::New(); out.img->ShallowCopy(mReader.GetImage(*it)); - if(i_attr.mult) +printf("EED GimmickView::readImages1 A\n "); + if(i_attr.mult) + { getAttributes((*it),out.infos,i_attr); +printf("EED GimmickView::readImages1 B %s \n ", out.infos.find("D0019_100a")->second.c_str() ); + } o_output.push_back(out); } // If we want only one output information structure, we set it outside the loop if(!i_attr.mult) { getAttributes(im.front(), o_output.front().infos, i_attr); +printf("EED GimmickView::readImages1 C %s \n ", o_output.front().infos.find("D0019_100a")->second.c_str() ); } } @@ -520,9 +537,7 @@ void GimmickView::ReadImagesNotThreaded(std::vector& s, std::vect if(ext[5] == 0) { ext[5] = (int)im.size()-1; - } - else - { + } else { ext[5] = ext[5] * (int)im.size()-1; // to deal with multiframes } out.img->SetExtent(ext); @@ -665,24 +680,17 @@ void GimmickView::ReadImagesNotThreaded(std::vector& s, std::vect if ( size == 0) { return; - } - else if (size == 1) - { + } else if (size == 1) { // Simplest case // Only one image : give it // But take in count multiframe possibility if ( isSingle(im.front()) || i_dim != 1) { readImages1(o_output,im, i_attr); - } - else - { - readImages2(o_output,im, i_attr,i_zspc); - } - - } - else - { + } else { + readImages2(o_output,im, i_attr,i_zspc); + } + } else { // multiple or single frame if ( isSingle(im.front()) ) { @@ -691,40 +699,33 @@ void GimmickView::ReadImagesNotThreaded(std::vector& s, std::vect { // 2D to 3D readImages3(o_output,im, i_attr,i_zspc); - } - else - { + } else { readImages1(o_output,im, i_attr); } - } - else - { + } else { // we deal with multiple frames n x (2D x T) // Differents outputs are avaialable if(i_dim == 1) { // put all in one output readImages3(o_output,im, i_attr,i_zspc); - - } - else if( i_dim == 2) - { + } else if( i_dim == 2) { // put in a vector of n x T (2D) readImages2(o_output,im, i_attr,i_zspc); - } - else if( i_dim == 3) - { + } else if( i_dim == 3) { // put in a vector of n (2D x T) // No transformations. readImages1(o_output,im, i_attr); - } - else - { + } else { // put in a vector of T (2D x n) readImages4(o_output,im, i_attr); - } - } - } + } // i_dim + } //isSingle(im.front()) + } // if size + +//EED UnMosaic step... +//How to verifie if is a mosaic file , with how many images inside?? + } @@ -745,7 +746,7 @@ void GimmickView::ReadImagesNotThreadedInVector(std::vector& s, s else if (im.size()>1) // Test inutile ? JPR { /// \TODO fix unused variable 'first' - vtkImageData* first = mReader.GetImage( im.front()); +// vtkImageData* first = mReader.GetImage( im.front()); if (dimension == 2) { // n3D @@ -755,10 +756,8 @@ void GimmickView::ReadImagesNotThreadedInVector(std::vector& s, s vtkImageData* out = vtkImageData::New(); out->ShallowCopy(mReader.GetImage(*it)); s.push_back(out); - } - } - else - { + } // for + } else { // n2D to 3D // NO! // n *2D + T in a vector : @@ -767,9 +766,9 @@ void GimmickView::ReadImagesNotThreadedInVector(std::vector& s, s { vtkImageData* out = mReader.GetImage( (*it)); s.push_back(out); - } - } - } + } // for + } // if dimension + } // if im.size } //====================================================================== @@ -900,8 +899,9 @@ void GimmickView::Anonymize(std::vector i_filenames, int type) // We need a gdcm::FileHelper, since we want to load the pixels GDCM_NAME_SPACE::FileHelper *fh = GDCM_NAME_SPACE::FileHelper::New(file); - - uint8_t *imageData = fh->GetImageData(); + +//Borrame +//EED uint8_t *imageData = fh->GetImageData(); // Institution name file->AddAnonymizeElement(0x0008, 0x0080, "*"); @@ -925,7 +925,7 @@ void GimmickView::Anonymize(std::vector i_filenames, int type) fh->SetContentType(GDCM_NAME_SPACE::UNMODIFIED_PIXELS_IMAGE); fh->WriteDcmExplVR(file->GetFileName() +".ano1" ); - std::cout << i <<" End Anonymize" << std::cout; + std::cout << i <<" End Anonymize" << std::endl; file->ClearAnonymizeList(); file->Delete(); fh->Delete();