X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=kernel%2Fappli%2Fbbfy%2Fbbfy.cpp;h=3dd1855448bd914570019bb371625b7d18f1950f;hb=a94262289f8148799f8e319c216d5af2a6053c18;hp=d528eb916e4e5ae60a104655e136064b33f67a44;hpb=b8fe96fbebd153e92de1f1bfcad48ad009365df5;p=bbtk.git diff --git a/kernel/appli/bbfy/bbfy.cpp b/kernel/appli/bbfy/bbfy.cpp index d528eb9..3dd1855 100644 --- a/kernel/appli/bbfy/bbfy.cpp +++ b/kernel/appli/bbfy/bbfy.cpp @@ -63,7 +63,7 @@ private: bool mIsWidget; std::string mParentBlackBox; std::string mItkParent; - std::string mVtkParent; + std::string mVtkObject; bool mGeneric; std::string mAuthor; std::string mDescription; @@ -105,6 +105,8 @@ private: std::string mHName; std::string mCxxName; + void AlertString(); + }; //========================================================================== @@ -140,11 +142,22 @@ void bbfy::CreateBlackBox() } //========================================================================== - +void bbfy::AlertString() +{ + + mFile << "//===== \n"; + mFile << "// Before editing this file, make sure it's a file of your own "; + mFile << "(i.e.: it wasn't generated from xml description; if so : your modifications will be lost)\n"; + mFile << "//===== \n"; + +} //========================================================================== void bbfy::ParseXML() { + + + XMLResults* res = new XMLResults; XMLNode BB = XMLNode::parseFile(mFilename.c_str(),"blackbox",res); @@ -196,27 +209,27 @@ void bbfy::ParseXML() else if (bbtype == vtkImageAlgorithmString) { mType = vtkImageAlgorithm; - // Looks for tag - if (!BB.nChildNode("vtkparent")) + // Looks for tag + if (!BB.nChildNode("vtkobject")) { throw bbfyException("Error : blackbox type '" +vtkImageAlgorithmString - +"' but no tag found (mandatory)"); + +"' but no tag found (mandatory)"); } - bbtk::GetTextOrClear(BB.getChildNode("vtkparent"),mVtkParent); + bbtk::GetTextOrClear(BB.getChildNode("vtkobject"),mVtkObject); // } else if (bbtype == vtkPolyDataAlgorithmString ) { mType = vtkPolyDataAlgorithm; - // Looks for tag - if (!BB.nChildNode("vtkparent")) + // Looks for tag + if (!BB.nChildNode("vtkobject")) { throw bbfyException("Error : blackbox type '" +vtkPolyDataAlgorithmString - +"' but no tag found (mandatory)"); + +"' but no tag found (mandatory)"); } - bbtk::GetTextOrClear(BB.getChildNode("vtkparent"),mVtkParent); + bbtk::GetTextOrClear(BB.getChildNode("vtkobject"),mVtkObject); // } else @@ -426,7 +439,7 @@ void bbfy::ParseXML() // process tag given ? if (BB.nChildNode("process")) { - bbtk::GetTextOrClear(BB.getChildNode("process"),mProcess); + bbtk::GetTextOrClear(BB.getChildNode("process"),mProcess); } // CreateWidget @@ -501,7 +514,9 @@ void bbfy::CreateHeader() mess += fullname + "\""; throw bbfyException(mess); } - + + AlertString(); + // If is widget if (mIsWidget) { @@ -568,11 +583,6 @@ void bbfy::CreateHeader() { mFile << " public " << mItkParent <<",\n"; } - else if ( (mType == vtkImageAlgorithm) || - (mType == vtkPolyDataAlgorithm) ) - { - mFile << " public " << mVtkParent <<",\n"; - } mFile << " public "<::iterator ioi; @@ -689,6 +689,7 @@ void bbfy::CreateHeader() throw bbfyException(mess); } } + // Outputs for (ioi=mOutput.begin(); ioi!=mOutput.end(); ++ioi) @@ -752,6 +753,7 @@ void bbfy::CreateHeader() mFile << " void CreateWidget(wxWindow*);\n"; } + AlertString(); // EO black box declaration mFile << "};\n\n"; @@ -779,7 +781,8 @@ void bbfy::CreateHeader() { throw bbfyException("template bb with more than 1 templ param not impl"); } - + + // Author mFile << "BBTK_AUTHOR(\""<