blob: 6def107c6853a275b3eaa64cf49fe8116fe1ce6d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
|
/*@@
@header cctk_Groups.h
@date Mon Feb 8 14:47:10 1999
@author Tom Goodale
@desc
Prototypes and constants for group functions.
@enddesc
@version $Header$
@@*/
#ifndef _CCTK_GROUPS_H_
#define _CCTK_GROUPS_H_ 1
typedef struct
{
int grouptype;
int vartype;
int disttype;
int stagtype;
int dim;
int numvars;
int numtimelevels;
int vectorgroup;
} cGroup;
/* Prototypes */
#ifdef __cplusplus
extern "C"
{
#endif
#include "cctk_Types.h"
int CCTK_StaggerVars(void);
int CCTK_DecomposeName(const char *fullname,
char **implementation,
char **name);
int CCTK_FirstVarIndex(const char *group);
int CCTK_FirstVarIndexI(int group);
char * CCTK_FullName(int var);
int CCTK_GroupData(int group, cGroup *gp);
int CCTK_GroupDimI(int group);
int CCTK_GroupDimFromVarI(int vi);
int CCTK_GroupDistribNumber(const char *dtype);
CCTK_INT ** CCTK_GroupGhostsizesI(int group);
const char *CCTK_GroupImplementationI(int group);
int CCTK_GroupIndex(const char *groupname);
int CCTK_GroupIndexFromVar(const char *var);
int CCTK_GroupIndexFromVarI(int var);
char * CCTK_GroupName(int groupnum);
char * CCTK_GroupNameFromVarI(int varnum);
int CCTK_GroupScopeNumber(const char *type);
CCTK_INT ** CCTK_GroupSizesI(int group);
int CCTK_GroupTypeFromVarI(int var);
int CCTK_GroupTypeNumber(const char *type);
int CCTK_GroupTypeI(int group);
int CCTK_NumTimeLevelsI(int group);
const char *CCTK_ImpFromVarI(int var);
int CCTK_MaxDim(void);
int CCTK_NumGroups(void);
/* DEPRECATED BETA 13 */
int CCTK_NumTimeLevelsFromVar(const char *var);
int CCTK_NumTimeLevelsFromVarI(int var);
int CCTK_NumTimeLevels(const char *group);
int CCTK_NumTimeLevelsI(int group);
int CCTK_MaxTimeLevels(const char *group);
int CCTK_MaxTimeLevelsVN(const char *var);
int CCTK_MaxTimeLevelsVI(int var);
int CCTK_MaxTimeLevelsGN(const char *group);
int CCTK_MaxTimeLevelsGI(int group);
int CCTK_NumVars(void);
int CCTK_NumVarsInGroup(const char *group);
int CCTK_NumVarsInGroupI(int group);
int CCTK_VarIndex(const char *variablename);
const char *CCTK_VarName(int varnum);
int CCTK_VarTypeI(int var);
int CCTK_VarTypeNumber(const char *type);
const char *CCTK_VarTypeName(int vartype);
int CCTK_VarTypeSize(int vtype);
const int *CCTKi_GroupLengthAsPointer(const char *fullgroupname);
/* traverse a string of group and/or variable names */
int CCTK_TraverseString (const char *parsestring,
void (*callback) (int index,
const char *optstring,
void *callback_arg),
void *callback_arg,
int selection);
int CCTK_GroupTagsTable(const char *group);
int CCTK_GroupTagsTableI(int group);
#ifdef __cplusplus
}
#endif
/* Group Types */
#define CCTK_DISTRIB_CONSTANT 1
#define CCTK_DISTRIB_DEFAULT 2
#define CCTK_SCALAR 1
#define CCTK_GF 2
#define CCTK_ARRAY 3
#define CCTK_PRIVATE 1
#define CCTK_PROTECTED 2
#define CCTK_PUBLIC 3
/* constants for CCTK_TraverseString() */
#define CCTK_VAR 1
#define CCTK_GROUP 2
#define CCTK_GROUP_OR_VAR 3
#endif /* _CCTK_GROUPS_H_ */
|