47 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
			
		
		
	
	
			47 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C
		
	
	
/* ----------------------------------------------------------------------------
 | 
						|
 | 
						|
 * @library_name@ Copyright 2010, Georgia Tech Research Corporation, 
 | 
						|
 * Atlanta, Georgia 30332-0415
 | 
						|
 * All Rights Reserved
 | 
						|
 * Authors: Frank Dellaert, et al. (see THANKS for the full author list)
 | 
						|
 | 
						|
 * See LICENSE for the license information
 | 
						|
 | 
						|
 * -------------------------------------------------------------------------- */
 | 
						|
 | 
						|
/**
 | 
						|
 * @file     dllexport.h
 | 
						|
 * @brief    Symbols for exporting classes and methods from DLLs
 | 
						|
 * @author   Richard Roberts
 | 
						|
 * @date     Mar 9, 2013
 | 
						|
 */
 | 
						|
 | 
						|
// Macros for exporting DLL symbols on Windows
 | 
						|
// Usage example:
 | 
						|
// In header file:
 | 
						|
//   class GTSAM_EXPORT MyClass { ... };
 | 
						|
//   
 | 
						|
// Results in the following declarations:
 | 
						|
// When included while compiling the GTSAM library itself:
 | 
						|
//   class __declspec(dllexport) MyClass { ... };
 | 
						|
// When included while compiling other code against GTSAM:
 | 
						|
//   class __declspec(dllimport) MyClass { ... };
 | 
						|
#ifdef _WIN32
 | 
						|
#  ifdef @library_name@_EXPORTS
 | 
						|
#    define @library_name@_EXPORT __declspec(dllexport)
 | 
						|
#    define @library_name@_EXTERN_EXPORT __declspec(dllexport) extern
 | 
						|
#  else
 | 
						|
#    ifndef @library_name@_IMPORT_STATIC
 | 
						|
#      define @library_name@_EXPORT __declspec(dllimport)
 | 
						|
#      define @library_name@_EXTERN_EXPORT __declspec(dllimport)
 | 
						|
#    else /* @library_name@_IMPORT_STATIC */
 | 
						|
#      define @library_name@_EXPORT
 | 
						|
#      define @library_name@_EXTERN_EXPORT extern
 | 
						|
#    endif /* @library_name@_IMPORT_STATIC */
 | 
						|
#  endif /* @library_name@_EXPORTS */
 | 
						|
#else /* _WIN32 */
 | 
						|
#  define @library_name@_EXPORT
 | 
						|
#  define @library_name@_EXTERN_EXPORT extern
 | 
						|
#endif
 | 
						|
 |