From ca7a624fec91c31a2b14d3d32d90ad2648dd3059 Mon Sep 17 00:00:00 2001
From: Mark Olesen <Mark.Olesen@Germany>
Date: Mon, 22 Feb 2010 09:11:14 +0100
Subject: [PATCH] ENH: draft version of paraFoam with -touchAll option

---
 bin/paraFoam | 38 +++++++++++++++++++++++++++++++++-----
 1 file changed, 33 insertions(+), 5 deletions(-)

diff --git a/bin/paraFoam b/bin/paraFoam
index 623030e1677..acff1d1139b 100755
--- a/bin/paraFoam
+++ b/bin/paraFoam
@@ -44,6 +44,7 @@ options:
   -case <dir>       specify alternative case directory, default is the cwd
   -region <name>    specify alternative mesh region
   -touch            only create the file  (eg, .blockMesh, .OpenFOAM, etc)
+  -touchAll         create .blockMesh, .OpenFOAM files (and for all regions)
   -help             print the usage
 
 * start paraview $ParaView_VERSION with the OpenFOAM libraries
@@ -52,7 +53,7 @@ USAGE
     exit 1
 }
 
-unset regionName touchOnly
+unset regionName touchOpt
 
 # reader extension
 extension=OpenFOAM
@@ -83,7 +84,11 @@ do
         shift 2
         ;;
     -touch)
-        touchOnly=true
+        touchOpt=true
+        shift
+        ;;
+    -touchAll)
+        touchOpt=all
         shift
         ;;
     *)
@@ -103,12 +108,35 @@ then
     fvControls="$fvControls/$regionName"
 fi
 
-if [ -n "$touchOnly" ]
-then
+case "${touchOpt:-false}" in
+all)
+    extension=OpenFOAM
+    if [ -f constant/polyMesh/blockMeshDict ]
+    then
+        touch "$caseName.blockMesh"
+        echo "created '$caseName.blockMesh'"
+    fi
+    touch "$caseName.$extension"
+    echo "created '$caseName.$extension'"
+    # discover probable regions
+    for region in constant/*
+    do
+        if [ -d $region -a -d $region/polyMesh ]
+        then
+            regionName=${region##*/}
+            touch "$caseName{$regionName}.$extension"
+            echo "created '$caseName{$regionName}.$extension'"
+        fi
+    done
+    exit 0
+    ;;
+true)
     touch "$caseFile"
     echo "created '$caseFile'"
     exit 0
-fi
+    ;;
+esac
+
 
 # parent directory for normal or parallel results
 case "$caseName" in
-- 
GitLab