34 if (pointcloud_ !=
nullptr) {
44 if (pointcloud_ !=
nullptr) {
48 pointcloud_ =
nullptr;
54 return pointcloud_ !=
nullptr;
61 pointcloud_ = pointcloud;
62 ownership_ = ownership;
69 pointcloud_ =
nullptr;
90 return pointcloud_ ==
nullptr;
112 pointcloud_->count_memory(memory);
void BKE_id_free(Main *bmain, void *idv)
General operations for point clouds.
PointCloud * BKE_pointcloud_copy_for_eval(const PointCloud *pointcloud_src)
GeometryComponent(Type type)
GeometryComponentPtr copy() const override
void count_memory(MemoryCounter &memory) const override
bool owns_direct_data() const override
void replace(PointCloud *pointcloud, GeometryOwnershipType ownership=GeometryOwnershipType::Owned)
const PointCloud * get() const
std::optional< MutableAttributeAccessor > attributes_for_write() final
bool is_empty() const final
bool has_pointcloud() const
void ensure_owns_direct_data() override
std::optional< AttributeAccessor > attributes() const final
PointCloud * get_for_write()
~PointCloudComponent() override
ImplicitSharingPtr< GeometryComponent > GeometryComponentPtr
const AttributeAccessorFunctions & pointcloud_attribute_accessor_functions()