Alps  2.0.2
AlpsLinux.h
Go to the documentation of this file.
1 /*===========================================================================*
2  * This file is part of the Abstract Library for Parallel Search (ALPS). *
3  * *
4  * ALPS is distributed under the Eclipse Public License as part of the *
5  * COIN-OR repository (http://www.coin-or.org). *
6  * *
7  * Authors: *
8  * *
9  * Yan Xu, Lehigh University *
10  * Aykut Bulut, Lehigh University *
11  * Ted Ralphs, Lehigh University *
12  * *
13  * Conceptual Design: *
14  * *
15  * Yan Xu, Lehigh University *
16  * Ted Ralphs, Lehigh University *
17  * Laszlo Ladanyi, IBM T.J. Watson Research Center *
18  * Matthew Saltzman, Clemson University *
19  * *
20  * *
21  * Copyright (C) 2001-2023, Lehigh University, Yan Xu, Aykut Bulut, and *
22  * Ted Ralphs. *
23  * All Rights Reserved. *
24  *===========================================================================*/
25 
26 
27 #ifndef AlpsLinux_h_
28 #define AlpsLinux_h_
29 
30 // AlpsLinux.h is modified from BCPLinux.hpp
31 // This file is fully docified.
32 // There's nothing to docify...
33 
34 typedef int AlpsIndexType;
35 
36 #if defined(__GNUC__)
37 
38 # include <sys/time.h> // for gettimeofday()
39 # include <sys/resource.h> // for setpriority()
40 # ifndef __USE_BSD
41 # define __USE_BSD // to get gethostname() from unistd.h
42 # include <unistd.h>
43 # undef __USE_BSD
44 # else
45 # include <unistd.h>
46 # endif
47 # define AlpsPtrDiff int
48 
49 # if (__GNUC__ >= 3)
50 
51 # define NEED_TEMPLATE_CLASSES
52 # define NEED_TEMPLATE_FUNCTIONS
53 // # define NEED_STD_TEMPLATE_FUNCTIONS
54 // # define NEED_IMPLICIT_TEMPLATE_CLASSES
55 // # define NEED_IMPLICIT_TEMPLATE_FUNCTIONS
56 # define ALPS_CONSTRUCT std::_Construct
57 # define ALPS_DESTROY std::_Destroy
58 # define ALPS_DESTROY_RANGE std::_Destroy
59 
60 # else
61 
62 # define NEED_TEMPLATE_CLASSES
63 # define NEED_TEMPLATE_FUNCTIONS
64 // # define NEED_STD_TEMPLATE_FUNCTIONS
65 // # define NEED_IMPLICIT_TEMPLATE_CLASSES
66 // # define NEED_IMPLICIT_TEMPLATE_FUNCTIONS
67 # define ALPS_CONSTRUCT std::construct
68 # define ALPS_DESTROY std::destroy
69 # define ALPS_DESTROY_RANGE std::destroy
70 
71 # endif
72 
73 #endif
74 
75 #endif
AlpsIndexType
int AlpsIndexType
Definition: AlpsLinux.h:34