dc_parser_samples_foreach(3)
| DC_PARSER_SAMPLES_FOREACH(3) | Library Functions Manual | DC_PARSER_SAMPLES_FOREACH(3) |
NAME
dc_parser_samples_foreach —
iterate over samples taken during a dive
LIBRARY
library “libdivecomputer”
SYNOPSIS
#include
<libdivecomputer/parser.h>
typedef void
(*dc_sample_callback_t)(dc_sample_type_t
type, dc_sample_value_t value,
void *userdata);
dc_status_t
dc_parser_samples_foreach(dc_parser_t
*parser, dc_sample_callback_t callback,
void *userdata);
DESCRIPTION
Extract the samples taken during a dive as previously initialised with dc_parser_set_data(3). Each sample is passed to callback with the type of the sample and its data value.
Samples are invoked as a sequence of sample sets. Each sequence
begins with a DC_SAMPLE_TIME, then a number of
sample types in the set. When the next
DC_SAMPLE_TIME is recorded, the sample set may be
closed and a new one reopened. After all samples have been rendered, the
last sample set should be closed.
The following sample types may be raised:
DC_SAMPLE_TIME- The time of the sample taken in seconds after the dive began. Set in the time field.
DC_SAMPLE_DEPTH- The depth taken at the sample in metres. Set in the depth field.
DC_SAMPLE_PRESSURE- Tank pressure taken at the sample. Sets the tank
index (see the
DC_FIELD_TANK_COUNTin dc_parser_get_field(3)) and the pressure in bar. DC_SAMPLE_TEMPERATURE- Temperature in celsius. Sets the temperature field.
DC_SAMPLE_EVENT- An diving event raised by the computer. This may have the
type value of the event
structure set to
SAMPLE_EVENT_NONE,SAMPLE_EVENT_DECOSTOP,SAMPLE_EVENT_RBT,SAMPLE_EVENT_ASCENT,SAMPLE_EVENT_CEILING,SAMPLE_EVENT_WORKLOAD,SAMPLE_EVENT_TRANSMITTER,SAMPLE_EVENT_VIOLATION,SAMPLE_EVENT_BOOKMARK,SAMPLE_EVENT_SURFACE,SAMPLE_EVENT_SAFETYSTOP,SAMPLE_EVENT_SAFETYSTOP_VOLUNTARY,SAMPLE_EVENT_SAFETYSTOP_MANDATORY,SAMPLE_EVENT_DEEPSTOP,SAMPLE_EVENT_CEILING_SAFETYSTOP,SAMPLE_EVENT_FLOOR,SAMPLE_EVENT_DIVETIME,SAMPLE_EVENT_MAXDEPTH,SAMPLE_EVENT_OLF,SAMPLE_EVENT_PO2,SAMPLE_EVENT_AIRTIME,SAMPLE_EVENT_RGBM,SAMPLE_EVENT_HEADING, orSAMPLE_EVENT_TISSUELEVEL. DC_SAMPLE_RBT- The remaining bottom time in seconds. Sets the rbt field.
DC_SAMPLE_HEARTBEAT- The diver's heartbeet in beats per minute. Sets the heartbeat field.
DC_SAMPLE_BEARING- The diver's bearing in degrees. Sets the bearing field.
DC_SAMPLE_VENDOR- A vendor-specific data field.
DC_SAMPLE_SETPOINT- The closed-circuit setpoint (PO2) has changed. Sets the setpoint value in bar.
DC_SAMPLE_PPO2- The partial pressure of oxygen has changed (in bar). Sets the ppo2 field.
DC_SAMPLE_CNS- The CNS (central nervous system oxygen toxicity) value as a unit fraction. Sets the cns value.
DC_SAMPLE_DECO- Decompression phase of type
DC_DECO_NDL(no decompression limit),DC_DECO_SAFETYSTOP(the safety stop),DC_DECO_DECOSTOP(a decompression stop), orDC_DECO_DEEPSTOP(a mandatory or suggested deep-stop). Also sets the depth in metres and the time in seconds. DC_SAMPLE_GASMIX- Switch to a given gas mix index (see the
DC_FIELD_GASMIX_COUNTin dc_parser_get_field(3)). Sets the gasmix field.
RETURN VALUES
Returns DC_STATUS_OK on success and
another code on failure.
SEE ALSO
AUTHORS
The library
“libdivecomputer” library was written by
Jef Driesen,
jef@libdivecomputer.org.
The manpages were written by
Kristaps Dzonsons,
kristaps@bsd.lv.
| January 5, 2017 | Linux 6.12.85-6.12-alt1 |
