From 5db3e6c5fec6ced922b9faab9d627614084b4149 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Robert=20Kl=C3=B6fkorn?= <robertk@dune-project.org>
Date: Tue, 21 Oct 2003 13:57:38 +0000
Subject: [PATCH] Added function genFilename which generates out of a filename
 'grid' and a timestep (=0) a filename grid000000000.

[[Imported from SVN: r186]]
---
 common/misc.hh | 35 +++++++++++++++++++++++++++++++++++
 1 file changed, 35 insertions(+)

diff --git a/common/misc.hh b/common/misc.hh
index 6775461ba..231fe55d0 100644
--- a/common/misc.hh
+++ b/common/misc.hh
@@ -60,6 +60,41 @@ namespace Dune {
     return static_cast<T*>(::malloc(size*sizeof(T)));
   }
 
+  //********************************************************************
+  //
+  // generate filenames with timestep number in it
+  //
+  //********************************************************************
+
+  template <typename T>
+  inline const char *genFilename(T *path, T *fn, int ntime)
+  {
+    static char name[256];
+    char         *cp;
+
+    if (path == NULL || path[0] == '\0')
+    {
+      sprintf(name, "./%s", fn);
+    }
+    else
+    {
+      const char *cp = path;
+      while (*cp)
+        cp++;
+      cp--;
+      if (*cp == '/')
+        sprintf(name, "%s%s", path, fn);
+      else
+        sprintf(name, "%s/%s", path, fn);
+    }
+    cp = name;
+    while (*cp)
+      cp++;
+    sprintf(cp, "%010d", ntime);
+
+    return( (T *) name);
+  }
+
   /** @} */
 
 }
-- 
GitLab