JasPer  2.0.33
jas_dll.h
Go to the documentation of this file.
1 /* __START_OF_JASPER_LICENSE__
2  *
3  * JasPer License Version 2.0
4  *
5  * Copyright (c) 2001-2006 Michael David Adams
6  * Copyright (c) 1999-2000 Image Power, Inc.
7  * Copyright (c) 1999-2000 The University of British Columbia
8  *
9  * All rights reserved.
10  *
11  * Permission is hereby granted, free of charge, to any person (the
12  * "User") obtaining a copy of this software and associated documentation
13  * files (the "Software"), to deal in the Software without restriction,
14  * including without limitation the rights to use, copy, modify, merge,
15  * publish, distribute, and/or sell copies of the Software, and to permit
16  * persons to whom the Software is furnished to do so, subject to the
17  * following conditions:
18  *
19  * 1. The above copyright notices and this permission notice (which
20  * includes the disclaimer below) shall be included in all copies or
21  * substantial portions of the Software.
22  *
23  * 2. The name of a copyright holder shall not be used to endorse or
24  * promote products derived from the Software without specific prior
25  * written permission.
26  *
27  * THIS DISCLAIMER OF WARRANTY CONSTITUTES AN ESSENTIAL PART OF THIS
28  * LICENSE. NO USE OF THE SOFTWARE IS AUTHORIZED HEREUNDER EXCEPT UNDER
29  * THIS DISCLAIMER. THE SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS
30  * "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
31  * BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
32  * PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO
33  * EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL
34  * INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING
35  * FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT,
36  * NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
37  * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. NO ASSURANCES ARE
38  * PROVIDED BY THE COPYRIGHT HOLDERS THAT THE SOFTWARE DOES NOT INFRINGE
39  * THE PATENT OR OTHER INTELLECTUAL PROPERTY RIGHTS OF ANY OTHER ENTITY.
40  * EACH COPYRIGHT HOLDER DISCLAIMS ANY LIABILITY TO THE USER FOR CLAIMS
41  * BROUGHT BY ANY OTHER ENTITY BASED ON INFRINGEMENT OF INTELLECTUAL
42  * PROPERTY RIGHTS OR OTHERWISE. AS A CONDITION TO EXERCISING THE RIGHTS
43  * GRANTED HEREUNDER, EACH USER HEREBY ASSUMES SOLE RESPONSIBILITY TO SECURE
44  * ANY OTHER INTELLECTUAL PROPERTY RIGHTS NEEDED, IF ANY. THE SOFTWARE
45  * IS NOT FAULT-TOLERANT AND IS NOT INTENDED FOR USE IN MISSION-CRITICAL
46  * SYSTEMS, SUCH AS THOSE USED IN THE OPERATION OF NUCLEAR FACILITIES,
47  * AIRCRAFT NAVIGATION OR COMMUNICATION SYSTEMS, AIR TRAFFIC CONTROL
48  * SYSTEMS, DIRECT LIFE SUPPORT MACHINES, OR WEAPONS SYSTEMS, IN WHICH
49  * THE FAILURE OF THE SOFTWARE OR SYSTEM COULD LEAD DIRECTLY TO DEATH,
50  * PERSONAL INJURY, OR SEVERE PHYSICAL OR ENVIRONMENTAL DAMAGE ("HIGH
51  * RISK ACTIVITIES"). THE COPYRIGHT HOLDERS SPECIFICALLY DISCLAIM ANY
52  * EXPRESS OR IMPLIED WARRANTY OF FITNESS FOR HIGH RISK ACTIVITIES.
53  *
54  * __END_OF_JASPER_LICENSE__
55  */
56 
62 #ifndef JAS_DLL_H
63 #define JAS_DLL_H
64 
65 /* The configuration header file should be included first. */
66 #include <jasper/jas_config.h>
67 
68 #if defined(JAS_DLL)
69  #if defined(_WIN32)
70  #if defined(JAS_BUILDING_DLL)
71  #define JAS_DLLEXPORT __declspec(dllexport)
72  #else
73  #define JAS_DLLEXPORT __declspec(dllimport)
74  #endif
75  #define JAS_DLLLOCAL
76  #elif defined(JAS_HAVE_VISIBILITY)
77  #if defined(JAS_BUILDING_DLL)
78  #define JAS_DLLEXPORT __attribute__ ((visibility("default")))
79  #define JAS_DLLLOCAL __attribute__ ((visibility("hidden")))
80  #else
81  #define JAS_DLLEXPORT
82  #define JAS_DLLLOCAL
83  #endif
84  #else
85  #define JAS_DLLEXPORT
86  #define JAS_DLLLOCAL
87  #endif
88 #else
89  #define JAS_DLLEXPORT
90  #define JAS_DLLLOCAL
91 #endif
92 
93 #endif