5#include "../global.hpp"
6#include "../_cexports/c_img.h"
16 inline HandleGuard<Spectral::WrappedCube>::HandleGuard(
void * handle) noexcept
17 : HandleGuard<Spectral::WrappedCube>(handle, [](
void* handle) { CVB_CALL_CAPI(ReleaseObject(handle)); })
55 int numSamples,
int numLines,
int numBands,
Cvb::DataType datatype,
56 intptr_t sampleInc, intptr_t lineInc, intptr_t bandInc)
60 return Internal::DoResCallObjectOut<WrappedCube>([&](
void* & cubeOut)
62 return CVB_CALL_CAPI(CVSCreateCubeFromPointer(pBase,
65 [](
void *,
void *) {},
nullptr,
86 explicit WrappedCube(HandleGuard<Cube>&& guard) noexcept
87 :
Cube(std::move(guard))
98 using Spectral::WrappedCube;
Data type description for an image plane.
Definition: data_type.hpp:28
int NativeDescriptor() const noexcept
Native data type descriptor.
Definition: data_type.hpp:322
Spectral Cube object.
Definition: cube.hpp:51
Spectral Wrapped cube objects are linear non-owning cubes.
Definition: wrapped_cube.hpp:31
static std::unique_ptr< WrappedCube > Create(void *pBase, int numSamples, int numLines, int numBands, Cvb::DataType datatype, intptr_t sampleInc, intptr_t lineInc, intptr_t bandInc)
Creates a wrapped cube object of type linear non-owning.
Definition: wrapped_cube.hpp:54
static std::unique_ptr< WrappedCube > FromHandle(HandleGuard< WrappedCube > &&guard)
Creates wrapped cube from a classic API handle.
Definition: wrapped_cube.hpp:79
Root namespace for the Image Manager interface.
Definition: c_barcode.h:15