#include <creaImageIOGimmickView.h>
#include <creaImageIOSystem.h>
-
#include "boost/filesystem.hpp"
namespace fs = boost::filesystem;
//======================================================================
// CTor
- GimmickView::GimmickView(Gimmick* gimmick, int threads)
+ GimmickView::GimmickView(boost::shared_ptr<Gimmick> gimmick, int threads)
: mGimmick(gimmick),
mReader(threads)
{
///
void GimmickView::Initialize()
{
- mImageExtent=0;
mReaderStarted=false;
}
//======================================================================
{
if(mImageExtent!=0)
{
- mImageExtent=0;
+ mImageExtent.reset();
}
valid=true;
}
}
}
+ //======================================================================
+ /// No selected image
+ bool GimmickView::NoValidateSelected ()
+ {
+ GimmickDebugMessage(2,"Validating selected"<<std::endl);
+ std::string mMessage;
+ mMessage="Cannot have 0 images selected!";
+ valid=false;
+ modifyValidationSignal(valid);
+ SetMessage(mMessage);
+ return valid;
+ }
+
//======================================================================
///Validates the dimension compliance of the images with the maximum and
///minimum given, and between their sizes
}
else
{
- ImageExtent* ie=new ImageExtent((*sel).GetAttribute("D0028_0010"),
+ boost::shared_ptr<ImageExtent> ie=boost::shared_ptr<ImageExtent>(new ImageExtent((*sel).GetAttribute("D0028_0010"),
(*sel).GetAttribute("D0028_0011"),
(*sel).GetAttribute("D0028_0012"),
- "");
+ ""));
if(mImageExtent==0)
{
mImageExtent=ie;
out->SetScalarType(first->GetScalarType());
int ext[6];
first->GetExtent(ext);
- ext[5] = im.size();
- out->SetExtent(ext) -1;
+ ext[5] = im.size()-1;
+ out->SetExtent(ext);
// LG : TODO : Z Spacing ?
out->AllocateScalars();
//======================================================================
///Requests the reading of an image
void GimmickView::RequestReading(tree::Node* n,
- int prio, int selection_index, ImagePointerHolder *p)
+ int prio, int selection_index, boost::shared_ptr<ImagePointerHolder> p)
{
if(!mReaderStarted)
{
mReader.Start();
mReaderStarted=true;
}
- ImageEventType t(n,selection_index, p);
+ ImageEventType t(n,selection_index);
+ t.pointerHolder = p;
mImageEventMap[n->GetAttribute("FullFileName")] = t;
mReader.Request(this,n->GetAttribute("FullFileName"),prio);
}