mPriority(prio),
mIndex(-1),
mUnloadIndex(-1),
- mImage(0)
+ mImage(NULL)
{}
+
~ImageToLoad()
{
- if (mImage>0)
- {
- // std::cout << "Refs = "<<mImage->GetReferenceCount()<<std::endl;
- mImage->Delete();
- }
+ if (mImage != NULL)
+ {
+ // std::cout << "Refs = "<<mImage->GetReferenceCount()<<std::endl;
+ mImage->Delete();
+ } // if
}
+
MultiThreadImageReaderUser* GetUser() const { return mUser; }
void SetUser( MultiThreadImageReaderUser* u ) { mUser = u; }
const std::string& GetFilename() const { return mFilename; }
std::map<std::string, std::string> getAttributes(const std::vector<std::string> i_attr);
private:
- MultiThreadImageReaderUser* mUser;
- std::string mFilename;
- int mPriority;
- int mIndex;
- int mUnloadIndex;
- vtkImageData* mImage;
+ MultiThreadImageReaderUser *mUser;
+ std::string mFilename;
+ int mPriority;
+ int mIndex;
+ int mUnloadIndex;
+ vtkImageData *mImage;
};
//
/// Type of pointer on an ImageToLoad struct
- typedef ImageToLoad* ImageToLoadPtr;
+ typedef ImageToLoad *ImageToLoadPtr;
/// ImageToLoadPtr comparator on priority (for image queue)
struct ImageToLoadPtrPriorityComparator
/// The callback from threaded readers when an image is read
void SignalImageRead(ImageToLoadPtr p, bool purge);
-
+
+ void CleanMImagesMap();
+
+
+
/// The type of map of images
- typedef std::map<ImageToLoadPtr,vtkImageData*,
- ImageToLoadPtrFilenameComparator> ImageMapType;
+ typedef std::map<ImageToLoadPtr,vtkImageData*, ImageToLoadPtrFilenameComparator> ImageMapType;
/// The map of images
ImageMapType mImages;
/// Comparator for the image to load queue