GRASS 8 Programmer's Manual
8.6.0dev(2026)-4bb960b182
Loading...
Searching...
No Matches
interval.c
Go to the documentation of this file.
1
/*!
2
\file lib/db/dbmi_base/interval.c
3
4
\brief DBMI Library (base) - range, interval procedures
5
6
SPDX-FileCopyrightText: 1999-2009, 2011 GRASS Development Team
7
SPDX-License-Identifier: GPL-2.0-or-later
8
9
\author Joel Jones (CERL/UIUC), Radim Blazek
10
\author Doxygenized by Martin Landa <landa.martin gmail.com> (2011)
11
*/
12
13
#include <
grass/dbmi.h
>
14
15
/*!
16
\brief Define range based on SQL data type
17
18
\param sqltype SQL data type
19
\param[out] from
20
\param[out] to
21
*/
22
void
db_interval_range
(
int
sqltype
,
int
*from,
int
*to)
23
{
24
switch
(
sqltype
) {
25
case
DB_SQL_TYPE_DATE
:
26
*from =
DB_YEAR
;
27
*to =
DB_DAY
;
28
return
;
29
case
DB_SQL_TYPE_TIME
:
30
*from =
DB_HOUR
;
31
*to =
DB_FRACTION
;
32
return
;
33
}
34
35
if
(
sqltype
&
DB_YEAR
)
36
*from =
DB_YEAR
;
37
else
if
(
sqltype
&
DB_MONTH
)
38
*from =
DB_MONTH
;
39
else
if
(
sqltype
&
DB_DAY
)
40
*from =
DB_DAY
;
41
else
if
(
sqltype
&
DB_HOUR
)
42
*from =
DB_HOUR
;
43
else
if
(
sqltype
&
DB_MINUTE
)
44
*from =
DB_MINUTE
;
45
else
if
(
sqltype
&
DB_SECOND
)
46
*from =
DB_SECOND
;
47
else
if
(
sqltype
&
DB_FRACTION
)
48
*from =
DB_FRACTION
;
49
else
50
*from = 0;
51
52
if
(
sqltype
&
DB_FRACTION
)
53
*to =
DB_FRACTION
;
54
else
if
(
sqltype
&
DB_SECOND
)
55
*to =
DB_SECOND
;
56
else
if
(
sqltype
&
DB_MINUTE
)
57
*to =
DB_MINUTE
;
58
else
if
(
sqltype
&
DB_HOUR
)
59
*to =
DB_HOUR
;
60
else
if
(
sqltype
&
DB_DAY
)
61
*to =
DB_DAY
;
62
else
if
(
sqltype
&
DB_MONTH
)
63
*to =
DB_MONTH
;
64
else
if
(
sqltype
&
DB_YEAR
)
65
*to =
DB_YEAR
;
66
else
67
*to = 0;
68
}
AMI_STREAM
Definition
ami_stream.h:153
dbmi.h
Main header of GRASS DataBase Management Interface.
DB_FRACTION
#define DB_FRACTION
Definition
dbmi.h:101
DB_SQL_TYPE_TIME
#define DB_SQL_TYPE_TIME
Definition
dbmi.h:87
DB_MINUTE
#define DB_MINUTE
Definition
dbmi.h:99
DB_MONTH
#define DB_MONTH
Definition
dbmi.h:96
DB_YEAR
#define DB_YEAR
Definition
dbmi.h:95
DB_SQL_TYPE_DATE
#define DB_SQL_TYPE_DATE
Definition
dbmi.h:86
DB_HOUR
#define DB_HOUR
Definition
dbmi.h:98
DB_DAY
#define DB_DAY
Definition
dbmi.h:97
DB_SECOND
#define DB_SECOND
Definition
dbmi.h:100
db_interval_range
void db_interval_range(int sqltype, int *from, int *to)
Define range based on SQL data type.
Definition
interval.c:22
lib
db
dbmi_base
interval.c
Generated on Mon Sep 14 2026 06:57:42 for GRASS 8 Programmer's Manual by
1.9.8