X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=common%2FclitkFilterBase.cxx;h=09797d886c750959c84dfa4e6a4db0eb236563e4;hb=f9ba8e0c066f58c8d9f2b10db4306f42470fe7a2;hp=74424d4c3c9e14266c6fe2db4133bff97efec45f;hpb=03c0a567e50d4b3dcdee11112b0a404789468857;p=clitk.git diff --git a/common/clitkFilterBase.cxx b/common/clitkFilterBase.cxx index 74424d4..09797d8 100644 --- a/common/clitkFilterBase.cxx +++ b/common/clitkFilterBase.cxx @@ -18,6 +18,7 @@ // clitk #include "clitkFilterBase.h" +#include "clitkCommon.h" //-------------------------------------------------------------------- clitk::FilterBase::FilterBase() @@ -25,30 +26,9 @@ clitk::FilterBase::FilterBase() SetVerboseOption(false); SetCurrentStepNumber(0); SetCurrentStepBaseId(""); - StopOnErrorOn(); - ResetLastError(); - VerboseWarningOffOn(); // OffOn, it's cool not ? + VerboseWarningOffOn(); // OffOn, it's cool no ? SetWarning(""); -} -//-------------------------------------------------------------------- - - -//-------------------------------------------------------------------- -void clitk::FilterBase::ResetLastError() -{ - m_LastError = ""; -} -//-------------------------------------------------------------------- - - -//-------------------------------------------------------------------- -void clitk::FilterBase::SetLastError(std::string e) -{ - m_LastError = e; - if (GetStopOnError()) { - std::cerr << GetLastError() << std::endl; - exit(0); - } + m_IsCancelled = false; } //-------------------------------------------------------------------- @@ -67,6 +47,10 @@ void clitk::FilterBase::SetWarning(std::string e) //-------------------------------------------------------------------- void clitk::FilterBase::StartNewStep(std::string s) { + if (Cancelled()) { + throw clitk::ExceptionObject("Filter is canceled."); + } + m_CurrentStepNumber++; if (GetCurrentStepBaseId() != "") { std::ostringstream oss; @@ -79,8 +63,10 @@ void clitk::FilterBase::StartNewStep(std::string s) SetCurrentStepId(oss.str()); } + m_CurrentStepName = "Step "+GetCurrentStepId()+" -- "+s; if (m_VerboseStep) { - std::cout << "Step " << GetCurrentStepId() << " -- " << s << std::endl; + std::cout << m_CurrentStepName << std::endl; + //"Step " << GetCurrentStepId() << " -- " << s << std::endl; } } //-------------------------------------------------------------------- @@ -93,3 +79,19 @@ void clitk::FilterBase::StopCurrentStep() } //-------------------------------------------------------------------- + +//-------------------------------------------------------------------- +void clitk::FilterBase::Cancel() +{ + m_IsCancelled = true; +} +//-------------------------------------------------------------------- + + +//-------------------------------------------------------------------- + bool clitk::FilterBase::Cancelled() + { + return m_IsCancelled; + } +//-------------------------------------------------------------------- +