Grassroots Infrastructure
The Grassroots Infrastructure is a suite of computing tools to help users and developers use scientific data infrastructure that can easily be interconnected.
grassroots_service_library.h
Go to the documentation of this file.
1
/*
2
** Copyright 2014-2016 The Earlham Institute
3
**
4
** Licensed under the Apache License, Version 2.0 (the "License");
5
** you may not use this file except in compliance with the License.
6
** 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
22
#ifndef GRASSROOTS_SERVICE_LIBRARY_H
23
#define GRASSROOTS_SERVICE_LIBRARY_H
24
25
26
#include "
library.h
"
27
28
#ifdef __cplusplus
29
extern
"C"
{
30
#endif
31
32
33
34
/*
35
** Now we use the generic helper definitions above to define LIB_API and LIB_LOCAL.
36
** LIB_API is used for the public API symbols. It either DLL imports or DLL exports
37
** (or does nothing for static build)
38
** LIB_LOCAL is used for non-api symbols.
39
*/
40
41
#ifdef SHARED_LIBRARY
/* defined if LIB is compiled as a DLL */
42
#ifdef GRASSROOTS_SERVICE_LIBRARY_EXPORTS
/* defined if we are building the LIB DLL (instead of using it) */
43
#define GRASSROOTS_SERVICE_API LIB_HELPER_SYMBOL_EXPORT
44
#else
45
#define GRASSROOTS_SERVICE_API LIB_HELPER_SYMBOL_IMPORT
46
#endif
/* #ifdef GRASSROOTS_SERVICE_MANAGER_LIBRARY_EXPORTS */
47
#define GRASSROOTS_SERVICE_LOCAL LIB_HELPER_SYMBOL_LOCAL
48
#else
/* SHARED_LIBRARY is not defined: this means LIB is a static lib. */
49
#define GRASSROOTS_SERVICE_API
50
#define GRASSROOTS_SERVICE_LOCAL
51
#endif
/* #ifdef SHARED_LIBRARY */
52
53
#ifdef __cplusplus
54
}
55
#endif
56
57
58
#endif
/* #ifndef GRASSROOTS_SERVICE_LIBRARY_H */
59
60
61
library.h
core
shared
services
include
grassroots_service_library.h
Generated on Mon Feb 26 2024 17:00:10 for Grassroots Infrastructure by
1.8.16