satdump/plugins/others_support/cloudsat/instruments/cpr/cpr_reader.cpp

41 lines
934 B
C++
Raw Normal View History

2022-01-07 18:23:28 +01:00
#include "cpr_reader.h"
#include "common/repack.h"
#include "logger.h"
namespace cloudsat
{
namespace cpr
{
CPReader::CPReader()
{
image = new unsigned short[1000000 * 126];
lines = 0;
}
CPReader::~CPReader()
{
delete[] image;
}
void CPReader::work(uint8_t *buffer)
{
2022-05-12 18:19:01 +02:00
repackBytesTo20bits(&buffer[83], 402 - 83, buffer20);
2022-01-07 18:23:28 +01:00
for (int i = 0; i < 126; i++)
{
2022-05-12 18:19:01 +02:00
// logger->info(buffer20[i]);
// uint16_t pixel = buffer[pos + channel + i * 5];
2022-01-07 18:23:28 +01:00
image[lines * 126 + i] = buffer20[i] >> 4;
}
// Frame counter
lines++;
}
2022-05-12 18:19:01 +02:00
image::Image<uint16_t> CPReader::getChannel()
2022-01-07 18:23:28 +01:00
{
return image::Image<uint16_t>(image, 126, lines, 1);
}
} // namespace avhrr
} // namespace noaa