SCIP Doxygen Documentation
Loading...
Searching...
No Matches
struct_clock.h
Go to the documentation of this file.
1
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2
/* */
3
/* This file is part of the program and library */
4
/* SCIP --- Solving Constraint Integer Programs */
5
/* */
6
/* Copyright (c) 2002-2023 Zuse Institute Berlin (ZIB) */
7
/* */
8
/* Licensed under the Apache License, Version 2.0 (the "License"); */
9
/* you may not use this file except in compliance with the License. */
10
/* You may obtain a copy of the License at */
11
/* */
12
/* http://www.apache.org/licenses/LICENSE-2.0 */
13
/* */
14
/* Unless required by applicable law or agreed to in writing, software */
15
/* distributed under the License is distributed on an "AS IS" BASIS, */
16
/* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. */
17
/* See the License for the specific language governing permissions and */
18
/* limitations under the License. */
19
/* */
20
/* You should have received a copy of the Apache-2.0 license */
21
/* along with SCIP; see the file LICENSE. If not visit scipopt.org. */
22
/* */
23
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
24
25
/**@file struct_clock.h
26
* @ingroup INTERNALAPI
27
* @brief datastructures for clocks and timing issues
28
* @author Tobias Achterberg
29
*/
30
31
/*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
32
33
#ifndef __SCIP_STRUCT_CLOCK_H__
34
#define __SCIP_STRUCT_CLOCK_H__
35
36
37
#if defined(_WIN32) || defined(_WIN64)
38
#include <time.h>
39
#else
40
#include <sys/times.h>
41
#endif
42
43
#include "
scip/def.h
"
44
#include "
scip/type_clock.h
"
45
46
#ifdef __cplusplus
47
extern
"C"
{
48
#endif
49
50
/** CPU clock counter */
51
struct
SCIP_CPUClock
52
{
53
clock_t
user
;
/**< clock ticks for user CPU time */
54
};
55
56
/** wall clock counter */
57
struct
SCIP_WallClock
58
{
59
long
sec
;
/**< seconds counter */
60
long
usec
;
/**< microseconds counter */
61
};
62
63
/** clock timer */
64
struct
SCIP_Clock
65
{
66
union
67
{
68
SCIP_CPUCLOCK
cpuclock
;
/**< CPU clock counter */
69
SCIP_WALLCLOCK
wallclock
;
/**< wall clock counter */
70
}
data
;
71
SCIP_Real
lasttime
;
/**< last validated time of clock */
72
int
nruns
;
/**< number of SCIPclockStart() calls without SCIPclockStop() calls */
73
SCIP_CLOCKTYPE
clocktype
;
/**< current type of clock used */
74
SCIP_Bool
usedefault
;
/**< should the clock's type be overruled by the default clock type? */
75
SCIP_Bool
enabled
;
/**< should the clock be used? */
76
};
77
78
#ifdef __cplusplus
79
}
80
#endif
81
82
#endif
def.h
common defines and data types used in all packages of SCIP
SCIP_CPUClock
Definition
struct_clock.h:52
SCIP_CPUClock::user
clock_t user
Definition
struct_clock.h:53
SCIP_Clock
Definition
struct_clock.h:65
SCIP_Clock::usedefault
SCIP_Bool usedefault
Definition
struct_clock.h:74
SCIP_Clock::data
union SCIP_Clock::@14 data
SCIP_Clock::lasttime
SCIP_Real lasttime
Definition
struct_clock.h:71
SCIP_Clock::wallclock
SCIP_WALLCLOCK wallclock
Definition
struct_clock.h:69
SCIP_Clock::enabled
SCIP_Bool enabled
Definition
struct_clock.h:75
SCIP_Clock::clocktype
SCIP_CLOCKTYPE clocktype
Definition
struct_clock.h:73
SCIP_Clock::nruns
int nruns
Definition
struct_clock.h:72
SCIP_Clock::cpuclock
SCIP_CPUCLOCK cpuclock
Definition
struct_clock.h:68
SCIP_WallClock
Definition
struct_clock.h:58
SCIP_WallClock::sec
long sec
Definition
struct_clock.h:59
SCIP_WallClock::usec
long usec
Definition
struct_clock.h:60
type_clock.h
type definitions for clocks and timing issues
SCIP_CLOCKTYPE
enum SCIP_ClockType SCIP_CLOCKTYPE
Definition
type_clock.h:47
struct_clock.h
© 2002-2023 by Zuse Institute Berlin (ZIB),
Imprint
Generated by
1.10.0