BltTofApi
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
bta_frame.h
Go to the documentation of this file.
1 
20 #ifndef BTA_FRAME_H_INCLUDED
21 #define BTA_FRAME_H_INCLUDED
22 
23 #include <bta_status.h>
24 #include <stdint.h>
25 
26 
28 typedef enum BTA_FrameMode {
30  BTA_FrameModeDistAmp,
31  BTA_FrameModeDistAmpFlags,
32  BTA_FrameModeXYZ,
33  BTA_FrameModeXYZAmp,
34  BTA_FrameModeDistAmpColor,
35  BTA_FrameModeXYZAmpFlags,
36  BTA_FrameModeRawPhases,
37  BTA_FrameModeIntensities,
38  BTA_FrameModeDistColor
40 
41 
43 typedef enum BTA_ChannelId {
44  BTA_ChannelIdUnknown = 0x0,
45  BTA_ChannelIdDistance = 0x1,
46  BTA_ChannelIdAmplitude = 0x2,
47  BTA_ChannelIdX = 0x4,
48  BTA_ChannelIdY = 0x8,
49  BTA_ChannelIdZ = 0x10,
52  BTA_ChannelIdPhase0 = 0x80,
53  BTA_ChannelIdPhase90 = 0x100,
54  BTA_ChannelIdPhase180 = 0x200,
55  BTA_ChannelIdPhase270 = 0x400,
56  BTA_ChannelIdTest = 0x800,
57  BTA_ChannelIdColor = 0x1000,
58  BTA_ChannelIdAmbient = 0x2000,
59  BTA_ChannelIdPhase = 0x4000,
60  BTA_ChannelIdGrayScale = 0x8000
62 
63 
67 typedef enum BTA_DataFormat {
68  BTA_DataFormatUnknown = 0x0,
69  BTA_DataFormatUInt8 = 0x11,
70  BTA_DataFormatUInt16 = 0x12,
71  //BTA_DataFormatUInt24 = 0x13,
72  BTA_DataFormatUInt32 = 0x14,
73  BTA_DataFormatSInt8 = 0x21,
74  BTA_DataFormatSInt16 = 0x22,
75  //BTA_DataFormatSInt24 = 0x23,
76  BTA_DataFormatSInt32 = 0x24,
77  //BTA_DataFormatFloat8 = 0x31,
78  //BTA_DataFormatFloat16 = 0x32,
79  //BTA_DataFormatFloat24 = 0x33,
80  BTA_DataFormatFloat32 = 0x34,
81  BTA_DataFormatRgb565 = 0x42,
82  BTA_DataFormatRgb24 = 0x43,
83  BTA_DataFormatJpeg = 0x50,
85 
86 
88 typedef enum BTA_Unit {
89  BTA_UnitUnitLess = 0,
90  BTA_UnitMeter,
91  BTA_UnitCentimeter,
92  BTA_UnitMillimeter,
93  BTA_UnitPercent
94 } BTA_Unit;
95 
96 
98 typedef struct BTA_Channel {
100  uint16_t xRes;
101  uint16_t yRes;
104  uint32_t integrationTime;
106  uint8_t *data;
107  uint32_t dataLen;
108 } BTA_Channel;
109 
110 
112 typedef struct BTA_Frame {
116  float mainTemp;
117  float ledTemp;
118  float genericTemp;
119  uint32_t frameCounter;
120  uint32_t timeStamp;
122  uint8_t channelsLen;
123  uint8_t sequenceCounter;
124 } BTA_Frame;
125 
126 #endif
BTA_Frame holds all the data gathered from one frame (one or more channels)
Definition: bta_frame.h:112
uint16_t yRes
Number of rows.
Definition: bta_frame.h:101
uint8_t firmwareVersionNonFunc
Firmware version non functional.
Definition: bta_frame.h:115
uint8_t channelsLen
The number of channel pointer stored in channels.
Definition: bta_frame.h:122
uint32_t dataLen
Length of the channel data in bytes (= xRes*yRes*bytesPerPixel)
Definition: bta_frame.h:107
BTA_Channel holds a two-dimensional array of data (A part of BTA_Frame)
Definition: bta_frame.h:98
This header file contains the status ID enum used as return value for most functions.
uint16_t xRes
Number of columns.
Definition: bta_frame.h:100
BTA_Unit unit
Informative, for easier interpretation of the data.
Definition: bta_frame.h:103
uint8_t firmwareVersionMajor
Firmware version major.
Definition: bta_frame.h:113
uint32_t integrationTime
Integration time at which the frame was captured in [us].
Definition: bta_frame.h:104
BTA_DataFormat
Enumerator with data formats which allows the parsing of the data in BTA_Channel. The lowbyte stands ...
Definition: bta_frame.h:67
struct BTA_Frame BTA_Frame
BTA_Frame holds all the data gathered from one frame (one or more channels)
in percent
Definition: bta_frame.h:50
BTA_ChannelId
Enumerator with channel IDs. They allow the identification of the various channels in a BTA_Frame...
Definition: bta_frame.h:43
uint8_t sequenceCounter
If multiple sequences were captured, they can be seperated by the sequence counter.
Definition: bta_frame.h:123
BTA_FrameMode
Enumerator with valid frame modes to be passed with BTAsetFrameMode.
Definition: bta_frame.h:28
The sensors settings are not changed and data is passed through (according to device's current calcul...
Definition: bta_frame.h:29
uint32_t frameCounter
Consecutive numbering of frames.
Definition: bta_frame.h:119
uint8_t * data
Pixels starting with upper left pixel. For nofBytesPerPixel bigger than 1 the first byte is the lowby...
Definition: bta_frame.h:106
BTA_ChannelId id
Type of data in this channel.
Definition: bta_frame.h:99
BTA_Unit
Enumerator with units which allows the interpretation of the data in a channel.
Definition: bta_frame.h:88
BTA_Channel ** channels
Data containing ucNofChannels Channel structs.
Definition: bta_frame.h:121
uint32_t modulationFrequency
Modulation frequency at which the frame was captured in [Hz].
Definition: bta_frame.h:105
float ledTemp
Led-board temperature sensor in degree Celcius.
Definition: bta_frame.h:117
struct BTA_Channel BTA_Channel
BTA_Channel holds a two-dimensional array of data (A part of BTA_Frame)
uint32_t timeStamp
Time-stamp at which the frame was captured (in microseconds)
Definition: bta_frame.h:120
BTA_DataFormat dataFormat
The bytestream in data needs to be casted to this format.
Definition: bta_frame.h:102
additional pixel-wise sensor specific information
Definition: bta_frame.h:51
float mainTemp
Main-board/processor temperature sensor in degree Celcius.
Definition: bta_frame.h:116
uint8_t firmwareVersionMinor
Firmware version minor.
Definition: bta_frame.h:114
float genericTemp
Additional Generic temperature sensor in degree Celcius.
Definition: bta_frame.h:118