Go to the documentation of this file. 17 #ifndef LIDAR_UTILS__VISIBILITY_CONTROL_HPP_ 18 #define LIDAR_UTILS__VISIBILITY_CONTROL_HPP_ 20 #if defined(_MSC_VER) && defined(_WIN64) 21 #if defined(LIDAR_UTILS_BUILDING_DLL) || defined(LIDAR_UTILS_EXPORTS) 22 #define LIDAR_UTILS_PUBLIC __declspec(dllexport) 23 #define LIDAR_UTILS_LOCAL 24 #else // defined(LIDAR_UTILS_BUILDING_DLL) || defined(LIDAR_UTILS_EXPORTS) 25 #define LIDAR_UTILS_PUBLIC __declspec(dllimport) 26 #define LIDAR_UTILS_LOCAL 27 #endif // defined(LIDAR_UTILS_BUILDING_DLL) || defined(LIDAR_UTILS_EXPORTS) 28 #elif defined(__GNUC__) && defined(__linux__) 29 #define LIDAR_UTILS_PUBLIC __attribute__((visibility("default"))) 30 #define LIDAR_UTILS_LOCAL __attribute__((visibility("hidden"))) 31 #elif defined(__GNUC__) && defined(__APPLE__) 32 #define LIDAR_UTILS_PUBLIC __attribute__((visibility("default"))) 33 #define LIDAR_UTILS_LOCAL __attribute__((visibility("hidden"))) 34 #else // !(defined(__GNUC__) && defined(__APPLE__)) 35 #error "Unsupported Build Configuration" 38 #endif // LIDAR_UTILS__VISIBILITY_CONTROL_HPP_