1 // ============================================================================= 2 // PROJECT CHRONO - http://projectchrono.org 3 // 4 // Copyright (c) 2016 projectchrono.org 5 // All right reserved. 6 // 7 // Use of this source code is governed by a BSD-style license that can be found 8 // in the LICENSE file at the top level of the distribution and at 9 // http://projectchrono.org/license-chrono.txt. 10 // 11 // ============================================================================= 12 // Authors: Nic Olsen 13 // ============================================================================= 14 15 #ifndef CH_API_DISTRIBUTED_H 16 #define CH_API_DISTRIBUTED_H 17 18 #include "chrono/core/ChPlatform.h" 19 20 // When compiling this library, remember to define CH_API_COMPILE_DISTRIBUTED 21 // (so that the symbols with 'CH_DISTR_API' in front of them will be 22 // marked as exported). Otherwise, just do not define it if you 23 // link the library to your code, and the symbols will be imported. 24 25 #if defined(CH_API_COMPILE_DISTRIBUTED) 26 #define CH_DISTR_API ChApiEXPORT 27 #else 28 #define CH_DISTR_API ChApiIMPORT 29 #endif 30 31 /** 32 @defgroup distributed_module DISTRIBUTED module 33 @brief Module for distributed parallel simulation 34 35 This module provides support for granular dynamics on distributed parallel computing 36 architectures through MPI. This module depends on the Chrono::Multicore module. 37 38 For additional information, see: 39 - the [installation guide](@ref module_distributed_installation) 40 - the [tutorials](@ref tutorial_table_of_content_chrono_distributed) 41 42 @{ 43 @defgroup distributed_collision Collision objects 44 @defgroup distributed_comm Communication objects 45 @defgroup distributed_physics Physics objects 46 @} 47 48 */ 49 50 #endif 51