Files
test2/source/blender/blenkernel/BKE_geometry_nodes_reference_set.hh
2024-10-08 10:06:22 +11:00

28 lines
630 B
C++

/* SPDX-FileCopyrightText: 2024 Blender Authors
*
* SPDX-License-Identifier: GPL-2.0-or-later */
#pragma once
#include <memory>
#include <string>
#include "BLI_set.hh"
namespace blender::bke {
/**
* A set of anonymous attribute names that is passed around in geometry nodes.
*/
class GeometryNodesReferenceSet {
public:
/**
* This uses `std::shared_ptr` because attributes sets are passed around by value during geometry
* nodes evaluation, and this makes it very small if there is no name. Also it makes copying very
* cheap.
*/
std::shared_ptr<Set<std::string>> names;
};
} // namespace blender::bke