cisst-saw
Loading...
Searching...
No Matches
cmnExportMacros.h
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/* ex: set filetype=cpp softtabstop=4 shiftwidth=4 tabstop=4 cindent expandtab: */
3
4/*
5
6 Author(s): Anton Deguet
7 Created on: 2001-04-11
8
9 (C) Copyright 2001-2007 Johns Hopkins University (JHU), All Rights
10 Reserved.
11
12--- begin cisst license - do not edit ---
13
14This software is provided "as is" under an open source license, with
15no warranty. The complete license can be found in license.txt and
16http://www.cisst.org/cisst/license.txt.
17
18--- end cisst license ---
19
20*/
21
22
27
28// clean
29#undef CISST_EXPORT
30
31// do it only for windows 32 OSs (95/98/me or NT/2000) and Microsoft compilers.
32// Note: we cannot rely on cmnPortability here because this file is, in fact,
33// included into cmnPortability.
34#if defined(WIN32) && defined(_MSC_VER)
35
36#ifdef CISST_THIS_LIBRARY_AS_DLL
37// warning regarding base class not exporting, i.e. all std::
38#pragma warning (disable: 4275)
39#define CISST_EXPORT _declspec(dllexport)
40#elif CISST_DLL // local and import headers
41// warning regarding base class not exporting, i.e. all std::
42#pragma warning (disable: 4275)
43#define CISST_EXPORT _declspec(dllimport)
44#endif
45
46#endif // end windows dll stuff
47
48// for all other operating systems and windows static libraries
49#ifndef CISST_EXPORT
50#define CISST_EXPORT
51#endif
52
53
54// Doxygen fake code, special values
55#ifdef DOXYGEN
56
57#undef CISST_EXPORT
104#define CISST_EXPORT "depends on the OS and compiler"
105
106#endif // Doxygen special values
107