![]() |
Shamrock 2025.10.0
Astrophysical Code
|
#include "shambase/aliases_int.hpp"#include "shambackends/DeviceBuffer.hpp"#include "shambackends/DeviceScheduler.hpp"#include "shambackends/vec.hpp"#include "shammath/AABB.hpp"Go to the source code of this file.
Classes | |
| class | shamtree::MortonCodeSet< Tmorton, Tvec, dim > |
| Class representing a set of Morton codes with associated bounding box and position data. More... | |
Functions | |
| template<class Tmorton, class Tvec, u32 dim> | |
| MortonCodeSet< Tmorton, Tvec, dim > | shamtree::morton_code_set_from_positions (const sham::DeviceScheduler_ptr &dev_sched, shammath::AABB< Tvec > bounding_box, sham::DeviceBuffer< Tvec > &pos_buf, u32 cnt_obj, u32 morton_count, sham::DeviceBuffer< Tmorton > &&cache_buf_morton_codes) |
| Generate a set of Morton codes from a buffer of positions. | |
| template<class Tmorton, class Tvec, u32 dim> | |
| MortonCodeSet< Tmorton, Tvec, dim > | shamtree::morton_code_set_from_positions (const sham::DeviceScheduler_ptr &dev_sched, shammath::AABB< Tvec > bounding_box, sham::DeviceBuffer< Tvec > &pos_buf, u32 cnt_obj, u32 morton_count) |
| Generate a set of Morton codes from a buffer of positions. | |
Definition in file MortonCodeSet.hpp.
| MortonCodeSet< Tmorton, Tvec, dim > shamtree::morton_code_set_from_positions | ( | const sham::DeviceScheduler_ptr & | dev_sched, |
| shammath::AABB< Tvec > | bounding_box, | ||
| sham::DeviceBuffer< Tvec > & | pos_buf, | ||
| u32 | cnt_obj, | ||
| u32 | morton_count ) |
Generate a set of Morton codes from a buffer of positions.
| dev_sched | The device scheduler for the computation |
| bounding_box | The bounding box containing all positions |
| pos_buf | The device buffer containing the positions |
| cnt_obj | The count of objects in the buffer |
| morton_count | The count of Morton codes in the output set (can be different from cnt_obj) |
If morton_count > cnt_obj, the extra Morton codes will be set to an error code larger than any valid Morton code.
Definition at line 121 of file MortonCodeSet.cpp.
| MortonCodeSet< Tmorton, Tvec, dim > shamtree::morton_code_set_from_positions | ( | const sham::DeviceScheduler_ptr & | dev_sched, |
| shammath::AABB< Tvec > | bounding_box, | ||
| sham::DeviceBuffer< Tvec > & | pos_buf, | ||
| u32 | cnt_obj, | ||
| u32 | morton_count, | ||
| sham::DeviceBuffer< Tmorton > && | cache_buf_morton_codes ) |
Generate a set of Morton codes from a buffer of positions.
| dev_sched | The device scheduler for the computation |
| bounding_box | The bounding box containing all positions |
| pos_buf | The device buffer containing the positions |
| cnt_obj | The count of objects in the buffer |
| morton_count | The count of Morton codes in the output set (can be different from cnt_obj) |
| cache_buf_morton_codes | A device buffer to be reused for the output Morton codes |
If morton_count > cnt_obj, the extra Morton codes will be set to an error code larger than any valid Morton code.
Definition at line 63 of file MortonCodeSet.cpp.