libRBR  v1.2.3
RBR instrument communication API
RBRInstrumentMemory.h
Go to the documentation of this file.
1 
14 #ifndef LIBRBR_RBRINSTRUMENTMEMORY_H
15 #define LIBRBR_RBRINSTRUMENTMEMORY_H
16 
17 #ifdef __cplusplus
18 extern "C" {
19 #endif
20 
25 #define RBRINSTRUMENT_POSTPROCESSING_CHANNEL_MAX 24
26 
36 {
54 
69 
77 {
81  int32_t used;
83  int32_t remaining;
85  int32_t size;
87 
111  RBRInstrument *instrument,
112  RBRInstrumentMemoryInfo *memoryInfo);
113 
120 typedef struct RBRInstrumentData
121 {
125  int32_t size;
127  int32_t offset;
129  void *data;
131 
180  RBRInstrumentData *data);
181 
196 
207 {
217 
226 
242  RBRInstrument *instrument,
243  RBRInstrumentMemoryFormat *memoryFormats);
244 
261  RBRInstrument *instrument,
262  RBRInstrumentMemoryFormat *memoryFormat);
263 
275  RBRInstrument *instrument,
276  RBRInstrumentMemoryFormat *memoryFormat);
277 
299  RBRInstrument *instrument,
300  RBRInstrumentMemoryFormat memoryFormat);
301 
309 {
321 
337 
345 {
347  int32_t count;
349  struct
350  {
357 
365 {
379 
389 
397 {
409 
419 
427 {
449 
459 
468 {
509  float binSize;
536  float depthMin;
549  float depthMax;
557  float dcAlpha;
565  float dcTau;
574  float dcTdelay;
583  float dcCtCoeff;
585 
598  RBRInstrument *instrument,
599  RBRInstrumentPostprocessing *postprocessing);
600 
621  RBRInstrument *instrument,
622  const RBRInstrumentPostprocessing *postprocessing);
623 
646  RBRInstrument *instrument,
649 
660 uint16_t calculateCrc(
661  const void *data,
662  int32_t size);
663 
664 #ifdef __cplusplus
665 }
666 #endif
667 
668 #endif /* LIBRBR_RBRINSTRUMENTMEMORY_H */
RBRInstrumentPostprocessing::channels
RBRInstrumentPostprocessingChannelsList channels
Post-processing statistics channel configurations.
Definition: RBRInstrumentMemory.h:483
RBRInstrumentPostprocessing::dcTau
float dcTau
(dynamic correction) Tau parameter from Lueck and Picklo equation (1/beta)
Definition: RBRInstrumentMemory.h:565
RBRINSTRUMENT_MEMFORMAT_RAWBIN00
@ RBRINSTRUMENT_MEMFORMAT_RAWBIN00
Definition: RBRInstrumentMemory.h:211
RBRINSTRUMENT_MEMFORMAT_CALBIN00
@ RBRINSTRUMENT_MEMFORMAT_CALBIN00
Definition: RBRInstrumentMemory.h:213
RBRINSTRUMENT_POSTPROCESSING_BINFILTER_NONE
@ RBRINSTRUMENT_POSTPROCESSING_BINFILTER_NONE
Definition: RBRInstrumentMemory.h:429
RBRInstrumentDataset_name
const char * RBRInstrumentDataset_name(RBRInstrumentDataset dataset)
Get a human-readable string name for a dataset.
RBRINSTRUMENT_POSTPROCESSING_COMMAND_RESET
@ RBRINSTRUMENT_POSTPROCESSING_COMMAND_RESET
Definition: RBRInstrumentMemory.h:401
RBRInstrumentPostprocessingBinFilter
RBRInstrumentPostprocessingBinFilter
Post-processing bin filters.
Definition: RBRInstrumentMemory.h:426
RBRInstrumentDataset
RBRInstrumentDataset
Possible instrument datasets.
Definition: RBRInstrumentMemory.h:35
RBRInstrumentMemoryInfo::used
int32_t used
The number of bytes being used to store data in the dataset.
Definition: RBRInstrumentMemory.h:81
RBRInstrumentPostprocessing
struct RBRInstrumentPostprocessing RBRInstrumentPostprocessing
The instrument post-processing configuration.
RBRInstrument_getPostprocessing
RBRInstrumentError RBRInstrument_getPostprocessing(RBRInstrument *instrument, RBRInstrumentPostprocessing *postprocessing)
Get the instrument post-processing settings.
RBRInstrumentPostprocessingCommand_name
const char * RBRInstrumentPostprocessingCommand_name(RBRInstrumentPostprocessingCommand command)
Get a human-readable string name for a post-processing command.
RBRInstrumentMemoryInfo
Instrument meminfo command parameters.
Definition: RBRInstrumentMemory.h:76
RBRINSTRUMENT_POSTPROCESSING_AGGREGATE_STD
@ RBRINSTRUMENT_POSTPROCESSING_AGGREGATE_STD
Definition: RBRInstrumentMemory.h:313
RBRInstrumentMemoryInfo::dataset
RBRInstrumentDataset dataset
The index of the dataset being queried.
Definition: RBRInstrumentMemory.h:79
RBRInstrumentPostprocessing::dcCtCoeff
float dcCtCoeff
(dynamic correction) Parameter for the long term thermal coefficient for the conductivity cell
Definition: RBRInstrumentMemory.h:583
RBRInstrumentPostprocessingCommand
RBRInstrumentPostprocessingCommand
Post-processing control commands.
Definition: RBRInstrumentMemory.h:396
RBRInstrumentPostprocessingAggregate
RBRInstrumentPostprocessingAggregate
Functions available to aggregate channel values within bins.
Definition: RBRInstrumentMemory.h:308
RBRINSTRUMENT_POSTPROCESSING_COMMAND_COUNT
@ RBRINSTRUMENT_POSTPROCESSING_COMMAND_COUNT
Definition: RBRInstrumentMemory.h:405
RBRInstrumentPostprocessing::tstampMax
RBRInstrumentDateTime tstampMax
The maximum timestamp value.
Definition: RBRInstrumentMemory.h:523
RBRINSTRUMENT_POSTPROCESSING_CHANNEL_MAX
#define RBRINSTRUMENT_POSTPROCESSING_CHANNEL_MAX
The maximum number of channels which can be generated by a post-processing job.
Definition: RBRInstrumentMemory.h:25
RBRINSTRUMENT_POSTPROCESSING_BINFILTER_ASCENTONLY
@ RBRINSTRUMENT_POSTPROCESSING_BINFILTER_ASCENTONLY
Only ascending values.
Definition: RBRInstrumentMemory.h:436
RBRINSTRUMENT_POSTPROCESSING_STATUS_COUNT
@ RBRINSTRUMENT_POSTPROCESSING_STATUS_COUNT
Definition: RBRInstrumentMemory.h:375
RBRInstrumentPostprocessingStatus
RBRInstrumentPostprocessingStatus
Post-processing job statuses.
Definition: RBRInstrumentMemory.h:364
RBRINSTRUMENT_DATASET_EASYPARSE_DEPLOYMENT_HEADER
@ RBRINSTRUMENT_DATASET_EASYPARSE_DEPLOYMENT_HEADER
Definition: RBRInstrumentMemory.h:44
RBRInstrumentPostprocessingChannelsList::count
int32_t count
The number of channels generated by post-processing.
Definition: RBRInstrumentMemory.h:347
RBRInstrumentMemoryInfo
struct RBRInstrumentMemoryInfo RBRInstrumentMemoryInfo
Instrument meminfo command parameters.
RBRINSTRUMENT_DATASET_UNKNOWN_DATASET1
@ RBRINSTRUMENT_DATASET_UNKNOWN_DATASET1
Definition: RBRInstrumentMemory.h:46
RBRINSTRUMENT_POSTPROCESSING_BINFILTER_DESCENTONLY
@ RBRINSTRUMENT_POSTPROCESSING_BINFILTER_DESCENTONLY
Only descending values.
Definition: RBRInstrumentMemory.h:443
RBRINSTRUMENT_DATASET_POSTPROCESSING_SAMPLE_DATA
@ RBRINSTRUMENT_DATASET_POSTPROCESSING_SAMPLE_DATA
Definition: RBRInstrumentMemory.h:48
RBRINSTRUMENT_POSTPROCESSING_BINFILTER_COUNT
@ RBRINSTRUMENT_POSTPROCESSING_BINFILTER_COUNT
Definition: RBRInstrumentMemory.h:445
RBRInstrument_getCurrentMemoryFormat
RBRInstrumentError RBRInstrument_getCurrentMemoryFormat(RBRInstrument *instrument, RBRInstrumentMemoryFormat *memoryFormat)
Get the current memory format.
RBRInstrumentDateTime
int64_t RBRInstrumentDateTime
Definition: RBRInstrument.h:181
RBRINSTRUMENT_POSTPROCESSING_AGGREGATE_COUNT
@ RBRINSTRUMENT_POSTPROCESSING_AGGREGATE_COUNT
Definition: RBRInstrumentMemory.h:317
RBRINSTRUMENT_CHANNEL_LABEL_MAX
#define RBRINSTRUMENT_CHANNEL_LABEL_MAX
The maximum number of characters in a channel label.
Definition: RBRInstrument.h:131
RBRINSTRUMENT_POSTPROCESSING_STATUS_ABORTED
@ RBRINSTRUMENT_POSTPROCESSING_STATUS_ABORTED
Definition: RBRInstrumentMemory.h:373
RBRINSTRUMENT_POSTPROCESSING_STATUS_PROCESSING
@ RBRINSTRUMENT_POSTPROCESSING_STATUS_PROCESSING
Definition: RBRInstrumentMemory.h:369
RBRInstrumentPostprocessing::dcTdelay
float dcTdelay
(dynamic correction) Parameter for the time lag correction between marine temperature and conductivit...
Definition: RBRInstrumentMemory.h:574
RBRInstrumentPostprocessing::depthMin
float depthMin
The minimum depth value.
Definition: RBRInstrumentMemory.h:536
RBRInstrumentPostprocessing::tstampMin
RBRInstrumentDateTime tstampMin
The minimum timestamp value.
Definition: RBRInstrumentMemory.h:516
RBRInstrumentPostprocessing::binFilter
RBRInstrumentPostprocessingBinFilter binFilter
How data should be filtered before binning.
Definition: RBRInstrumentMemory.h:494
RBRInstrument_setPostprocessingCommand
RBRInstrumentError RBRInstrument_setPostprocessingCommand(RBRInstrument *instrument, RBRInstrumentPostprocessingCommand command, RBRInstrumentPostprocessingStatus *status)
Exercises control over the post-processing state.
RBRInstrumentData
Instrument readdata command parameters.
Definition: RBRInstrumentMemory.h:120
RBRINSTRUMENT_POSTPROCESSING_STATUS_COMPLETED
@ RBRINSTRUMENT_POSTPROCESSING_STATUS_COMPLETED
Definition: RBRInstrumentMemory.h:371
RBRInstrumentPostprocessingAggregate_name
const char * RBRInstrumentPostprocessingAggregate_name(RBRInstrumentPostprocessingAggregate function)
Get a human-readable string name for an aggregate function.
RBRInstrumentPostprocessingBinFilter_name
const char * RBRInstrumentPostprocessingBinFilter_name(RBRInstrumentPostprocessingBinFilter filter)
Get a human-readable string name for a post-processing bin filter.
RBRInstrumentPostprocessingChannelsList
struct RBRInstrumentPostprocessingChannelsList RBRInstrumentPostprocessingChannelsList
calculateCrc
uint16_t calculateCrc(const void *data, int32_t size)
Calculate the 16-bit CRC using the CCITT polynomial f(x)=x^16+x^12+x^5+1 feeding bytes into the gener...
RBRInstrument_readData
RBRInstrumentError RBRInstrument_readData(RBRInstrument *instrument, RBRInstrumentData *data)
Request a chunk of binary data from instrument data memory.
RBRInstrumentError
RBRInstrumentError
Errors which can be returned from library functions.
Definition: RBRInstrument.h:200
RBRInstrumentPostprocessing::depthMax
float depthMax
The maximum depth value.
Definition: RBRInstrumentMemory.h:549
RBRINSTRUMENT_MEMFORMAT_NONE
@ RBRINSTRUMENT_MEMFORMAT_NONE
Definition: RBRInstrumentMemory.h:209
RBRInstrumentPostprocessing
The instrument post-processing configuration.
Definition: RBRInstrumentMemory.h:467
RBRINSTRUMENT_DATASET_COUNT
@ RBRINSTRUMENT_DATASET_COUNT
Definition: RBRInstrumentMemory.h:50
RBRInstrumentMemoryInfo::size
int32_t size
The maximum total size of the dataset in bytes.
Definition: RBRInstrumentMemory.h:85
RBRINSTRUMENT_POSTPROCESSING_AGGREGATE_MEAN
@ RBRINSTRUMENT_POSTPROCESSING_AGGREGATE_MEAN
Definition: RBRInstrumentMemory.h:311
RBRInstrumentData::dataset
RBRInstrumentDataset dataset
The index of the dataset being queried.
Definition: RBRInstrumentMemory.h:123
RBRInstrumentData::size
int32_t size
The amount of data read.
Definition: RBRInstrumentMemory.h:125
RBRINSTRUMENT_UNKNOWN_POSTPROCESSING_AGGREGATE
@ RBRINSTRUMENT_UNKNOWN_POSTPROCESSING_AGGREGATE
Definition: RBRInstrumentMemory.h:319
RBRINSTRUMENT_POSTPROCESSING_COMMAND_START
@ RBRINSTRUMENT_POSTPROCESSING_COMMAND_START
Definition: RBRInstrumentMemory.h:399
RBRInstrumentMemoryInfo::remaining
int32_t remaining
The number of bytes available for data storage.
Definition: RBRInstrumentMemory.h:83
RBRINSTRUMENT_UNKNOWN_POSTPROCESSING_STATUS
@ RBRINSTRUMENT_UNKNOWN_POSTPROCESSING_STATUS
Definition: RBRInstrumentMemory.h:377
RBRInstrumentPostprocessing::status
RBRInstrumentPostprocessingStatus status
The current state of the instrument's post-processing function.
Definition: RBRInstrumentMemory.h:474
RBRINSTRUMENT_DATASET_EASYPARSE_SAMPLE_DATA
@ RBRINSTRUMENT_DATASET_EASYPARSE_SAMPLE_DATA
Definition: RBRInstrumentMemory.h:42
RBRInstrumentPostprocessingChannelsList::channels
struct RBRInstrumentPostprocessingChannelsList::@0 channels[RBRINSTRUMENT_POSTPROCESSING_CHANNEL_MAX]
The definitions of post-processing channels.
RBRInstrument_getAvailableMemoryFormats
RBRInstrumentError RBRInstrument_getAvailableMemoryFormats(RBRInstrument *instrument, RBRInstrumentMemoryFormat *memoryFormats)
Report a list of available memory formats.
RBRInstrument_getMemoryInfo
RBRInstrumentError RBRInstrument_getMemoryInfo(RBRInstrument *instrument, RBRInstrumentMemoryInfo *memoryInfo)
Get information about the usage and characteristics of data memory.
RBRInstrumentMemoryFormat_name
const char * RBRInstrumentMemoryFormat_name(RBRInstrumentMemoryFormat format)
Get a human-readable string name for a memory format.
RBRInstrumentPostprocessing::binReference
char binReference[RBRINSTRUMENT_CHANNEL_LABEL_MAX+1]
The reference channel for binning.
Definition: RBRInstrumentMemory.h:492
RBRInstrumentPostprocessing::binSize
float binSize
The size of each bin.
Definition: RBRInstrumentMemory.h:509
RBRINSTRUMENT_MEMFORMAT_MAX
@ RBRINSTRUMENT_MEMFORMAT_MAX
Definition: RBRInstrumentMemory.h:215
RBRINSTRUMENT_UNKNOWN_DATASET
@ RBRINSTRUMENT_UNKNOWN_DATASET
Definition: RBRInstrumentMemory.h:52
RBRInstrumentData::data
void * data
The data read from the instrument.
Definition: RBRInstrumentMemory.h:129
RBRINSTRUMENT_DATASET_STANDARD
@ RBRINSTRUMENT_DATASET_STANDARD
Definition: RBRInstrumentMemory.h:40
RBRInstrumentData::offset
int32_t offset
The offset in memory of the data.
Definition: RBRInstrumentMemory.h:127
RBRINSTRUMENT_UNKNOWN_POSTPROCESSING_COMMAND
@ RBRINSTRUMENT_UNKNOWN_POSTPROCESSING_COMMAND
Definition: RBRInstrumentMemory.h:407
RBRInstrumentData
struct RBRInstrumentData RBRInstrumentData
Instrument readdata command parameters.
RBRInstrumentPostprocessing::dcAlpha
float dcAlpha
(dynamic correction) Alpha parameter from Lueck and Picklo equation
Definition: RBRInstrumentMemory.h:557
RBRINSTRUMENT_POSTPROCESSING_STATUS_IDLE
@ RBRINSTRUMENT_POSTPROCESSING_STATUS_IDLE
Definition: RBRInstrumentMemory.h:367
RBRInstrument
Core library context object.
Definition: RBRInstrument.h:591
RBRINSTRUMENT_UNKNOWN_POSTPROCESSING_BINFILTER
@ RBRINSTRUMENT_UNKNOWN_POSTPROCESSING_BINFILTER
Definition: RBRInstrumentMemory.h:447
RBRInstrumentPostprocessingStatus_name
const char * RBRInstrumentPostprocessingStatus_name(RBRInstrumentPostprocessingStatus status)
Get a human-readable string name for a post-processing status.
RBRInstrument_setPostprocessing
RBRInstrumentError RBRInstrument_setPostprocessing(RBRInstrument *instrument, const RBRInstrumentPostprocessing *postprocessing)
Set the instrument post-processing settings.
RBRInstrumentPostprocessingChannelsList
Definition: RBRInstrumentMemory.h:344
RBRInstrument_memoryClear
RBRInstrumentError RBRInstrument_memoryClear(RBRInstrument *instrument)
Clear the data storage area of the flash memory.
RBRINSTRUMENT_DATASET_EASYPARSE_EVENTS
@ RBRINSTRUMENT_DATASET_EASYPARSE_EVENTS
Definition: RBRInstrumentMemory.h:38
RBRInstrument_setNewMemoryFormat
RBRInstrumentError RBRInstrument_setNewMemoryFormat(RBRInstrument *instrument, RBRInstrumentMemoryFormat memoryFormat)
Set the memory format to be used for the next deployment.
RBRINSTRUMENT_POSTPROCESSING_COMMAND_ABORT
@ RBRINSTRUMENT_POSTPROCESSING_COMMAND_ABORT
Definition: RBRInstrumentMemory.h:403
RBRINSTRUMENT_POSTPROCESSING_AGGREGATE_SAMPLE_COUNT
@ RBRINSTRUMENT_POSTPROCESSING_AGGREGATE_SAMPLE_COUNT
Definition: RBRInstrumentMemory.h:315
RBRInstrumentMemoryFormat
RBRInstrumentMemoryFormat
Instrument memory formats.
Definition: RBRInstrumentMemory.h:206
RBRInstrumentPostprocessingChannelsList::label
char label[RBRINSTRUMENT_CHANNEL_LABEL_MAX+1]
The label of the channel to aggregate.
Definition: RBRInstrumentMemory.h:354
RBRInstrument_getNewMemoryFormat
RBRInstrumentError RBRInstrument_getNewMemoryFormat(RBRInstrument *instrument, RBRInstrumentMemoryFormat *memoryFormat)
Get the memory format to be used for the next deployment.