Home || Visual Search || Applications || Architecture || Important Messages || OGL || Src

void Impala::Persistency::ImageArchiveRepositoryInFile::Add ( const ImageArchiveLocator loc,
ImageArchive archive 
) [inline]

Definition at line 52 of file ImageArchiveRepositoryInFile.h.

References Impala::Core::Array::ArrayListDelete(), GetDir(), Impala::Persistency::RepositoryInFileSystem::GetFile(), Impala::Core::Array::ImageArchive::GetImageData(), Impala::Core::Array::ImageArchive::GetImageDataList(), Impala::Persistency::ImageArchiveLocator::GetName(), Impala::Core::Array::ImageArchive::NrImages(), RepFS(), and Impala::Core::Array::WriteRawListVar().

00053     {
00054         std::vector<Array2dScalarUInt8*> images;
00055         if (archive->GetImageDataList() != 0)
00056         {
00057             images = *(archive->GetImageDataList());
00058         }
00059         else
00060         {
00061             for (int i=0 ; i<archive->NrImages() ; i++)
00062             {
00063                 size_t blockSize = 0;
00064                 UInt8* data = archive->GetImageData(i, blockSize);
00065                 Array2dScalarUInt8* im = new Array2dScalarUInt8(blockSize, 1, 0,
00066                                                                 0, data, false);
00067                 images.push_back(im);
00068             }
00069         }
00070 
00071         String dir = GetDir(loc);
00072         File file = RepFS().GetFile(loc, dir, loc.GetName(), true, false);
00073         WriteRawListVar(images, file, true, true);
00074         if (archive->GetImageDataList() == 0)
00075             Core::Array::ArrayListDelete(&images);
00076     }

Here is the call graph for this function:


Generated on Thu Jan 13 09:23:00 2011 for ImpalaSrc by  doxygen 1.5.1