Program Listing for File point_cloud.h¶
↰ Return to documentation for file (include/immersx/coupling/point_cloud.h)
// ---------------------------------------------------------------------
// Generic point-cloud input for zero-dimensional reduced domains.
// ---------------------------------------------------------------------
#ifndef immersx_point_cloud_h
#define immersx_point_cloud_h
#include <deal.II/base/point.h>
#include <immersx/core/reduced_field_catalog.h>
#include <vector>
namespace ImmersX
{
enum class PointCloudDistribution
{
replicated,
rank_local
};
template <int spacedim>
struct PointCloud
{
std::vector<dealii::Point<spacedim>> points;
std::vector<std::vector<double>> properties;
FieldCatalog catalog;
std::vector<std::string> property_names;
PointCloudDistribution distribution = PointCloudDistribution::replicated;
};
} // namespace ImmersX
#endif // immersx_point_cloud_h