summaryrefslogtreecommitdiff
path: root/src/main/Banner.c
diff options
context:
space:
mode:
authortradke <tradke@17b73243-c579-4c4c-a9d2-2d5706c11dac>2001-11-05 14:58:55 +0000
committertradke <tradke@17b73243-c579-4c4c-a9d2-2d5706c11dac>2001-11-05 14:58:55 +0000
commit7429addb5b7f80c1035b59afa239996ff1a58c65 (patch)
tree1ba6dde297325a705161420eacd2a2151db10fa5 /src/main/Banner.c
parent295247798ad3e1ef841ac7e04d219ac3cb146e8b (diff)
Adding a const qualifier to the 'cGH *' argument of some flesh routines
and for I/O method registration. You will also need to update the I/O thorns which I will commit changes to now. git-svn-id: http://svn.cactuscode.org/flesh/trunk@2452 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'src/main/Banner.c')
-rw-r--r--src/main/Banner.c223
1 files changed, 98 insertions, 125 deletions
diff --git a/src/main/Banner.c b/src/main/Banner.c
index 90a4474d..896f9c1a 100644
--- a/src/main/Banner.c
+++ b/src/main/Banner.c
@@ -2,13 +2,13 @@
@file Banner.c
@date July 16 00:11:26 1999
@author Gabrielle Allen
- @desc
- Routines to deal with the Cactus banners.
- @enddesc
- @version $Header$
+ @desc
+ Routines to deal with the Cactus banners.
+ @enddesc
+ @version $Id$
@@*/
-/*#define DEBUG_BANNER*/
+/* #define DEBUG_BANNER 1 */
#include <stdio.h>
#include <stdlib.h>
@@ -22,6 +22,7 @@
#include "cctk_Version.h"
#include "cctk_CommandLine.h"
#include "util_Network.h"
+#include "util_String.h"
static const char *rcsid = "$Header$";
@@ -37,14 +38,10 @@ CCTK_FILEVERSION(main_Banner_c)
********************* Local Routine Prototypes *********************
********************************************************************/
-int CCTKi_PrintBanners(void);
-void CCTKi_CactusBanner(void);
-void CCTK_FCALL CCTK_FNAME(CCTK_RegisterBanner)
- (int *ierr,ONE_FORTSTRING_ARG);
-
-/********************************************************************
- ********************* Other Routine Prototypes *********************
- ********************************************************************/
+int CCTKi_PrintBanners (void);
+void CCTKi_CactusBanner (void);
+void CCTK_FCALL CCTK_FNAME (CCTK_RegisterBanner)
+ (int *ierr, ONE_FORTSTRING_ARG);
/********************************************************************
********************* Local Data *****************************
@@ -52,6 +49,7 @@ void CCTK_FCALL CCTK_FNAME(CCTK_RegisterBanner)
static int number_banners = 0;
static char **banner_strings = NULL;
+static const char *delimiter = "--------------------------------------------------------------------------------\n";
/********************************************************************
********************* External Routines **********************
@@ -62,52 +60,47 @@ static char **banner_strings = NULL;
@routine CCTKi_CactusBanner
@date Wed Oct 13 21:41:28 CEST 1999
@author Gabrielle Allen
- @desc
- Prints the Cactus Banner
- @enddesc
- @calls
- @calledby
- @history
-
- @endhistory
+ @desc
+ Prints the Cactus Banner
+ @enddesc
+ @calls CCTK_FullVersion
+ CCTK_CompileDate
+ CCTK_CompileTime
+ Util_CurrentDate
+ Util_CurrentTime
+ Util_GetHostName
+ CCTK_ParameterFilename
@@*/
-
-void CCTKi_CactusBanner(void)
+void CCTKi_CactusBanner (void)
{
-
- const char *string;
char buffer[DATALENGTH+1];
-
-#define B_1 " 10 "
-#define B_2 " 1 0101 ************************ "
-#define B_3 " 01 1010 10 The Cactus Code V4.0 "
-#define B_4 " 1010 1101 011 www.cactuscode.org "
-#define B_5 " 1001 100101 ************************ "
-#define B_6 " 00010101 "
-#define B_7 " 100011 (c) Copyright The Authors "
-#define B_8 " 0100 GNU Licensed. No Warranty "
-#define B_9 " 0101 "
-
-#define B_ANNERLINE B_1 "\n" B_2 "\n" B_3 "\n" B_4 "\n" B_5 "\n" B_6 "\n" B_7 "\n" B_8 "\n" B_9 "\n"
-
- string = B_ANNERLINE;
-
- printf("--------------------------------------------------------------------------------\n");
- printf("%s\n",string);
- printf("--------------------------------------------------------------------------------\n");
- printf("Cactus version: %s\n",CCTK_FullVersion());
- printf("Compile date: %s (%s)\n",CCTK_CompileDate(),CCTK_CompileTime());
+ const char *banner = " 10 \n"
+ " 1 0101 ************************ \n"
+ " 01 1010 10 The Cactus Code V4.0 \n"
+ " 1010 1101 011 www.cactuscode.org \n"
+ " 1001 100101 ************************ \n"
+ " 00010101 \n"
+ " 100011 (c) Copyright The Authors \n"
+ " 0100 GNU Licensed. No Warranty \n"
+ " 0101 \n";
+
+
+ puts (delimiter);
+ puts (banner);
+ puts (delimiter);
+
+ printf ("Cactus version: %s\n", CCTK_FullVersion ());
+ printf ("Compile date: %s (%s)\n", CCTK_CompileDate (), CCTK_CompileTime());
Util_CurrentDate (DATALENGTH, buffer);
- printf("Run date: %s",buffer);
+ printf ("Run date: %s", buffer);
Util_CurrentTime (DATALENGTH, buffer);
- printf(" (%s)\n",buffer);
- Util_GetHostName(buffer,DATALENGTH);
- printf("Run host: %s\n",buffer);
- CCTK_ParameterFilename(DATALENGTH,buffer);
- printf("Parameter file: %s\n",buffer);
-
- printf("--------------------------------------------------------------------------------\n");
+ printf (" (%s)\n", buffer);
+ Util_GetHostName (buffer, DATALENGTH);
+ printf ("Run host: %s\n", buffer);
+ CCTK_ParameterFilename (DATALENGTH, buffer);
+ printf ("Parameter file: %s\n", buffer);
+ puts (delimiter);
}
@@ -115,133 +108,113 @@ void CCTKi_CactusBanner(void)
@routine CCTK_RegisterBanner
@date July 16 00:11:26 1999
@author Gabrielle Allen
- @desc
- Registers a string as a banner
- @enddesc
- @calls
- @calledby
- @history
-
- @endhistory
- @var string
- @vdesc The banner as a C string
- @vtype const char *
- @vio in
- @vcomment
-
- @endvar
+ @desc
+ Registers a string as a banner
+ @enddesc
+
+ @var banner
+ @vdesc The banner as a C string
+ @vtype const char *
+ @vio in
+ @endvar
@returntype int
@returndesc
- 0 -- success
+ 0 for success, or -1 if memory allocation failed
@endreturndesc
@@*/
-
-int CCTK_RegisterBanner(const char *string)
+int CCTK_RegisterBanner (const char *banner)
{
- char **temp = NULL;
- char *newstring;
+ int retval;
+ char **old_banner_strings;
+
+
+ retval = 0;
number_banners++;
/* Resize the array of banner strings */
if (number_banners == 1)
{
- banner_strings = (char **)malloc( number_banners*sizeof(char *));
- temp = banner_strings;
+ banner_strings = (char **) malloc (number_banners * sizeof (char *));
}
else
{
- temp = (char **)realloc( banner_strings, number_banners*sizeof(char *));
-
- if(temp)
- {
- banner_strings = temp;
- }
- else
+ old_banner_strings = banner_strings;
+ banner_strings = (char **) realloc (banner_strings,
+ number_banners * sizeof (char *));
+ if (banner_strings == NULL)
{
+ banner_strings = old_banner_strings;
number_banners--;
}
}
/* If this was succesful, copy the data into the array */
- if(temp)
+ if (banner_strings)
{
- newstring = (char *)malloc((strlen(string)+1)*sizeof(char));
- if(newstring)
- {
- strcpy(newstring, string);
- banner_strings[number_banners-1] = newstring;
- }
- else
+ banner_strings[number_banners - 1] = Util_Strdup (banner);
+ if (banner_strings[number_banners - 1] == NULL)
{
number_banners--;
+ retval = -1;
}
}
+ else
+ {
+ retval = -1;
+ }
#ifdef DEBUG_BANNER
printf("Registering banner .... \n%s\n",banner_strings[number_banners-1]);
#endif
- return 0;
-
+ return (retval);
}
-void CCTK_FCALL CCTK_FNAME(CCTK_RegisterBanner)
- (int *ierr,ONE_FORTSTRING_ARG)
+
+void CCTK_FCALL CCTK_FNAME (CCTK_RegisterBanner)
+ (int *ierr,
+ ONE_FORTSTRING_ARG)
{
- ONE_FORTSTRING_CREATE(message)
- *ierr=CCTK_RegisterBanner(message);
- free(message);
+ ONE_FORTSTRING_CREATE (message)
+ *ierr = CCTK_RegisterBanner (message);
+ free (message);
}
+
/*@@
@routine CCTKi_PrintBanners
@date July 16 00:11:26 1999
@author Gabrielle Allen
- @desc
- Print all registered banners
- @enddesc
- @calls
- @calledby
- @history
-
- @endhistory
+ @desc
+ Print all registered banners
+ @enddesc
+ @calls CCTK_ParameterGet
@returntype int
@returndesc
- 0 -- success
+ 0 -- success
@endreturndesc
@@*/
-
-int CCTKi_PrintBanners(void)
+int CCTKi_PrintBanners (void)
{
int i;
- int param_type;
- CCTK_INT *cctk_show_banners;
+ const CCTK_INT *cctk_show_banners;
- cctk_show_banners = (CCTK_INT *)CCTK_ParameterGet("cctk_show_banners",
- "Cactus",&param_type);
+ cctk_show_banners = (const CCTK_INT *)
+ CCTK_ParameterGet ("cctk_show_banners", "Cactus", &i);
if (*cctk_show_banners)
{
- for (i=0;i<number_banners;i++)
+ for (i = 0; i < number_banners; i++)
{
if (banner_strings[i])
{
- printf("--------------------------------------------------------------------------------\n");
- printf("%s\n",banner_strings[i]);
+ printf ("%s%s\n", delimiter, banner_strings[i]);
}
}
- printf("--------------------------------------------------------------------------------\n");
+ puts (delimiter);
}
- return 0;
-
+ return (0);
}
-
-/********************************************************************
- ********************* Local Routines *************************
- ********************************************************************/
-
-
-