summaryrefslogtreecommitdiff
path: root/src/schedule
diff options
context:
space:
mode:
authorgoodale <goodale@17b73243-c579-4c4c-a9d2-2d5706c11dac>2000-10-06 09:08:45 +0000
committergoodale <goodale@17b73243-c579-4c4c-a9d2-2d5706c11dac>2000-10-06 09:08:45 +0000
commit9c6355b7c7ff65161525544027d682c7680dae2e (patch)
tree138ef10eb58f951131029b1ef7f528979e7dbcaa /src/schedule
parent7dec069fa0ad530b77c3178e96852a277d857a3e (diff)
grdoc and style.
Tom git-svn-id: http://svn.cactuscode.org/flesh/trunk@1859 17b73243-c579-4c4c-a9d2-2d5706c11dac
Diffstat (limited to 'src/schedule')
-rw-r--r--src/schedule/ScheduleCreater.c270
-rw-r--r--src/schedule/ScheduleSorter.c176
-rw-r--r--src/schedule/ScheduleTraverse.c215
3 files changed, 634 insertions, 27 deletions
diff --git a/src/schedule/ScheduleCreater.c b/src/schedule/ScheduleCreater.c
index 117762c8..07e0f948 100644
--- a/src/schedule/ScheduleCreater.c
+++ b/src/schedule/ScheduleCreater.c
@@ -5,6 +5,7 @@
@desc
@enddesc
+ @version $Header$
@@*/
#include <stdio.h>
@@ -17,7 +18,17 @@
#include "StoreHandledData.h"
#include "Schedule.h"
-/* Internal routine prototypes */
+static char *rcsid="$Header$";
+
+CCTK_FILEVERSION(schedule_ScheduleCreater_c)
+
+/********************************************************************
+ ********************* Local Data Types ***********************
+ ********************************************************************/
+
+/********************************************************************
+ ********************* Local Routine Prototypes *********************
+ ********************************************************************/
static int ScheduleCreateGroup(const char *name);
@@ -37,14 +48,17 @@ static int ScheduleItemNumber(t_sched_group *group,
static int ScheduleSetupWhiles(t_sched_item *item);
-/* Local variables. */
+/********************************************************************
+ ********************* Other Routine Prototypes *********************
+ ********************************************************************/
-static char *rcsid="$Header$";
+/********************************************************************
+ ********************* Local Data *****************************
+ ********************************************************************/
static int n_schedule_groups = 0;
static cHandledData *schedule_groups = NULL;
-CCTK_FILEVERSION(schedule_ScheduleCreater_c)
/********************************************************************
******************** External Routines ************************
@@ -62,7 +76,30 @@ CCTK_FILEVERSION(schedule_ScheduleCreater_c)
@history
@endhistory
-
+ @var orig
+ @vdesc original schedule modifier list
+ @vtype t_sched_modifier *
+ @vio inout
+ @vcomment
+
+ @endvar
+ @var modifier
+ @vdesc new modifier
+ @vtype const char *
+ @vio in
+ @vcomment
+
+ @endvar
+ @var argument
+ @vdesc modifier argument
+ @vtype const char *
+ @vio in
+ @vcomment
+
+ @returntype t_sched_modifier *
+ @returndesc
+ New schedule modifier list or NULL
+ @endreturndesc
@@*/
t_sched_modifier *CCTKi_ScheduleAddModifier(t_sched_modifier *orig,
const char *modifier,
@@ -105,13 +142,49 @@ t_sched_modifier *CCTKi_ScheduleAddModifier(t_sched_modifier *orig,
@history
@endhistory
+ @var gname
+ @vdesc name of group to schedule function in
+ @vtype const char *
+ @vio in
+ @vcomment
+ @var fname
+ @vdesc name of function to be scheduled
+ @vtype const char *
+ @vio in
+ @vcomment
+ @var function
+ @vdesc function to be scheduled
+ @vtype void *
+ @vio in
+ @vcomment
+
+ @endvar
+ @var modifiers
+ @vdesc moodifier list
+ @vtype t_sched_modifier *
+ @vio in
+ @vcomment
+
+ @endvar
+ @var attributes
+ @vdesc function attributes
+ @vtype void *
+ @vio in
+ @vcomment
+
+ @endvar
+ @returntype int
+ @returndesc
+ 0 - success
+ -1 - failure
+ @endreturndesc
@@*/
int CCTKi_DoScheduleFunction(const char *gname,
- const char *fname,
- void *func,
- t_sched_modifier *modifiers,
- void *attributes)
+ const char *fname,
+ void *func,
+ t_sched_modifier *modifiers,
+ void *attributes)
{
int retcode;
int handle;
@@ -160,12 +233,41 @@ int CCTKi_DoScheduleFunction(const char *gname,
@history
@endhistory
+ @var gname
+ @vdesc name of group to schedule group in
+ @vtype const char *
+ @vio in
+ @vcomment
+ @var thisname
+ @vdesc name of group to be scheduled
+ @vtype const char *
+ @vio in
+ @vcomment
+ @var modifiers
+ @vdesc moodifier list
+ @vtype t_sched_modifier *
+ @vio in
+ @vcomment
+
+ @endvar
+ @var attributes
+ @vdesc function attributes
+ @vtype void *
+ @vio in
+ @vcomment
+
+ @endvar
+ @returntype int
+ @returndesc
+ 0 - success
+ -1 - failure
+ @endreturndesc
@@*/
int CCTKi_DoScheduleGroup(const char *gname,
- const char *thisname,
- t_sched_modifier *modifiers,
- void *attributes)
+ const char *thisname,
+ t_sched_modifier *modifiers,
+ void *attributes)
{
int retcode;
int handle;
@@ -219,12 +321,17 @@ int CCTKi_DoScheduleGroup(const char *gname,
@desc
Sorts all the schedule groups.
@enddesc
- @calls
+ @calls ScheduleSortGroups
@calledby
@history
@endhistory
+ @returntype int
+ @returndesc
+ 0 - success
+ -ve - -1* number of errors
+ @endreturndesc
@@*/
int CCTKi_DoScheduleSortAllGroups(void)
{
@@ -256,6 +363,24 @@ int CCTKi_DoScheduleSortAllGroups(void)
return -n_errors;
}
+ /*@@
+ @routine CCTKi_DoScheduleGetGroups
+ @date Wed Sep 15 22:37:49 1999
+ @author Tom Goodale
+ @desc
+ Gets the schedule groups
+ @enddesc
+ @calls ScheduleSortGroups
+ @calledby
+ @history
+
+ @endhistory
+
+ @returntype cHandledData
+ @returndesc
+ The scheduled groups.
+ @endreturndesc
+@@*/
cHandledData *CCTKi_DoScheduleGetGroups(void)
{
return schedule_groups;
@@ -272,12 +397,25 @@ cHandledData *CCTKi_DoScheduleGetGroups(void)
@desc
Creates a schedule group.
@enddesc
- @calls
+ @calls Util_GetHandle
@calledby
@history
@endhistory
-
+ @var name
+ @vdesc name of the group
+ @vtype const char *
+ @vio in
+ @vcomment
+
+ @endvar
+
+ @returntype int
+ @returndesc
+ 0 - success
+ -1 - group already exists
+ -2 - memory failure
+ @endreturndesc
@@*/
static int ScheduleCreateGroup(const char *name)
{
@@ -339,7 +477,32 @@ static int ScheduleCreateGroup(const char *name)
@history
@endhistory
+ @var name
+ @vdesc name of item
+ @vtype const char *
+ @vio in
+ @vcomment
+
+ @endvar
+ @var modifiers
+ @vdesc modifier list
+ @vtype t_sched_modifier *
+ @vio in
+ @vcomment
+
+ @endvar
+ @var attributes
+ @vdesc item attributes
+ @vtype void *
+ @vio in
+ @vcomment
+
+ @endvar
+ @returntype t_sched_item *
+ @returndesc
+ The new schedule item or NULL.
+ @endreturndesc
@@*/
static t_sched_item *ScheduleCreateItem(const char *name, t_sched_modifier *modifiers, void *attributes)
{
@@ -394,7 +557,26 @@ static t_sched_item *ScheduleCreateItem(const char *name, t_sched_modifier *modi
@history
@endhistory
+ @var ghandle
+ @vdesc The handle of the group
+ @vtype int
+ @vio in
+ @vcomment
+
+ @endvar
+ @var item
+ @vdesc The schedule item
+ @vtype t_sched_item *
+ @vio in
+ @vcomment
+
+ @endvar
+ @returntype int
+ @returndesc
+ 0 - success
+ -1 - memory failure
+ @endreturndesc
@@*/
static int ScheduleAddItem(int ghandle, t_sched_item *item)
{
@@ -444,7 +626,18 @@ static int ScheduleAddItem(int ghandle, t_sched_item *item)
@history
@endhistory
+ @var modifier
+ @vdesc The modifier string
+ @vtype const char *
+ @vio in
+ @vcomment
+
+ @endvar
+ @returntype t_sched_modifier_type
+ @returndesc
+ The enumerated schedule modifier type.
+ @endreturndesc
@@*/
static t_sched_modifier_type ScheduleTranslateModifierType(const char *modifier)
{
@@ -481,12 +674,27 @@ static t_sched_modifier_type ScheduleTranslateModifierType(const char *modifier)
@desc
Sorts the routines in a group.
@enddesc
- @calls
+ @calls CCTKi_ScheduleCreateArray CCTKi_ScheduleCreateIVec
+ ScheduleItemNumber CCTKi_ScheduleAddRow
+ CCTKi_ScheduleSort
+ CCTKi_ScheduleDestroyArray CCTKi_ScheduleDestroyIVec
@calledby
@history
@endhistory
+ @var group
+ @vdesc The schedule group
+ @vtype t_sched_group *
+ @vio inout
+ @vcomment
+
+ @endvar
+ @returntype int
+ @returndesc
+ 0 - success
+ Or number of scheduling errors
+ @endreturndesc
@@*/
static int ScheduleSortGroup(t_sched_group *group)
{
@@ -630,7 +838,25 @@ static int ScheduleSortGroup(t_sched_group *group)
@history
@endhistory
+ @var group
+ @vdesc schedule group
+ @vtype t_sched_group *
+ @vio in
+ @vcomment
+
+ @endvar
+ @var name
+ @vdesc name of schedule item
+ @vtype const char *
+ @vio in
+ @vcomment
+
+ @endvar
+ @returntype int
+ @returndesc
+ The number of the schedule item in the group
+ @endreturndesc
@@*/
static int ScheduleItemNumber(t_sched_group *group, const char *name)
{
@@ -666,7 +892,17 @@ static int ScheduleItemNumber(t_sched_group *group, const char *name)
@history
@endhistory
-
+ @var item
+ @vdesc The schedule item to work on
+ @vtype t_sched_item *
+ @vio inout
+ @vcomment
+
+ @endvar
+ @returntype int
+ @returndesc
+ Number of whiles
+ @endreturndesc
@@*/
static int ScheduleSetupWhiles(t_sched_item *item)
{
diff --git a/src/schedule/ScheduleSorter.c b/src/schedule/ScheduleSorter.c
index 9d3b75ac..43c27af0 100644
--- a/src/schedule/ScheduleSorter.c
+++ b/src/schedule/ScheduleSorter.c
@@ -5,6 +5,7 @@
@desc
Sorter for scheduled routines.
@enddesc
+ @version $Header$
@@*/
#include <stdio.h>
@@ -17,8 +18,30 @@ static char *rcsid = "$Header$";
CCTK_FILEVERSION(schedule_ScheduleSorter_c)
+
+/********************************************************************
+ ********************* Local Data Types ***********************
+ ********************************************************************/
+
+/********************************************************************
+ ********************* Local Routine Prototypes *********************
+ ********************************************************************/
+
static void ScheduleSwap(int size, signed char **array, int *order, int row, int column);
+/********************************************************************
+ ********************* Other Routine Prototypes *********************
+ ********************************************************************/
+
+/********************************************************************
+ ********************* Local Data *****************************
+ ********************************************************************/
+
+/********************************************************************
+ ********************* External Routines **********************
+ ********************************************************************/
+
+
/*@@
@routine CCTKi_ScheduleSort
@date Mon Aug 30 11:44:35 1999
@@ -26,12 +49,36 @@ static void ScheduleSwap(int size, signed char **array, int *order, int row, int
@desc
Sorts the array into sort order
@enddesc
- @calls
+ @calls ScheduleSwap
@calledby
@history
@endhistory
-
+ @var size
+ @vdesc size of array
+ @vtype int
+ @vio in
+ @vcomment
+
+ @endvar
+ @var array
+ @vdesc The schedule array
+ @vtype signed char **
+ @vio inout
+ @vcomment
+
+ @endvar
+ @var order
+ @vdesc the sort order
+ @vtype int *
+ @vio inout
+ @vcomment
+
+ @endvar
+ @returntype int
+ @returndesc
+ 0 - success
+ @endreturndesc
@@*/
int CCTKi_ScheduleSort(int size, signed char **array, int *order)
@@ -40,6 +87,8 @@ int CCTKi_ScheduleSort(int size, signed char **array, int *order)
int row, column;
int retval;
+ retval = 0;
+
for(iter=0; iter < size*(size-1)/2; iter++)
{
@@ -61,8 +110,6 @@ int CCTKi_ScheduleSort(int size, signed char **array, int *order)
}
- retval = 0;
-
/* Search for +ve entries in the matrix */
for(row = 0; row < size; row++)
{
@@ -87,7 +134,39 @@ int CCTKi_ScheduleSort(int size, signed char **array, int *order)
@history
@endhistory
+ @var size
+ @vdesc size of array
+ @vtype int
+ @vio in
+ @vcomment
+
+ @endvar
+ @var array
+ @vdesc schedule array
+ @vtype signed char **
+ @vio inout
+ @vcomment
+
+ @endvar
+ @var item
+ @vdesc location in array
+ @vtype int
+ @vio in
+ @vcomment
+
+ @endvar
+ @var thisorders
+ @vdesc the relative sort order list of this item
+ @vtype int *
+ @vio in
+ @vcomment
+
+ @endvar
+ @returntype int
+ @returndesc
+ 0 - success
+ @endreturndesc
@@*/
int CCTKi_ScheduleAddRow(int size,
signed char **array,
@@ -131,7 +210,18 @@ int CCTKi_ScheduleAddRow(int size,
@history
@endhistory
+ @var size
+ @vdesc the size of the array to be created
+ @vtype int
+ @vio in
+ @vcomment
+
+ @endvar
+ @returntype signed char **
+ @returndesc
+ the new schedule array or NULL on memory failure
+ @endreturndesc
@@*/
signed char **CCTKi_ScheduleCreateArray(int size)
{
@@ -188,6 +278,20 @@ signed char **CCTKi_ScheduleCreateArray(int size)
@history
@endhistory
+ @var size
+ @vdesc the size of the array
+ @vtype int
+ @vio in
+ @vcomment
+
+ @endvar
+ @var array
+ @vdesc the schedule array
+ @vtype signed char **
+ @vio inout
+ @vcomment
+
+ @endvar
@@*/
void CCTKi_ScheduleDestroyArray(int size, signed char **array)
@@ -216,7 +320,18 @@ void CCTKi_ScheduleDestroyArray(int size, signed char **array)
@history
@endhistory
+ @var size
+ @vdesc Size of vector
+ @vtype int
+ @vio in
+ @vcomment
+
+ @endvar
+ @returntype int *
+ @returndesc
+ the new integer vector or NULL on memory failure
+ @endreturndesc
@@*/
int *CCTKi_ScheduleCreateIVec(int size)
{
@@ -248,6 +363,20 @@ int *CCTKi_ScheduleCreateIVec(int size)
@history
@endhistory
+ @var size
+ @vdesc size of the vector
+ @vtype int
+ @vio in
+ @vcomment
+
+ @endvar
+ @var vector
+ @vdesc the vector
+ @vtype int *
+ @vio inout
+ @vcomment
+
+ @endvar
@@*/
void CCTKi_ScheduleDestroyIVec(int size, int *vector)
@@ -267,6 +396,41 @@ void CCTKi_ScheduleDestroyIVec(int size, int *vector)
@history
@endhistory
+ @var size
+ @vdesc The size of the problem
+ @vtype int
+ @vio in
+ @vcomment
+
+ @endvar
+ @var array
+ @vdesc the sort array
+ @vtype signed char **
+ @vio inout
+ @vcomment
+
+ @endvar
+ @var order
+ @vdesc the order of routines
+ @vtype int *
+ @vio inout
+ @vcomment
+
+ @endvar
+ @var row
+ @vdesc the row to swap
+ @vtype int
+ @vio in
+ @vcomment
+
+ @endvar
+ @var column
+ @vdesc the column to swap
+ @vtype int
+ @vio in
+ @vcomment
+
+ @endvar
@@*/
static void ScheduleSwap(int size, signed char **array, int *order, int row, int column)
@@ -297,6 +461,10 @@ static void ScheduleSwap(int size, signed char **array, int *order, int row, int
}
/********************************************************************
+ ********************* Local Routines *************************
+ ********************************************************************/
+
+/********************************************************************
********************************************************************
********************************************************************/
diff --git a/src/schedule/ScheduleTraverse.c b/src/schedule/ScheduleTraverse.c
index 16bd90a1..f167a0eb 100644
--- a/src/schedule/ScheduleTraverse.c
+++ b/src/schedule/ScheduleTraverse.c
@@ -5,6 +5,7 @@
@desc
Routins to traverse schedule groups.
@enddesc
+ @version $Header$
@@*/
#include <stdio.h>
@@ -20,8 +21,14 @@ static char *rcsid = "$Header$";
CCTK_FILEVERSION(schedule_ScheduleTraverse_c)
+/********************************************************************
+ ********************* Local Data Types ***********************
+ ********************************************************************/
+
+/********************************************************************
+ ********************* Local Routine Prototypes *********************
+ ********************************************************************/
-/* Local routine prototypes */
static int ScheduleTraverseGroup(cHandledData *schedule_groups,
t_sched_group *group,
void *attributes,
@@ -44,6 +51,14 @@ static int ScheduleTraverseFunction(void *function,
void *data);
/********************************************************************
+ ********************* Other Routine Prototypes *********************
+ ********************************************************************/
+
+/********************************************************************
+ ********************* Local Data *****************************
+ ********************************************************************/
+
+/********************************************************************
******************** External Routines ************************
********************************************************************/
@@ -59,14 +74,61 @@ static int ScheduleTraverseFunction(void *function,
@history
@endhistory
+ @var group_name
+ @vdesc group to traverse
+ @vtype const char *
+ @vio in
+ @vcomment
+
+ @endvar
+ @var item_entry
+ @vdesc function to be called on entry to an item
+ @vtype int (*)(void *, void *)
+ @vio in
+ @vcomment
+
+ @endvar
+ @var item_exit
+ @vdesc function to be called on exit from an item
+ @vtype int (*)(void *, void *)
+ @vio in
+ @vcomment
+
+ @endvar
+ @var while_check
+ @vdesc function to be called to check a while statement
+ @vtype int (*)(int, char **, void *, void *)
+ @vio in
+ @vcomment
+
+ @endvar
+ @var function_process
+ @vdesc function to be called on any function
+ @vtype int (*)(void *, void *, void *)
+ @vio in
+ @vcomment
+
+ @endvar
+ @var data
+ @vdesc data to be passed to the functions
+ @vtype void *
+ @vio inout
+ @vcomment
+
+ @endvar
+ @returntype int
+ @returndesc
+ Return code of @seeroutine ScheduleTraverseGroup or return value of
+ @seeroutine Util_GetHandle if that fails.
+ @endreturndesc
@@*/
int CCTKi_DoScheduleTraverse(const char *group_name,
- int (*item_entry)(void *, void *),
- int (*item_exit)(void *, void *),
- int (*while_check)(int, char **, void *, void *),
- int (*function_process)(void *, void *, void *),
- void *data)
+ int (*item_entry)(void *, void *),
+ int (*item_exit)(void *, void *),
+ int (*while_check)(int, char **, void *, void *),
+ int (*function_process)(void *, void *, void *),
+ void *data)
{
cHandledData *schedule_groups;
t_sched_group *group;
@@ -114,7 +176,81 @@ int CCTKi_DoScheduleTraverse(const char *group_name,
@history
@endhistory
+ @var schedule_groups
+ @vdesc the schedule groups
+ @vtype cHandledData
+ @vio in
+ @vcomment
+
+ @endvar
+ @var group
+ @vdesc the group to traverse
+ @vtype t_sched_group
+ @vio in
+ @vcomment
+
+ @endvar
+ @var attributes
+ @vdesc group attributes
+ @vtype void *
+ @vio in
+ @vcomment
+
+ @endvar
+ @var n_whiles
+ @vdesc number of whiles
+ @vtype int
+ @vio in
+ @vcomment
+
+ @endvar
+ @var whiles
+ @vdesc array of while strings
+ @vtype char **
+ @vio in
+ @vcomment
+
+ @endvar
+ @var item_entry
+ @vdesc function to be called on entry to an item
+ @vtype int (*)(void *, void *)
+ @vio in
+ @vcomment
+
+ @endvar
+ @var item_exit
+ @vdesc function to be called on exit from an item
+ @vtype int (*)(void *, void *)
+ @vio in
+ @vcomment
+
+ @endvar
+ @var while_check
+ @vdesc function to be called to check a while statement
+ @vtype int (*)(int, char **, void *, void *)
+ @vio in
+ @vcomment
+
+ @endvar
+ @var function_process
+ @vdesc function to be called on any function
+ @vtype int (*)(void *, void *, void *)
+ @vio in
+ @vcomment
+
+ @endvar
+ @var data
+ @vdesc data to be passed to the functions
+ @vtype void *
+ @vio inout
+ @vcomment
+
+ @endvar
+ @returntype int
+ @returndesc
+ 0 - success
+ @endreturndesc
@@*/
static int ScheduleTraverseGroup(cHandledData *schedule_groups,
t_sched_group *group,
@@ -234,7 +370,74 @@ static int ScheduleTraverseGroup(cHandledData *schedule_groups,
@history
@endhistory
+ @var function
+ @vdesc the function to be called
+ @vtype void *
+ @vio in
+ @vcomment
+
+ @endvar
+ @var attributes
+ @vdesc function attributes
+ @vtype void *
+ @vio in
+ @vcomment
+
+ @endvar
+ @var n_whiles
+ @vdesc number of whiles
+ @vtype int
+ @vio in
+ @vcomment
+
+ @endvar
+ @var whiles
+ @vdesc array of while strings
+ @vtype char **
+ @vio in
+ @vcomment
+
+ @endvar
+ @var item_entry
+ @vdesc function to be called on entry to an item
+ @vtype int (*)(void *, void *)
+ @vio in
+ @vcomment
+
+ @endvar
+ @var item_exit
+ @vdesc function to be called on exit from an item
+ @vtype int (*)(void *, void *)
+ @vio in
+ @vcomment
+
+ @endvar
+ @var while_check
+ @vdesc function to be called to check a while statement
+ @vtype int (*)(int, char **, void *, void *)
+ @vio in
+ @vcomment
+
+ @endvar
+ @var function_process
+ @vdesc function to be called on any function
+ @vtype int (*)(void *, void *, void *)
+ @vio in
+ @vcomment
+
+ @endvar
+ @var data
+ @vdesc data to be passed to the functions
+ @vtype void *
+ @vio inout
+ @vcomment
+
+ @endvar
+ @returntype int
+ @returndesc
+ 0 - success
+ @endreturndesc
@@*/
static int ScheduleTraverseFunction(void *function,
void *attributes,