20 #ifndef BTA_FRAME_H_INCLUDED
21 #define BTA_FRAME_H_INCLUDED
32 BTA_FrameModeDistAmpFlags,
35 BTA_FrameModeDistAmpColor,
36 BTA_FrameModeXYZAmpFlags,
37 BTA_FrameModeRawPhases,
38 BTA_FrameModeIntensities,
39 BTA_FrameModeDistColor,
40 BTA_FrameModeDistAmpBalance,
41 BTA_FrameModeXYZColor,
47 BTA_ChannelIdUnknown = 0x0,
48 BTA_ChannelIdDistance = 0x1,
49 BTA_ChannelIdAmplitude = 0x2,
52 BTA_ChannelIdZ = 0x10,
53 BTA_ChannelIdConfidence = 0x20,
54 BTA_ChannelIdFlags = 0x40,
55 BTA_ChannelIdPhase0 = 0x80,
56 BTA_ChannelIdPhase90 = 0x100,
57 BTA_ChannelIdPhase180 = 0x200,
58 BTA_ChannelIdPhase270 = 0x400,
59 BTA_ChannelIdRawPhase = 0x81,
60 BTA_ChannelIdTest = 0x800,
61 BTA_ChannelIdColor = 0x1000,
62 BTA_ChannelIdAmbient = 0x2000,
63 BTA_ChannelIdPhase = 0x4000,
64 BTA_ChannelIdGrayScale = 0x8000,
65 BTA_ChannelIdBalance = 0x10000,
67 BTA_ChannelIdCustom01 = 0x1000000,
68 BTA_ChannelIdCustom02 = 0x2000000,
69 BTA_ChannelIdCustom03 = 0x3000000,
70 BTA_ChannelIdCustom04 = 0x4000000,
71 BTA_ChannelIdCustom05 = 0x5000000,
72 BTA_ChannelIdCustom06 = 0x6000000,
73 BTA_ChannelIdCustom07 = 0x7000000,
74 BTA_ChannelIdCustom08 = 0x8000000,
75 BTA_ChannelIdCustom09 = 0x9000000,
76 BTA_ChannelIdCustom10 = 0xa000000,
84 BTA_DataFormatUnknown = 0x0,
85 BTA_DataFormatUInt8 = 0x11,
86 BTA_DataFormatUInt16 = 0x12,
87 BTA_DataFormatUInt16Mlx1C11S = 0x62,
88 BTA_DataFormatUInt16Mlx12S = 0x72,
89 BTA_DataFormatUInt16Mlx1C11U = 0x82,
90 BTA_DataFormatUInt16Mlx12U = 0x92,
92 BTA_DataFormatUInt32 = 0x14,
94 BTA_DataFormatSInt16 = 0x22,
96 BTA_DataFormatSInt32 = 0x24,
100 BTA_DataFormatFloat32 = 0x34,
101 BTA_DataFormatFloat64 = 0x38,
102 BTA_DataFormatRgb565 = 0x42,
103 BTA_DataFormatRgb24 = 0x43,
104 BTA_DataFormatJpeg = 0x50,
110 BTA_UnitUnitLess = 0,
113 BTA_UnitMillimeter = 3,
118 typedef enum BTA_MetadataId {
119 BTA_MetadataIdChessboardCorners = 0xab8471f9,
120 BTA_MetadataIdMlxMeta1 = 0xa720b906,
121 BTA_MetadataIdMlxMeta2 = 0xa720b907,
122 BTA_MetadataIdMlxTest = 0xa720b908,
123 BTA_MetadataIdMlxAdcData = 0xa720b909,
BTA_Frame holds all the data gathered from one frame (one or more channels)
Definition: bta_frame.h:152
uint16_t yRes
Number of rows.
Definition: bta_frame.h:139
uint32_t metadataLen
The number of BTA_Metadata pointers stored in metadata.
Definition: bta_frame.h:147
BTA_Metadata ** metadata
List of pointers to additional generic data.
Definition: bta_frame.h:146
uint8_t firmwareVersionNonFunc
Firmware version non functional.
Definition: bta_frame.h:155
uint8_t channelsLen
The number of BTA_Channel pointers stored in channels.
Definition: bta_frame.h:162
uint32_t dataLen
Length of the channel data in bytes (= xRes*yRes*bytesPerPixel)
Definition: bta_frame.h:145
BTA_Channel holds a two-dimensional array of data (A part of BTA_Frame)
Definition: bta_frame.h:136
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:138
BTA_Unit unit
Informative, for easier interpretation of the data.
Definition: bta_frame.h:141
uint8_t firmwareVersionMajor
Firmware version major.
Definition: bta_frame.h:153
uint32_t integrationTime
Integration time at which the frame was captured in [us].
Definition: bta_frame.h:142
BTA_DataFormat
Enumerator with data formats which allows the parsing of the data in BTA_Channel. The lowbyte stands ...
Definition: bta_frame.h:83
struct BTA_Frame BTA_Frame
BTA_Frame holds all the data gathered from one frame (one or more channels)
BTA_ChannelId
Enumerator with channel IDs. They allow the identification of the various channels in a BTA_Frame...
Definition: bta_frame.h:46
uint8_t sequenceCounter
If multiple sequences were captured, they can be seperated by the sequence counter.
Definition: bta_frame.h:163
BTA_FrameMode
Enumerator with valid frame modes to be passed with BTAsetFrameMode.
Definition: bta_frame.h:29
The sensors settings are not changed and data is passed through (according to device's current calcul...
Definition: bta_frame.h:30
uint32_t frameCounter
Consecutive numbering of frames.
Definition: bta_frame.h:159
uint8_t * data
Pixels starting with upper left pixel. For nofBytesPerPixel bigger than 1 the first byte is the lowby...
Definition: bta_frame.h:144
BTA_ChannelId id
Type of data in this channel.
Definition: bta_frame.h:137
BTA_Unit
Enumerator with units which allows the interpretation of the data in a channel.
Definition: bta_frame.h:109
BTA_Channel ** channels
Data containing channelsLen Channel structs.
Definition: bta_frame.h:161
uint32_t modulationFrequency
Modulation frequency at which the frame was captured in [Hz].
Definition: bta_frame.h:143
float ledTemp
Led-board temperature sensor in degree Celcius.
Definition: bta_frame.h:157
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) (max 1h 11m 34s 967ms 295 us) ...
Definition: bta_frame.h:160
struct BTA_Metadata BTA_Metadata
BTA_Channel holds a two-dimensional array of data (A part of BTA_Frame)
BTA_DataFormat dataFormat
The bytestream in data needs to be casted to this format.
Definition: bta_frame.h:140
float mainTemp
Main-board/processor temperature sensor in degree Celcius.
Definition: bta_frame.h:156
uint8_t firmwareVersionMinor
Firmware version minor.
Definition: bta_frame.h:154
float genericTemp
Additional Generic temperature sensor in degree Celcius.
Definition: bta_frame.h:158