Domi
Multi-dimensional, distributed data structures
 All Classes Files Functions Variables Typedefs Friends
Domi_ConfigDefs.hpp
1 // @HEADER
2 // ***********************************************************************
3 //
4 // Domi: Multi-dimensional Distributed Linear Algebra Services
5 // Copyright (2014) Sandia Corporation
6 //
7 // Under the terms of Contract DE-AC04-94AL85000 with Sandia
8 // Corporation, the U.S. Government retains certain rights in this
9 // software.
10 //
11 // Redistribution and use in source and binary forms, with or without
12 // modification, are permitted provided that the following conditions are
13 // met:
14 //
15 // 1. Redistributions of source code must retain the above copyright
16 // notice, this list of conditions and the following disclaimer.
17 //
18 // 2. Redistributions in binary form must reproduce the above copyright
19 // notice, this list of conditions and the following disclaimer in the
20 // documentation and/or other materials provided with the distribution.
21 //
22 // 3. Neither the name of the Corporation nor the names of the
23 // contributors may be used to endorse or promote products derived from
24 // this software without specific prior written permission.
25 //
26 // THIS SOFTWARE IS PROVIDED BY SANDIA CORPORATION "AS IS" AND ANY
27 // EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
28 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
29 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL SANDIA CORPORATION OR THE
30 // CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
31 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
32 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
33 // PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
34 // LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
35 // NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
36 // SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
37 //
38 // Questions? Contact William F. Spotz (wfspotz@sandia.gov)
39 //
40 // ***********************************************************************
41 // @HEADER
42 
43 #ifndef DOMI_CONFIGDEFS_HPP
44 #define DOMI_CONFIGDEFS_HPP
45 
46 #ifndef __cplusplus
47 #define __cplusplus
48 #endif // ifndef __cplusplus
49 
50 /* This section undefines all the things that will be defined by other
51  packages and for which we want to avoid conflicting definitions */
52 
53 #ifdef PACKAGE
54 #undef PACKAGE
55 #endif // ifdef PACKAGE
56 
57 #ifdef PACKAGE_NAME
58 #undef PACKAGE_NAME
59 #endif // ifdef PACKAGE_NAME
60 
61 #ifdef PACKAGE_BUGREPORT
62 #undef PACKAGE_BUGREPORT
63 #endif // ifdef PACKAGE_BUGREPORT
64 
65 #ifdef PACKAGE_STRING
66 #undef PACKAGE_STRING
67 #endif // ifdef PACKAGE_STRING
68 
69 #ifdef PACKAGE_TARNAME
70 #undef PACKAGE_TARNAME
71 #endif // ifdef PACKAGE_TARNAME
72 
73 #ifdef PACKAGE_VERSION
74 #undef PACKAGE_VERSION
75 #endif // ifdef PACKAGE_VERSION
76 
77 #ifdef VERSION
78 #undef VERSION
79 #endif // ifdef VERSION
80 
81 // end of undoing inter-package conflicts
82 
83 #include <Domi_config.h>
84 #include <cstddef>
85 #include <string>
86 #include <stdexcept>
87 
88 #ifdef HAVE_DOMI_DEBUG
89 # define DOMI_DEBUG
90 # define HAVE_DOMI_ARRAY_BOUNDSCHECK
91 #endif
92 
93 // Set the Domi Ordinal type
94 typedef DOMI_ORDINAL_TYPE Domi_Ordinal;
95 
96 #ifdef __cplusplus
97 namespace Domi { typedef Domi_Ordinal Ordinal; }
98 #endif /* __cplusplus */
99 
100 #endif // DOMI_CONFIGDEFS_HPP

Generated on Fri Sep 1 2023 07:56:16 for Domi by doxygen 1.8.5