+++ /dev/null
-@echo off
-
-echo creates the file architecture for a new blackbox
-
-
-if %0%5==%0 goto ERROR01
-
-
-rem bbCreatePackage path
-set BINPATH=%~dp0
-rem Input data path
-set INPUT="%BINPATH%\@bbCreateBlackBox_DATA_REL_PATH_FROM_BIN@\xml-templates"
-
-set OUTPUT=%1
-set PACK=%2
-set BLACKBOX=%3
-set TYPE=%4
-set FORMAT=%5
-set AUTHOR=%6
-set DESCRIPTION=%7
-set FILENAME=bb%PACK%%BLACKBOX%
-
-echo output= %OUTPUT%
-echo bin = %BINPATH%
-echo input = %INPUT%
-echo pack = %PACK%
-echo blackbox = %BLACKBOX%
-echo type = %TYPE%
-echo format = %FORMAT%
-echo author = %AUTHOR%
-echo description = %DESCRIPTION%
-echo filename = %FILENAME%
-
-echo "** Creating new black box '%BLACKBOX%' xml/c++ in folder '%OUTPUT%'"
-
-echo Creating XML file..
-echo copy %INPUT%\%type%-template.xml %OUTPUT%\%FILENAME%.xml
-copy %INPUT%\%type%-template.xml %OUTPUT%\%FILENAME%.xml_tmp
-"%BINPATH%\bbSed" %OUTPUT%\%FILENAME%.xml_tmp __BLACKBOXNAME__ %BLACKBOX% > %OUTPUT%\%FILENAME%_1.xml
-"%BINPATH%\bbSed" %OUTPUT%\%FILENAME%_1.xml __AUTHOR__ %AUTHOR% > %OUTPUT%\%FILENAME%_2.xml
-"%BINPATH%\bbSed" %OUTPUT%\%FILENAME%_2.xml __DESCRIPTION__ %DESCRIPTION% > %OUTPUT%\%FILENAME%.xml_tmp
-del %OUTPUT%\%FILENAME%_1.xml
-del %OUTPUT%\%FILENAME%_2.xml
-
-
-IF %FORMAT%==XML GOTO module_XML
-IF %FORMAT%==C++ GOTO module_C++
-
-goto ERROR03
-
-:module_XML
- IF EXIST %OUTPUT%\%FILENAME%.xml GOTO ERROR02
- move %OUTPUT%\%FILENAME%.xml_tmp %OUTPUT%\%FILENAME%.xml
-goto END
-
-:module_C++
- IF EXIST %OUTPUT%\%FILENAME%.cxx GOTO ERROR02
- echo "%BINPATH%\bbfy" %OUTPUT%\%FILENAME%.xml_tmp %PACK% %OUTPUT%
- "%BINPATH%\bbfy" %OUTPUT%\%FILENAME%.xml_tmp %PACK% %OUTPUT%\
- del %OUTPUT%\%FILENAME%.xml_tmp
-goto END
-
-
-
-:ERROR01
-echo -----------------------------------------------------------------------------
-echo bbCreateBlackBox.bat "<dir-path> <package-name> <blackbox-name> <type> <format> [author] [description] "
-echo type:
-echo std
-echo VTK_ImageAlgorithm
-echo VTK_PolyDataAlgorithm
-echo widget
-echo format:
-echo XML
-echo C++
-echo -----------------------------------------------------------------------------
-goto END
-
-:ERROR02
-echo "ERROR : File '%OUTPUT%\%FILENAME%' %FORMAT% already exists !"
-del %OUTPUT%\%FILENAME%.xml_tmp
-goto end
-
-:ERROR03
-echo "ERROR : format not match '%FORMAT%' "
-del %OUTPUT%\%FILENAME%.xml_tmp
-goto end
-
-
-:END
-
--- /dev/null
+#!/bin/bash
+# creates the file architecture for a new user package
+
+if [ $# -lt 5 ]
+ then
+ echo "usage : bbCreateBlackBox <dir-path> <package-name> <blackbox-name> <type> <format> [author] [description] [category]"
+ echo " type: "
+ echo " std "
+ echo " VTK_ImageAlgorithm "
+ echo " VTK_PolyDataAlgorithm "
+ echo " widget "
+ echo " format: "
+ echo " XML "
+ echo " C++ "
+#bbCreateBox <template-xml-file-name> <box-name> <package-name> [author] [description] [category]"
+ exit
+fi
+
+# bbCreatePackage path
+TMP=$(which $0|rev)
+BINPATH=$(echo ${TMP#*/}|rev)
+#INPUT=$1
+
+OUTPUT_DIR=$1
+PACKAGE=$2
+BOX=$3
+TYPE=$4
+FORMAT=$5
+AUTHOR=$6
+DESCRIPTION=$7
+CATEGORY=$8
+# Input template file
+INPUT=${BINPATH}/@bbCreateBlackBox_DATA_REL_PATH_FROM_BIN@/xml-templates/${TYPE}-template.xml
+FILENAME=bb${PACKAGE}${BOX}
+
+echo "output dir = " $OUTPUT_DIR
+echo "box name = " $BOX
+echo "package = " $PACKAGE
+echo "author = " $AUTHOR
+echo "description = " $DESCRIPTION
+echo "category = " $CATEGORY
+echo "type = " $TYPE
+echo "format = " $FORMAT
+echo "input = " $INPUT
+
+
+echo "** Creating new black box '$BOX' in folder '$OUTPUT_DIR'"
+
+if [ -f ${OUTPUT_DIR}/${FILENAME}.xml ]
+ then
+ echo "Error : ${OUTPUT_DIR}/${FILENAME}.xml already exists"
+ exit
+fi
+
+echo " - Creating ${FILENAME}.xml"
+
+sed s,__BLACKBOXNAME__,"${BOX}", < ${INPUT} | sed s/__AUTHOR__/"${AUTHOR}"/ | sed s{__DESCRIPTION__{"${DESCRIPTION}"{ | sed s/__CATEGORY__/"${CATEGORY}"/ > ${OUTPUT_DIR}/${FILENAME}.xml
+
+if [ "${FORMAT}" = "C++" ]
+ then
+ if [ -f ${OUTPUT_DIR}/${FILENAME}.h ]
+ then
+ echo "Error : ${OUTPUT_DIR}/${FILENAME}.h already exists"
+ exit
+ fi
+ echo " - Creating ${FILENAME}.h/cxx"
+ ${BINPATH}/bbfy ${OUTPUT_DIR}/${FILENAME}.xml ${PACKAGE} ${OUTPUT_DIR}/ -q
+ echo " - Deleting ${FILENAME}.xml"
+ rm ${OUTPUT_DIR}/${FILENAME}.xml
+fi
+
+echo "Done !"
+