X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=kernel%2Fsrc%2FbbtkBlackBoxDescriptor.cxx;h=6a2c7bc67156f33f3625187d5761851bb241c2c9;hb=16993e9f411c62e9a73d13c40f3748bdd232ce09;hp=cd1596155b18612759b57561fdfeb063930c47e0;hpb=6f678e6883d4d2734c81492412903c701c8e1f3c;p=bbtk.git diff --git a/kernel/src/bbtkBlackBoxDescriptor.cxx b/kernel/src/bbtkBlackBoxDescriptor.cxx index cd15961..6a2c7bc 100644 --- a/kernel/src/bbtkBlackBoxDescriptor.cxx +++ b/kernel/src/bbtkBlackBoxDescriptor.cxx @@ -1,21 +1,40 @@ +/* + # --------------------------------------------------------------------- + # + # Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image + # pour la SantÈ) + # Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton + # Previous Authors : Laurent Guigues, Jean-Pierre Roux + # CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil + # + # This software is governed by the CeCILL-B license under French law and + # abiding by the rules of distribution of free software. You can use, + # modify and/ or redistribute the software under the terms of the CeCILL-B + # license as circulated by CEA, CNRS and INRIA at the following URL + # http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html + # or in the file LICENSE.txt. + # + # As a counterpart to the access to the source code and rights to copy, + # modify and redistribute granted by the license, users are provided only + # with a limited warranty and the software's author, the holder of the + # economic rights, and the successive licensors have only limited + # liability. + # + # The fact that you are presently reading this means that you have had + # knowledge of the CeCILL-B license and that you accept its terms. + # ------------------------------------------------------------------------ */ + + /*========================================================================= - Program: bbtk Module: $RCSfile: bbtkBlackBoxDescriptor.cxx,v $ Language: C++ - Date: $Date: 2008/02/07 11:06:37 $ - Version: $Revision: 1.11 $ - - Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de - l'Image). All rights reserved. See Doc/License.txt or - http://www.creatis.insa-lyon.fr/Public/bbtk/License.html for details. - - This software is distributed WITHOUT ANY WARRANTY; without even - the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR - PURPOSE. See the above copyright notices for more information. - + Date: $Date: 2012/11/16 08:49:01 $ + Version: $Revision: 1.24 $ =========================================================================*/ + + /** * \file * \brief Class bbtk::BlackBoxDescriptor : (abstract) describes a BlackBox (name, description, author) and is able to create an instance of it. @@ -26,10 +45,20 @@ #include "bbtkUtilities.h" #include "bbtkAtomicBlackBoxDescriptor.h" #include "bbtkWxBlackBox.h" +// JFGA 12/12/2014 Adding libraries for Wt +//#include "bbtkWtBlackBox.h" namespace bbtk { - + + typedef Package::Pointer PackagePointer; + +#define bbtkDMessage(key,level,mess) \ + bbtkMessage(key,level,"["< BlackBoxDescriptor()"< ~BlackBoxDescriptor()" + <second; - bbtkDebugDecTab("Kernel",9); + bbtkDDebugMessage("object",4, + "<== ~BlackBoxDescriptor()" + < BlackBoxDescriptor::Release('" + <GetTypeName()<<"')"< No more instance alive = releasing from package"<mPackage; + Package::ReleaseBlackBoxDescriptor(pack,desc); + } + else + { + bbtkMessage("object",2," --> Still some instances alive = Keeping it alive"<GetTypeName()<<"')"< Destructing BlackBoxDescriptor ["<second; } //========================================================================= @@ -119,16 +214,16 @@ namespace bbtk const BlackBoxDescriptor::OutputDescriptor* BlackBoxDescriptor::GetOutputDescriptor(const std::string & name) const { - bbtkDebugMessageInc("Kernel",9,"BlackBoxDescriptor::GetOutputDescriptor('" - <second; } //========================================================================= @@ -136,32 +231,29 @@ namespace bbtk //========================================================================= void BlackBoxDescriptor::GetHelp(bool full) const { - bbtkDebugMessageInc("Kernel",9,"BlackBoxDescriptor::GetHelp() ["<GetName()<<"::"<"<"<"<second->GetName().size()>namelmax) namelmax = i->second->GetName().size(); if (i->second->GetHumanTypeName().size()>typelmax) typelmax = i->second->GetHumanTypeName().size(); + if (i->second->GetNature().size()>natlmax) + natlmax = i->second->GetNature().size(); } OutputDescriptorMapType::const_iterator o; for ( o = mOutput.begin(); o != mOutput.end(); ++o ) @@ -170,6 +262,8 @@ namespace bbtk namelmax = o->second->GetName().size(); if (o->second->GetHumanTypeName().size()>typelmax) typelmax = o->second->GetHumanTypeName().size(); + if (o->second->GetNature().size()>natlmax) + natlmax = o->second->GetNature().size(); } // for ( i = mInput.begin(); i != mInput.end(); ++i ) @@ -180,15 +274,19 @@ namespace bbtk std::string type(i->second->GetHumanTypeName()); type += ">"; type.append(1+typelmax-type.size(),' '); - bbtkMessage("Help",1, - " '"<second->GetDescription()<second->GetNature()); + nature += "]"; + nature.append(1+natlmax-nature.size(),' '); + bbtkMessage("help",1, + " '"<second->GetDescription()<second->GetName()); @@ -197,25 +295,39 @@ namespace bbtk std::string type(o->second->GetHumanTypeName()); type += ">"; type.append(1+typelmax-type.size(),' '); - bbtkMessage("Help",1, + std::string nature(o->second->GetNature()); + nature += "]"; + nature.append(1+natlmax-nature.size(),' '); + bbtkMessage("help",1, " '"<second->GetDescription()<second->GetDescription()<GetName() + "::" + mTypeName; + return "::" + mTypeName; + } + //========================================================================= + void BlackBoxDescriptor::GetBoxesInside (NodeTreeC& tree, int cont){ + + } //========================================================================= void BlackBoxDescriptor::InsertHtmlHelp ( std::ofstream& s, int detail, int level, const std::string& output_dir, bool relative_link ) { - bbtkDebugMessageInc("Kernel",9,"BlackBoxDescriptor::InsertHtmlHelp() ["< categories; + // Split the category string + std::string delimiters = ";,"; + Utilities::SplitString(GetCategory(), + delimiters,categories); + (s) << "

\n"; (s) << "\n"; (s) << "\n"; - (s) << "\n"; + (s) << "\n"; + (s) << "\n"; (s) << "
Description : " << descr << "
Author(s) : " << author << "
Category(s) : " - << category << "
Category(s) : "; + std::vector::iterator ci; + for (ci=categories.begin(); ci!=categories.end(); ++ci) + { + s << "" << *ci + << " \n"; + } + s << "
To use it : include " << GetPackage()->GetName() << "
\n"; @@ -261,7 +383,8 @@ namespace bbtk std::string usercol("#FFFFFF"); std::string ubbcol("#DDFFFF"); std::string wxbbcol("#EEFFFF"); - +// JFGA 12/12/2014 Adding new variable +// std::string wtbbcol("#CCFFFF"); // (s) << "

Inputs

\n"; (s) << "

\n"; @@ -286,12 +409,14 @@ namespace bbtk col = ubbcol; iotype = 1; } +#ifdef USE_WXWIDGETS else if (in->second->GetCreatorTypeInfo() == typeid(WxBlackBoxDescriptor)) { col = wxbbcol; iotype = 2; } +#endif std::string name(in->second->GetName()); Utilities::html_format(name); @@ -302,8 +427,9 @@ namespace bbtk Utilities::html_format(type); std::string descr(in->second->GetDescription()); - Utilities::html_format(descr); - + //Utilities::html_format(descr); + +/*EED 10/11/2009 std::string out = "" @@ -311,7 +437,16 @@ namespace bbtk +"\">
 "+type+" 
" + "\n"; - +*/ + + std::string out = + "" + + "" + + "\n"; + if (iotype==0) user_defined.push_back(out); else if (iotype==1) ubb_defined.push_back(out); else if (iotype==2) wxbb_defined.push_back(out); @@ -349,12 +484,14 @@ namespace bbtk col = ubbcol; iotype = 1; } +#ifdef USE_WXWIDGETS else if (o->second->GetCreatorTypeInfo() == typeid(WxBlackBoxDescriptor)) { col = wxbbcol; iotype = 2; } +#endif std::string name(o->second->GetName()); Utilities::html_format(name); @@ -365,8 +502,9 @@ namespace bbtk Utilities::html_format(type); std::string descr(o->second->GetDescription()); - Utilities::html_format(descr); + //Utilities::html_format(descr); +/*EED 10/11/2009 std::string out = "" @@ -374,7 +512,15 @@ namespace bbtk +"\">
 "+type+" 
" + "\n"; - +*/ + std::string out = + "" + + "" + + "\n"; + if (iotype==0) user_defined.push_back(out); else if (iotype==1) ubb_defined.push_back(out); else if (iotype==2) wxbb_defined.push_back(out); @@ -390,8 +536,32 @@ namespace bbtk //------------ // End - bbtkDebugDecTab("Kernel",9); + } //========================================================================= + + //========================================================================== + void BlackBoxDescriptor::SetTypeOfScript_Application() + { + SetTypeOfScript(TS_SCRIPT_APPLICATION); + } + //========================================================================== + + + //========================================================================== + bool BlackBoxDescriptor::IsTypeOfScript_Application() + { + return (GetTypeOfScript()==TS_SCRIPT_APPLICATION); + } + //========================================================================== + + + //========================================================================== + bool BlackBoxDescriptor::IsTypeOfScript_ComplexBox() + { + return (GetTypeOfScript()==TS_SCRIPT_COMPLEXBOX); + } + //========================================================================== + }
 "+name+" 
"+descr+"
 "+name+" 
 "+descr+" 
"+type+"
 "+name+" 
"+descr+"
 "+name+" 
 "+descr+" 
"+type+"