#include <boost/test/unit_test.hpp>
-#include "../../pv/data/analogsnapshot.h"
+#include <pv/data/analogsnapshot.hpp>
using pv::data::AnalogSnapshot;
void push_analog(AnalogSnapshot &s, unsigned int num_samples,
float value)
{
- sr_datafeed_analog analog;
- analog.num_samples = num_samples;
+ float *const data = new float[num_samples];
+ for (unsigned int i = 0; i < num_samples; i++)
+ data[i] = value;
- float *data = new float[num_samples];
- analog.data = data;
- while(num_samples-- != 0)
- *data++ = value;
-
- s.append_payload(analog);
- delete[] (float*)analog.data;
+ s.append_interleaved_samples(data, num_samples, 1);
+ delete[] data;
}
BOOST_AUTO_TEST_CASE(Basic)
{
// Create an empty AnalogSnapshot object
- sr_datafeed_analog analog;
- analog.num_samples = 0;
- analog.data = NULL;
-
- AnalogSnapshot s(analog);
+ AnalogSnapshot s;
//----- Test AnalogSnapshot::push_analog -----//
BOOST_CHECK(s.get_sample_count() == 0);
for (unsigned int i = 0; i < AnalogSnapshot::ScaleStepCount; i++)
{
- const AnalogSnapshot::Envelope &m = s._envelope_levels[i];
+ const AnalogSnapshot::Envelope &m = s.envelope_levels_[i];
BOOST_CHECK_EQUAL(m.length, 0);
BOOST_CHECK_EQUAL(m.data_length, 0);
BOOST_CHECK(m.samples == NULL);
// There should not be enough samples to have a single mip map sample
for (unsigned int i = 0; i < AnalogSnapshot::ScaleStepCount; i++)
{
- const AnalogSnapshot::Envelope &m = s._envelope_levels[i];
+ const AnalogSnapshot::Envelope &m = s.envelope_levels_[i];
BOOST_CHECK_EQUAL(m.length, 0);
BOOST_CHECK_EQUAL(m.data_length, 0);
BOOST_CHECK(m.samples == NULL);
// There should now be enough data for exactly one sample
// in mip map level 0, and that sample should be 0
- const AnalogSnapshot::Envelope &e0 = s._envelope_levels[0];
+ const AnalogSnapshot::Envelope &e0 = s.envelope_levels_[0];
BOOST_CHECK_EQUAL(e0.length, 1);
BOOST_CHECK_EQUAL(e0.data_length, AnalogSnapshot::EnvelopeDataUnit);
BOOST_REQUIRE(e0.samples != NULL);
// The higher levels should still be empty
for (unsigned int i = 1; i < AnalogSnapshot::ScaleStepCount; i++)
{
- const AnalogSnapshot::Envelope &m = s._envelope_levels[i];
+ const AnalogSnapshot::Envelope &m = s.envelope_levels_[i];
BOOST_CHECK_EQUAL(m.length, 0);
BOOST_CHECK_EQUAL(m.data_length, 0);
BOOST_CHECK(m.samples == NULL);
BOOST_CHECK_EQUAL(e0.samples[i].max, -1.0f);
}
- const AnalogSnapshot::Envelope &e1 = s._envelope_levels[1];
+ const AnalogSnapshot::Envelope &e1 = s.envelope_levels_[1];
BOOST_CHECK_EQUAL(e1.length, 1);
BOOST_CHECK_EQUAL(e1.data_length, AnalogSnapshot::EnvelopeDataUnit);
BOOST_REQUIRE(e1.samples != NULL);