Apache Portable Runtime
include
apr_time.h
Go to the documentation of this file.
1
/* Licensed to the Apache Software Foundation (ASF) under one or more
2
* contributor license agreements. See the NOTICE file distributed with
3
* this work for additional information regarding copyright ownership.
4
* The ASF licenses this file to You under the Apache License, Version 2.0
5
* (the "License"); you may not use this file except in compliance with
6
* the License. You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
*/
16
17
#ifndef APR_TIME_H
18
#define APR_TIME_H
19
20
/**
21
* @file apr_time.h
22
* @brief APR Time Library
23
*/
24
25
#include "
apr.h
"
26
#include "
apr_pools.h
"
27
#include "
apr_errno.h
"
28
29
#ifdef __cplusplus
30
extern
"C"
{
31
#endif
/* __cplusplus */
32
33
/**
34
* @defgroup apr_time Time Routines
35
* @ingroup APR
36
* @{
37
*/
38
39
/** month names */
40
APR_DECLARE_DATA
extern
const
char
apr_month_snames
[12][4];
41
/** day names */
42
APR_DECLARE_DATA
extern
const
char
apr_day_snames
[7][4];
43
44
45
/** number of microseconds since 00:00:00 January 1, 1970 UTC */
46
typedef
apr_int64_t
apr_time_t
;
47
48
49
/** mechanism to properly type apr_time_t literals */
50
#define APR_TIME_C(val) APR_INT64_C(val)
51
52
/** mechanism to properly print apr_time_t values */
53
#define APR_TIME_T_FMT APR_INT64_T_FMT
54
55
/** intervals for I/O timeouts, in microseconds */
56
typedef
apr_int64_t
apr_interval_time_t
;
57
/** short interval for I/O timeouts, in microseconds */
58
typedef
apr_int32_t
apr_short_interval_time_t
;
59
60
/** number of microseconds per second */
61
#define APR_USEC_PER_SEC APR_TIME_C(1000000)
62