# --------------------------------------------------------------------- # # 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. # ------------------------------------------------------------------------ */ #!/bin/bash # creates the file architecture for a new user package if [ $# -lt 5 ] then echo "usage : bbCreateBlackBox [author] [description] [category]" echo " type: " echo " std " echo " VTK_ImageAlgorithm " echo " VTK_PolyDataAlgorithm " echo " widget " echo " format: " echo " XML " echo " C++ " #bbCreateBox [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 "Black box created !"