Skip to content

Struct cuvis_sensor_spectrum_t

ClassList > cuvis_sensor_spectrum_t

An averaged spectrum of raw sensor counts. More...

  • #include <cuvis.h>

Public Attributes

Type Name
uint32_t count
uint16_t effective_bit_depth
how many bits of each count are significant, 1 to 16
double integration_time
uint16_t const * values
float const * wavelengths

Detailed Description

The spectrum analogue of cuvis_imbuffer_t: one struct carries the samples and the acquisition context (bit depth, integration time) that makes counts interpretable, and the setter and the getter both speak it. Used as the white reference for reflectance calculation in place of a full white measurement, see cuvis_proc_cont_set_reference_white_spectrum.

Filled by a getter, the pointers reference SDK memory and are valid as long as the processing context is valid and the reference slot unchanged, i.e. until the reference is set again, cleared, or the context freed - the same contract as cuvis_imbuffer_t. Copy the arrays out to keep them longer.

Public Attributes Documentation

variable count

uint32_t cuvis_sensor_spectrum_t::count;

number of samples


variable effective_bit_depth

how many bits of each count are significant, 1 to 16

uint16_t cuvis_sensor_spectrum_t::effective_bit_depth;

4095 off a 12 bit sensor is full scale; off a 16 bit one it is a sixteenth of it, so counts are meaningless without the depth. A count above the full scale this depth implies is rejected.


variable integration_time

double cuvis_sensor_spectrum_t::integration_time;

integration time in milliseconds the counts were recorded with


variable values

uint16_t const* cuvis_sensor_spectrum_t::values;

raw sensor counts, array of length count


variable wavelengths

float const* cuvis_sensor_spectrum_t::wavelengths;

wavelengths in nanometers, array of length count



The documentation for this class was generated from the following file docs/_api_sources/cuvis.h