Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
L
libcdi
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Container Registry
Model registry
Operate
Environments
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
mpim-sw
libcdi
Commits
7fae69ef
Commit
7fae69ef
authored
5 years ago
by
Uwe Schulzweida
Browse files
Options
Downloads
Patches
Plain Diff
gridPrintKernel: reduced output.
parent
750d701f
No related branches found
Branches containing commit
No related tags found
Tags containing commit
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
src/grid.c
+2
-180
2 additions, 180 deletions
src/grid.c
with
2 additions
and
180 deletions
src/grid.c
+
2
−
180
View file @
7fae69ef
...
...
@@ -3324,61 +3324,6 @@ printDblsPrefixAutoBrk(FILE *fp, int dig, const char prefix[], size_t nbyte0,
fputs
(
"
\n
"
,
fp
);
}
static
void
printIntsPrefixAutoBrk
(
FILE
*
fp
,
const
char
prefix
[],
size_t
nbyte0
,
size_t
n
,
const
int
vals
[])
{
fputs
(
prefix
,
fp
);
size_t
nbyte
=
nbyte0
;
for
(
size_t
i
=
0
;
i
<
n
;
i
++
)
{
if
(
nbyte
>
80
)
{
fprintf
(
fp
,
"
\n
%*s"
,
(
int
)
nbyte0
,
""
);
nbyte
=
nbyte0
;
}
nbyte
+=
(
size_t
)
fprintf
(
fp
,
"%d "
,
vals
[
i
]);
}
fputs
(
"
\n
"
,
fp
);
}
static
void
printBounds
(
FILE
*
fp
,
int
dig
,
const
char
prefix
[],
size_t
nbyte0
,
size_t
n
,
size_t
nvertex
,
const
double
bounds
[])
{
fputs
(
prefix
,
fp
);
if
(
n
>
0
)
{
for
(
size_t
iv
=
0
;
iv
<
nvertex
;
iv
++
)
fprintf
(
fp
,
"%.*g "
,
dig
,
bounds
[
iv
]);
for
(
size_t
i
=
1
;
i
<
n
;
i
++
)
{
fprintf
(
fp
,
"
\n
%*s"
,
(
int
)
nbyte0
,
""
);
for
(
size_t
iv
=
0
;
iv
<
nvertex
;
iv
++
)
fprintf
(
fp
,
"%.*g "
,
dig
,
bounds
[
i
*
nvertex
+
iv
]);
}
fputs
(
"
\n
"
,
fp
);
}
}
static
void
printMask
(
FILE
*
fp
,
const
char
prefix
[],
size_t
nbyte0
,
size_t
n
,
const
int
mask
[])
{
fputs
(
prefix
,
fp
);
size_t
nbyte
=
nbyte0
;
for
(
size_t
i
=
0
;
i
<
n
;
i
++
)
{
if
(
nbyte
>
80
)
{
fprintf
(
fp
,
"
\n
%*s"
,
(
int
)
nbyte0
,
""
);
nbyte
=
nbyte0
;
}
nbyte
+=
(
size_t
)
fprintf
(
fp
,
"%d "
,
mask
[
i
]);
}
fputs
(
"
\n
"
,
fp
);
}
static
inline
void
*
resizeBuffer
(
void
**
buf
,
size_t
*
bufSize
,
size_t
reqSize
)
{
...
...
@@ -3452,23 +3397,15 @@ void gridPrintAttributes(FILE *fp, int gridID)
static
void
gridPrintKernel
(
int
gridID
,
int
opt
,
FILE
*
fp
)
{
size_t
xdimLen
,
ydimLen
;
char
attstr
[
CDI_MAX_NAME
];
char
attstr2
[
CDI_MAX_NAME
];
unsigned
char
uuidOfHGrid
[
CDI_UUID_SIZE
];
const
char
**
xcvals
=
gridInqXCvalsPtr
(
gridID
);
const
char
**
ycvals
=
gridInqYCvalsPtr
(
gridID
);
size_t
nxvals
=
gridInqXvals
(
gridID
,
NULL
);
size_t
nyvals
=
gridInqYvals
(
gridID
,
NULL
);
size_t
nxbounds
=
gridInqXbounds
(
gridID
,
NULL
);
size_t
nybounds
=
gridInqYbounds
(
gridID
,
NULL
);
int
type
=
gridInqType
(
gridID
);
size_t
gridsize
=
gridInqSize
(
gridID
);
size_t
xsize
=
gridInqXsize
(
gridID
);
size_t
ysize
=
gridInqYsize
(
gridID
);
int
xstrlen
=
gridInqXIsc
(
gridID
);
int
ystrlen
=
gridInqYIsc
(
gridID
);
int
nvertex
=
gridInqNvertex
(
gridID
);
int
datatype
=
gridInqDatatype
(
gridID
);
...
...
@@ -3484,9 +3421,8 @@ void gridPrintKernel(int gridID, int opt, FILE *fp)
if
(
ysize
>
0
)
fprintf
(
fp
,
"ysize = %zu
\n
"
,
ysize
);
}
if
(
nxvals
>
0
||
xcvals
)
if
(
nxvals
>
0
)
{
if
(
xstrlen
)
fprintf
(
fp
,
"xstringlen= %d
\n
"
,
xstrlen
);
attstr
[
0
]
=
0
;
cdiGridInqKeyStr
(
gridID
,
CDI_KEY_XNAME
,
CDI_MAX_NAME
,
attstr
);
if
(
attstr
[
0
]
)
fprintf
(
fp
,
"xname = %s
\n
"
,
attstr
);
attstr2
[
0
]
=
0
;
cdiGridInqKeyStr
(
gridID
,
CDI_KEY_XDIMNAME
,
CDI_MAX_NAME
,
attstr2
);
...
...
@@ -3497,9 +3433,8 @@ void gridPrintKernel(int gridID, int opt, FILE *fp)
if
(
attstr
[
0
]
)
fprintf
(
fp
,
"xunits = %s
\n
"
,
attstr
);
}
if
(
nyvals
>
0
||
ycvals
)
if
(
nyvals
>
0
)
{
if
(
ystrlen
)
fprintf
(
fp
,
"ystringlen= %d
\n
"
,
ystrlen
);
attstr
[
0
]
=
0
;
cdiGridInqKeyStr
(
gridID
,
CDI_KEY_YNAME
,
CDI_MAX_NAME
,
attstr
);
if
(
attstr
[
0
]
)
fprintf
(
fp
,
"yname = %s
\n
"
,
attstr
);
attstr2
[
0
]
=
0
;
cdiGridInqKeyStr
(
gridID
,
CDI_KEY_YDIMNAME
,
CDI_MAX_NAME
,
attstr2
);
...
...
@@ -3531,22 +3466,6 @@ void gridPrintKernel(int gridID, int opt, FILE *fp)
{
if
(
type
==
GRID_GAUSSIAN
||
type
==
GRID_GAUSSIAN_REDUCED
)
fprintf
(
fp
,
"np = %d
\n
"
,
gridInqNP
(
gridID
));
if
(
type
==
GRID_CURVILINEAR
||
type
==
GRID_UNSTRUCTURED
)
{
xdimLen
=
gridsize
;
ydimLen
=
gridsize
;
}
else
if
(
type
==
GRID_GAUSSIAN_REDUCED
)
{
xdimLen
=
2
;
ydimLen
=
ysize
;
}
else
{
xdimLen
=
xsize
;
ydimLen
=
ysize
;
}
if
(
type
==
GRID_UNSTRUCTURED
)
{
int
number
=
gridInqNumber
(
gridID
);
...
...
@@ -3598,26 +3517,6 @@ void gridPrintKernel(int gridID, int opt, FILE *fp)
}
}
if
(
xcvals
)
{
attstr
[
0
]
=
0
;
cdiGridInqKeyStr
(
gridID
,
CDI_KEY_XNAME
,
CDI_MAX_NAME
,
attstr
);
if
(
attstr
[
0
]
)
fprintf
(
fp
,
"x%ss = %.*s
\n
"
,
attstr
,
xstrlen
,
xcvals
[
0
]);
else
fprintf
(
fp
,
"xstrings = %.*s
\n
"
,
xstrlen
,
xcvals
[
0
]);
for
(
size_t
i
=
1
;
i
<
xsize
;
i
++
)
fprintf
(
fp
,
" = %.*s
\n
"
,
xstrlen
,
xcvals
[
i
]);
}
if
(
nxbounds
)
{
double
*
xbounds
=
(
double
*
)
Malloc
(
nxbounds
*
sizeof
(
double
));
gridInqXbounds
(
gridID
,
xbounds
);
static
const
char
prefix
[]
=
"xbounds = "
;
printBounds
(
fp
,
dig
,
prefix
,
sizeof
(
prefix
)
-
1
,
xdimLen
,
(
size_t
)
nvertex
,
xbounds
);
Free
(
xbounds
);
}
if
(
nyvals
>
0
)
{
double
yfirst
=
0
.
0
,
yinc
=
0
.
0
;
...
...
@@ -3644,45 +3543,6 @@ void gridPrintKernel(int gridID, int opt, FILE *fp)
}
}
if
(
ycvals
)
{
attstr
[
0
]
=
0
;
cdiGridInqKeyStr
(
gridID
,
CDI_KEY_YNAME
,
CDI_MAX_NAME
,
attstr
);
if
(
attstr
[
0
]
)
fprintf
(
fp
,
"x%ss = %.*s
\n
"
,
attstr
,
ystrlen
,
ycvals
[
0
]);
else
fprintf
(
fp
,
"ystrings = %.*s
\n
"
,
ystrlen
,
ycvals
[
0
]);
for
(
size_t
i
=
1
;
i
<
ysize
;
i
++
)
fprintf
(
fp
,
" = %.*s
\n
"
,
ystrlen
,
ycvals
[
i
]);
}
if
(
nybounds
)
{
double
*
ybounds
=
(
double
*
)
Malloc
(
nybounds
*
sizeof
(
double
));
gridInqYbounds
(
gridID
,
ybounds
);
static
const
char
prefix
[]
=
"ybounds = "
;
printBounds
(
fp
,
dig
,
prefix
,
sizeof
(
prefix
)
-
1
,
ydimLen
,
(
size_t
)
nvertex
,
ybounds
);
Free
(
ybounds
);
}
if
(
gridHasArea
(
gridID
)
)
{
double
*
area
=
(
double
*
)
Malloc
(
gridsize
*
sizeof
(
double
));
gridInqArea
(
gridID
,
area
);
static
const
char
prefix
[]
=
"area = "
;
printDblsPrefixAutoBrk
(
fp
,
dig
,
prefix
,
sizeof
(
prefix
)
-
1
,
gridsize
,
area
);
Free
(
area
);
}
if
(
type
==
GRID_GAUSSIAN_REDUCED
)
{
static
const
char
prefix
[]
=
"rowlon = "
;
int
*
rowlon
=
(
int
*
)
Malloc
(
ysize
*
sizeof
(
int
));
gridInqRowlon
(
gridID
,
rowlon
);
printIntsPrefixAutoBrk
(
fp
,
prefix
,
sizeof
(
prefix
)
-
1
,
(
ysize
>
0
?
ysize
:
0
),
rowlon
);
Free
(
rowlon
);
}
if
(
type
==
GRID_PROJECTION
)
gridPrintAttributes
(
fp
,
gridID
);
break
;
...
...
@@ -3711,25 +3571,6 @@ void gridPrintKernel(int gridID, int opt, FILE *fp)
break
;
}
}
gridInqUUID
(
gridID
,
uuidOfHGrid
);
if
(
!
cdiUUIDIsNull
(
uuidOfHGrid
)
)
{
char
uuidOfHGridStr
[
37
];
cdiUUID2Str
(
uuidOfHGrid
,
uuidOfHGridStr
);
if
(
uuidOfHGridStr
[
0
]
!=
0
&&
strlen
(
uuidOfHGridStr
)
==
36
)
fprintf
(
fp
,
"uuid = %s
\n
"
,
uuidOfHGridStr
);
}
if
(
gridInqMask
(
gridID
,
NULL
)
)
{
int
*
mask
=
(
gridsize
>
0
)
?
(
int
*
)
Malloc
(
gridsize
*
sizeof
(
int
))
:
NULL
;
gridInqMask
(
gridID
,
mask
);
static
const
char
prefix
[]
=
"mask = "
;
printMask
(
fp
,
prefix
,
sizeof
(
prefix
)
-
1
,
(
gridsize
>
0
?
gridsize
:
0
),
mask
);
if
(
mask
)
Free
(
mask
);
}
}
...
...
@@ -3756,25 +3597,6 @@ void gridPrintP(void *voidptr, FILE *fp)
gridptr
->
datatype
,
gridptr
->
gme
.
nd
,
gridptr
->
gme
.
ni
,
gridptr
->
gme
.
ni2
,
gridptr
->
gme
.
ni3
,
gridptr
->
number
,
gridptr
->
position
,
gridptr
->
trunc
,
gridptr
->
lcomplex
,
gridptr
->
nrowlon
);
if
(
gridptr
->
rowlon
)
{
static
const
char
prefix
[]
=
"rowlon = "
;
printIntsPrefixAutoBrk
(
fp
,
prefix
,
sizeof
(
prefix
)
-
1
,
(
size_t
)(
gridptr
->
nrowlon
>
0
?
gridptr
->
nrowlon
:
0
),
gridptr
->
rowlon
);
}
if
(
gridInqMaskGME
(
gridID
,
NULL
)
)
{
size_t
gridsize
=
gridptr
->
size
;
int
*
mask
=
(
gridsize
>
0
)
?
(
int
*
)
Malloc
(
gridsize
*
sizeof
(
int
))
:
NULL
;
gridInqMaskGME
(
gridID
,
mask
);
static
const
char
prefix
[]
=
"mask_gme = "
;
printMask
(
fp
,
prefix
,
sizeof
(
prefix
)
-
1
,
(
gridptr
->
size
>
0
?
gridptr
->
size
:
0
),
mask
);
if
(
mask
)
Free
(
mask
);
}
}
static
const
double
*
gridInqXValsPtrSerial
(
grid_t
*
gridptr
)
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment