Program: bbtk
Module: $RCSfile: bbtkExecuter.cxx,v $ $
Language: C++
- Date: $Date: 2008/01/22 15:02:00 $
- Version: $Revision: 1.1 $
+ Date: $Date: 2008/01/30 09:28:15 $
+ Version: $Revision: 1.4 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
mRoot = new ComplexBlackBoxDescriptor("workspace"); //,f);
mRoot->AddToAuthor("bbi (internal)");
mRoot->AddToDescription("User's workspace");
- mCurrent.push_back(CBBDefinition(mRoot,"user"));
+ mOpenDefinition.push_back(CBBDefinition(mRoot,"user"));
// Register it into the user package
mPackage->RegisterBlackBox(mRoot);
// Insert the user package in the factory
InsertPackage(mPackage);
-
+ mOpenPackage.push_back(mPackage);
bbtkDebugDecTab("Core",9);
}
mPackage->ChangeBlackBoxName( mRoot->GetTypeName(), n );
}
+ void Executer::BeginPackage (const std::string &name)
+ {
+ bbtkDebugMessageInc("Core",9,"Executer::BeginPackage(\""<<name<<"\")"
+ <<std::endl);
+ Package* p;
+ try
+ {
+ p = GetGlobalFactory()->GetPackage(name);
+ }
+ catch (Exception e)
+ {
+ p = new Package(name,
+ "",
+ "",
+ "",
+ BBTK_STRINGIFY_SYMBOL(BBTK_VERSION));
+ InsertPackage(p);
+ }
+ mOpenPackage.push_back(p);
+ }
+
+ void Executer::EndPackage()
+ {
+ if (mOpenPackage.size()>1) mOpenPackage.pop_back();
+ }
void Executer::Define (const std::string &name,
const std::string &pack,
ComplexBlackBoxDescriptor* b = new ComplexBlackBoxDescriptor(name);
b->SetScriptFileName(scriptfilename);
- mCurrent.push_back( CBBDefinition( b, pack ) );
+ mOpenDefinition.push_back( CBBDefinition( b, pack ) );
bbtkDebugDecTab("Core",9);
}
<<Current()->GetTypeName()<<"\")"
<<std::endl);
// Does current package exist ?
- std::string pname(mCurrent.back().package);
Package* p;
+
+ std::string pname(mOpenDefinition.back().package);
+ if (pname.size()>0)
+ {
try
{
p = GetGlobalFactory()->GetPackage(pname);
BBTK_STRINGIFY_SYMBOL(BBTK_VERSION));
InsertPackage(p);
}
-
+ }
+ else
+ {
+ p = mOpenPackage.back();
+ }
p->RegisterBlackBox(Current());
- mCurrent.pop_back();
+ mOpenDefinition.pop_back();
}
}
}
-
/**
*
*/
Current()->AddToAuthor(authorName,Current()==mRoot);
}
-
+ void Executer::Keyword(const std::string &keyword)
+ {
+ Current()->AddToKeyword(keyword,Current()==mRoot);
+ }
void Executer::Description(const std::string &d)
{
relative_link = false;
}
+
+ Package* p;
+ try
+ {
+ p = GetGlobalFactory()->GetPackage(nameblackbox);
+ }
+ catch (Exception e)
+ {
+ p = mPackage;
+ }
// Generating documentation-help of workspace
- mPackage->SetDocURL(filename_rootHtml);
- mPackage->SetDocRelativeURL(simplefilename_rootHtml);
+ p->SetDocURL(filename_rootHtml);
+ p->SetDocRelativeURL(simplefilename_rootHtml);
- mPackage->CreateHtmlPage(filename_rootHtml,"bbi","user package",custom_header,custom_title,detail,level,relative_link);
+ p->CreateHtmlPage(filename_rootHtml,"bbi","user package",custom_header,custom_title,detail,level,relative_link);
std::string page = filename_rootHtml;
/*