X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=kernel%2Fsrc%2FbbtkInterpreterJavaScript.cxx;fp=kernel%2Fsrc%2FbbtkInterpreterJavaScript.cxx;h=1927b2de196d182baad37a9a24ee7a1f30dbf099;hb=103f8756e4e48f909eb4f6db115043d5b08c6f1d;hp=0000000000000000000000000000000000000000;hpb=dfcd0b84f01eb96e43c2180a35d626cc123a7231;p=bbtk.git diff --git a/kernel/src/bbtkInterpreterJavaScript.cxx b/kernel/src/bbtkInterpreterJavaScript.cxx new file mode 100644 index 0000000..1927b2d --- /dev/null +++ b/kernel/src/bbtkInterpreterJavaScript.cxx @@ -0,0 +1,170 @@ +/* +# --------------------------------------------------------------------- +# +# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image +# pour la Santé) +# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton +# +# 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$ +Language: C++ +Date: $Date$ +Version: $Revision$ +=========================================================================*/ + + +/** + * \file + * \brief Class bbtk::BBPInterpreter + */ + + +#include "bbtkInterpreterJavaScript.h" + +#include "bbtkExecuter.h" +#include "bbtkMessageManager.h" +#include "bbtkFactory.h" +#include "bbtkUtilities.h" + +namespace bbtk +{ + + //========================================================================= + InterpreterJavaScript::Pointer InterpreterJavaScript::New() + { + return MakePointer( new InterpreterJavaScript() ); + } + //========================================================================= + + + + //========================================================================= + InterpreterJavaScript::InterpreterJavaScript() + { + bbtk::InterpreterVirtual::Init(); + } + //========================================================================= + + //========================================================================= + InterpreterJavaScript::~InterpreterJavaScript() + { + } + //========================================================================= + + + //========================================================================= + /// Creates a new black box in current complex box + void InterpreterJavaScript::commandNew( const std::string& boxType, const std::string& boxName) // virtual + { + int pos = boxType.find( std::string(":") ); + std::string boxTypeTmp=boxType; + boxTypeTmp.replace(pos,1,"_"); + // ex: mCB.New( bbtkBlackBox.std_ConcatString("Box10") ) + std::string code("New( new bbtk."+boxTypeTmp+"('"+boxName+"') )"); + this->javascriptBBTK.push_back(code); + } + //========================================================================= + + + //========================================================================= + /// Connects the output boxOutput to the input boxInput + void InterpreterJavaScript::commandConnection (const std::string &boxfrom, + const std::string &output, + const std::string &boxto, + const std::string &input) // virtual + { + //ex: mCB.Connection( "Box10" , "Out", "Box11", "In") + std::string code("Connection('"+boxfrom+"','"+output+"','"+boxto+"','"+input+"')"); + this->javascriptBBTK.push_back(code); + } + //========================================================================= + + //========================================================================= + void InterpreterJavaScript::commandInput(const std::string &name,const std::string &box,const std::string &input,const std::string &help) + { + } + //========================================================================= + + //========================================================================= + void InterpreterJavaScript::commandOutput(const std::string &name,const std::string &box,const std::string &output,const std::string &help) + { + } + //========================================================================= + + + //========================================================================= + /// sets the input of the box with the value + void InterpreterJavaScript::commandSet(const std::string &box,const std::string &input,const std::string &value) // virtual + { + //ex: mCB.Set("Box10","In2","/hola.mhd") + std::string code("Set('"+box+"','"+input+"','"+value+"')"); + this->javascriptBBTK.push_back(code); + } + //========================================================================= + + + //========================================================================= + void InterpreterJavaScript::commandDefine(const std::string &name,const std::string &pack,const std::string &scriptfilename) // virtual + { + } + //========================================================================= + + + //========================================================================= + void InterpreterJavaScript::commandEndDefine() // virtual + { + } + //========================================================================= + + + //========================================================================= + void InterpreterJavaScript::commandExec(const std::string &word) // virtual + { + //Ex: mCB.AddToExecutableLst("Box13") + std::string code("AddToExecutableLst('"+word+"')"); + this->javascriptBBTK.push_back(code); + } + //========================================================================= + + + //========================================================================= + void InterpreterJavaScript::commandAuthor(const std::string &author) // virtual + { + } + //========================================================================= + + //========================================================================= + void InterpreterJavaScript::commandCategory(const std::string &categorytype) // virtual + { + } + //========================================================================= + + //========================================================================= + void InterpreterJavaScript::commandDescription(const std::string &description) // virtual + { + } + //========================================================================= + +} // EO namespace bbtk + +// EOF +