diff --git a/create_algorithm_package.sh b/create_algorithm_package.sh index 745e310060e7deded2ba333870959a6166a5b9c0..bc0af6dfcf47d2418f0010565bb27a06690a78b0 100755 --- a/create_algorithm_package.sh +++ b/create_algorithm_package.sh @@ -23,9 +23,9 @@ usage="Usage: create_algorithm_package.sh -n node_name [-i] [-p <prefix>]\n Parameters:\n \t-i: avoid adding the default iri_ prefix to the provided node name.\n \t-p <prefix>: replaces default iri_ prefix with specified <prefix>_." -input_name= +input_name="" use_iri_prefix=true -input_prefix= +input_prefix="" #check for input project name paramenter while getopts “:n:ip:†OPTION @@ -63,7 +63,7 @@ if [[ ${use_iri_prefix} == true ]] then project_name="iri_${input_name}" else - if [[ "$input_prefix" != ":" ]] + if [[ "$input_prefix" != "" ]] then project_name="${input_prefix}_${input_name}" else @@ -85,6 +85,7 @@ then else exit 1; fi + #create alg filename alg_filename="${input_name}_alg" diff --git a/create_driver_package.sh b/create_driver_package.sh index 4429a9b8514d2a91a237fe9891f7696dad489541..affdfe8c4a4088c5af299aa0c07d432c6fe9169f 100755 --- a/create_driver_package.sh +++ b/create_driver_package.sh @@ -19,22 +19,25 @@ source "${IRI_ROS_SCRIPTS_PATH}/libraries/scripts_library.sh" check_libraries check_templates -usage="Usage: create_driver_package.sh -n node_name [-i [other_prefix]] +usage="Usage: create_driver_package.sh -n node_name [-i] [-p <prefix]]\n Parameters:\n \t-i: avoid adding the default iri_ prefix to the provided node name.\n -\t-i other_prefix: replaces default iri_ prefix with specified other_prefix_." -input_name= +\t-p <prefix>: replaces default iri_ prefix with specified <prefix>_." +input_name="" use_iri_prefix=true -input_prefix= +input_prefix="" #check for input project name paramenter -while getopts “:n:i:†OPTION +while getopts “:n:ip:†OPTION do case $OPTION in n) input_name=$OPTARG ;; i) + use_iri_prefix=false + ;; + p) use_iri_prefix=false input_prefix=$OPTARG ;; @@ -60,7 +63,7 @@ if [[ ${use_iri_prefix} == true ]] then project_name="iri_${input_name}" else - if [[ "$input_prefix" != ":" ]] + if [[ "$input_prefix" != "" ]] then project_name="${input_prefix}_${input_name}" else @@ -85,25 +88,24 @@ fi #create driver filename driver_filename="${input_name}_driver" -#echo "driver_filename $driver_filename" #create node filename node_filename="${input_name}_driver_node" -#echo "node_filename $node_filename" #create cfg filename cfg_filename="${input_name}_driver_config" -#echo "cfg_filename $cfg_filename" #create basename from pkg name create_basename ${input_name} +#create templates folder path name +temps_folder="${IRI_ROS_SCRIPTS_PATH}/driver_templates/" + ################################################################################ # create template driver .h and .cpp files #create driver basename driver_basename="${basename}Driver" -#echo "driver_basename $driver_basename" mkdir -p ${project_name}/include/ mkdir -p ${project_name}/src/ @@ -111,11 +113,10 @@ mkdir -p ${project_name}/src/ #Set the filename and namespace on the template_driver files sed -e "s/template_driver/${driver_filename}/g" \ -e "s/TemplateDriver/${driver_basename}/g" \ - -e "s/template_node/${node_filename}/g" \ -e "s/template_namespace/${project_name}/g" \ - -e "s/TemplateConfig/${basename}Config/g" <${IRI_ROS_SCRIPTS_PATH}/driver_templates/template_driver.h >"${project_name}/include/${driver_filename}.h" + -e "s/TemplateConfig/${basename}Config/g" <${temps_folder}/template_driver.h >"${project_name}/include/${driver_filename}.h" sed -e "s/template_driver/${driver_filename}/g" \ - -e "s/TemplateDriver/${driver_basename}/g" <${IRI_ROS_SCRIPTS_PATH}/driver_templates/template_driver.cpp >"${project_name}/src/${driver_filename}.cpp" + -e "s/TemplateDriver/${driver_basename}/g" <${temps_folder}/template_driver.cpp >"${project_name}/src/${driver_filename}.cpp" echo "Creating ${driver_filename} files..." ################################################################################ @@ -132,11 +133,11 @@ node_basename="${basename}DriverNode" sed -e "s/template_driver/${driver_filename}/g" \ -e "s/TemplateDriver/${driver_basename}/g" \ -e "s/template_node/${node_filename}/g" \ - -e "s/TemplateNode/${node_basename}/g" <${IRI_ROS_SCRIPTS_PATH}/driver_templates/template_driver_node.h >"${project_name}/include/${node_filename}.h" + -e "s/TemplateNode/${node_basename}/g" <${temps_folder}/template_driver_node.h >"${project_name}/include/${node_filename}.h" sed -e "s/template_driver/${driver_filename}/g" \ -e "s/TemplateDriver/${driver_basename}/g" \ -e "s/template_node/${node_filename}/g" \ - -e "s/TemplateNode/${node_basename}/g" <${IRI_ROS_SCRIPTS_PATH}/driver_templates/template_driver_node.cpp >"${project_name}/src/${node_filename}.cpp" + -e "s/TemplateNode/${node_basename}/g" <${temps_folder}/template_driver_node.cpp >"${project_name}/src/${node_filename}.cpp" echo "Creating ${node_filename} files..." ################################################################################ @@ -145,7 +146,7 @@ echo "Creating ${node_filename} files..." #Set the filename and namespace on the CMakeLists.txt file sed -e "s/template_driver/${driver_filename}/g" \ -e "s/template_node/${project_name}/g" \ - -e "s/Template/${basename}/g" <${IRI_ROS_SCRIPTS_PATH}/driver_templates/CMakeLists.txt >"${project_name}/CMakeLists.txt" + -e "s/Template/${basename}/g" <${temps_folder}/CMakeLists.txt >"${project_name}/CMakeLists.txt" echo "Creating ${project_name} CMakeLists.txt file..." ################################################################################ @@ -166,7 +167,7 @@ sed -e "s/template_driver/${driver_filename}/g" \ -e "s/template/${project_name}/g" \ -e "s/TemplateDriver/${driver_basename}/g" \ -e "s/template_node/${node_filename}/g" \ - -e "s/Template/${basename}/g" <${IRI_ROS_SCRIPTS_PATH}/driver_templates/template_driver.cfg >"${project_name}/cfg/${basename}.cfg" + -e "s/Template/${basename}/g" <${temps_folder}/template_driver.cfg >"${project_name}/cfg/${basename}.cfg" eval "chmod 775 ${project_name}/cfg/${basename}.cfg" echo "Creating ${basename}.cfg file..." ################################################################################