Skip to content

Commit d4c1c84

Browse files
committed
Updated changes pointed out by @christiankerl.
1 parent 251830c commit d4c1c84

File tree

1 file changed

+13
-13
lines changed

1 file changed

+13
-13
lines changed

examples/protonect/src/rgb_packet_stream_parser.cpp

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -37,25 +37,24 @@ namespace libfreenect2
3737
LIBFREENECT2_PACK(struct RawRgbPacket
3838
{
3939
uint32_t sequence;
40-
uint32_t magicHeader; // is 'BBBB' equal 0x42424242
40+
uint32_t magic_header; // is 'BBBB' equal 0x42424242
4141

4242
unsigned char jpeg_buffer[0];
4343
});
4444

45-
struct RgbPacketFooter {
46-
uint32_t magicHeader; // is '9999' equal 0x39393939
45+
LIBFREENECT2_PACK(struct RgbPacketFooter {
46+
uint32_t magic_header; // is '9999' equal 0x39393939
4747
uint32_t sequence;
4848
int32_t unknown1; // varies from 0 to 60 with steps of 4
4949
int32_t unknown2; // seems 0 always
5050
int32_t unknown3; // seems 0 always
5151
uint32_t timestamp;
5252
float exposure; // ? ranges from 0.5 to about 60.0 with powerfull light at camera or totally covered
5353
float gain; // ? ranges from 1.0 when camera is clear to 1.5 when camera is covered.
54-
uint32_t magicFooter; // is 'BBBB' equal 0x42424242
54+
uint32_t magic_footer; // is 'BBBB' equal 0x42424242
5555
uint32_t packet_size;
56-
float version; // ? this seems to be consistent 1.0
57-
uint8_t unknown4[12]; // seems to be 0 all the time.
58-
};
56+
uint8_t unknown4[16]; // seems to be 0 all the time.
57+
});
5958

6059
RgbPacketStreamParser::RgbPacketStreamParser() :
6160
processor_(noopProcessor<RgbPacket>())
@@ -86,24 +85,25 @@ void RgbPacketStreamParser::onDataReceived(unsigned char* buffer, size_t length)
8685
RgbPacketFooter* footer = reinterpret_cast<RgbPacketFooter *>(&buffer[i]);
8786

8887
// if magic markers match
89-
if (length - i >= sizeof(RgbPacketFooter) && footer->magicHeader == 0x39393939 && footer->magicFooter == 0x42424242)
88+
if (length - i >= sizeof(RgbPacketFooter) && footer->magic_header == 0x39393939 && footer->magic_footer == 0x42424242)
9089
{
9190
memcpy(&fb.data[fb.length], buffer, length);
9291
fb.length += length;
9392

94-
buffer_.swap();
95-
Buffer &bb = buffer_.back();
96-
RawRgbPacket *raw_packet = reinterpret_cast<RawRgbPacket *>(bb.data);
93+
RawRgbPacket *raw_packet = reinterpret_cast<RawRgbPacket *>(fb.data);
9794

98-
if (bb.length == footer->packet_size && raw_packet->sequence == footer->sequence)
95+
if (fb.length == footer->packet_size && raw_packet->sequence == footer->sequence)
9996
{
10097
if (processor_->ready())
10198
{
99+
buffer_.swap();
100+
Buffer &bb = buffer_.back();
101+
102102
RgbPacket rgb_packet;
103103
rgb_packet.sequence = raw_packet->sequence;
104104
rgb_packet.timestamp = footer->timestamp;
105105
rgb_packet.jpeg_buffer = raw_packet->jpeg_buffer;
106-
rgb_packet.jpeg_buffer_length = bb.length - sizeof(RawRgbPacket);
106+
rgb_packet.jpeg_buffer_length = bb.length - sizeof(RawRgbPacket);
107107

108108
// call the processor
109109
processor_->process(rgb_packet);

0 commit comments

Comments
 (0)