qpid/ImportExport.h Source File

Apache Qpid - AMQP Messaging for Java JMS, C++, Python, Ruby, and .NET | Apache Qpid Documentation

- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

qpid/ImportExport.h
Go to the documentation of this file.

    00001 #ifndef QPID_IMPORTEXPORT_H
    00002 #define QPID_IMPORTEXPORT_H
    00003
    00004 /*
    00005  * Licensed to the Apache Software Foundation (ASF) under one
    00006  * or more contributor license agreements.  See the NOTICE file
    00007  * distributed with this work for additional information
    00008  * regarding copyright ownership.  The ASF licenses this file
    00009  * to you under the Apache License, Version 2.0 (the
    00010  * "License"); you may not use this file except in compliance
    00011  * with the License.  You may obtain a copy of the License at
    00012  *
    00013  *   http://www.apache.org/licenses/LICENSE-2.0
    00014  *
    00015  * Unless required by applicable law or agreed to in writing,
    00016  * software distributed under the License is distributed on an
    00017  * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
    00018  * KIND, either express or implied.  See the License for the
    00019  * specific language governing permissions and limitations
    00020  * under the License.
    00021  */
    00022
    00023 //
    00024 // This header file defines the following macros for the control of library/DLL
    00025 // import and export:
    00026 //
    00027 // QPID_EXPORT         - Export declaration for Methods
    00028 // QPID_CLASS_EXPORT   - Export declaration for Classes
    00029 // QPID_INLINE_EXPORT  - Export declaration for Inline methods
    00030 //
    00031 // QPID_IMPORT         - Import declaration for Methods
    00032 // QPID_CLASS_IMPORT   - Import declaration for Classes
    00033 // QPID_INLINE_IMPORT  - Import declaration for Inline methods
    00034 //
    00035
    00036 #if defined(WIN32) && !defined(QPID_DECLARE_STATIC)
    00037    //
    00038    // Import and Export definitions for Windows:
    00039    //
    00040 #  define QPID_EXPORT __declspec(dllexport)
    00041 #  define QPID_IMPORT __declspec(dllimport)
    00042 #  ifdef _MSC_VER
    00043      //
    00044      // Specific to the Microsoft compiler:
    00045      //
    00046 #    define QPID_CLASS_EXPORT
    00047 #    define QPID_CLASS_IMPORT
    00048 #    define QPID_INLINE_EXPORT QPID_EXPORT
    00049 #    define QPID_INLINE_IMPORT QPID_IMPORT
    00050 #  else
    00051      //
    00052      // Specific to non-Microsoft compilers (mingw32):
    00053      //
    00054 #    define QPID_CLASS_EXPORT QPID_EXPORT
    00055 #    define QPID_CLASS_IMPORT QPID_IMPORT
    00056 #    define QPID_INLINE_EXPORT
    00057 #    define QPID_INLINE_IMPORT
    00058 #  endif
    00059 #else
    00060    //
    00061    // Non-Windows (Linux, etc.) definitions:
    00062    //
    00063 #  define QPID_EXPORT
    00064 #  define QPID_IMPORT
    00065 #  define QPID_CLASS_EXPORT
    00066 #  define QPID_CLASS_IMPORT
    00067 #  define QPID_INLINE_EXPORT
    00068 #  define QPID_INLINE_IMPORT
    00069 #endif
    00070
    00071 #endif