3#if !( defined( MR_PARSING_FOR_ANY_BINDINGS ) || defined(MR_COMPILING_ANY_BINDINGS) )
6#include "MRCudaBasic.cuh"
7#include "MRCudaMath.cuh"
8#include "MRCudaPolyline.cuh"
24 MRCUDA_API Polyline2Data
data()
const;
25 operator Polyline2Data ()
const {
return data(); }
31 MRCUDA_API
static size_t heapBytes(
const Polyline2& polyline );
34 DynamicArray<Node2> nodes_;
35 DynamicArray<float2> points_;
36 DynamicArray<int> orgs_;
48 MRCUDA_API Polyline3Data
data()
const;
49 operator Polyline3Data ()
const {
return data(); }
55 MRCUDA_API
static size_t heapBytes(
const Polyline3& polyline );
58 DynamicArray<Node3> nodes_;
59 DynamicArray<float3> points_;
60 DynamicArray<int> orgs_;
Helper class to manage the GPU memory-backed buffers for Polyline2 data.
Definition MRCudaPolyline.h:17
MRCUDA_API Polyline2Data data() const
Returns data buffers.
static MRCUDA_API size_t heapBytes(const Polyline2 &polyline)
Computes the GPU memory amount required to allocate data for the polyline.
static MRCUDA_API Expected< Polyline2DataHolder > fromLines(const Polyline2 &polyline)
MRCUDA_API void reset()
Resets data buffers.
Helper class to manage the GPU memory-backed buffers for Polyline3 data.
Definition MRCudaPolyline.h:41
MRCUDA_API Polyline3Data data() const
Returns data buffers.
static MRCUDA_API size_t heapBytes(const Polyline3 &polyline)
Computes the GPU memory amount required to allocate data for the polyline.
static MRCUDA_API Expected< Polyline3DataHolder > fromLines(const Polyline3 &polyline)
MRCUDA_API void reset()
Resets data buffers.
Definition MRCudaBasic.h:11
tl::expected< T, E > Expected
Definition MRExpected.h:25