X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=src%2Ftransform%2Finvert.c;h=a3e14cb82ae701015d734d78bc270bb78023e76b;hb=d65f51bf5c549e5dbacb5c6fb6636e482ff02da8;hp=c1941d1a6d50edf7a413d5c23728f59b1cea564f;hpb=5faebab2903dc91949edc31f0a4b118d86090a30;p=libsigrok.git diff --git a/src/transform/invert.c b/src/transform/invert.c index c1941d1a..a3e14cb8 100644 --- a/src/transform/invert.c +++ b/src/transform/invert.c @@ -14,8 +14,7 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * along with this program; if not, see . */ #include @@ -30,12 +29,7 @@ static int receive(const struct sr_transform *t, struct sr_datafeed_packet **packet_out) { const struct sr_datafeed_logic *logic; - const struct sr_datafeed_analog_old *analog_old; - const struct sr_datafeed_analog2 *analog2; - struct sr_channel *ch; - GSList *l; - float *fdata, *f; - int si, num_channels, c; + const struct sr_datafeed_analog *analog; uint8_t *b; int64_t p; uint64_t i, j, q; @@ -54,28 +48,14 @@ static int receive(const struct sr_transform *t, } } break; - case SR_DF_ANALOG_OLD: - analog_old = packet_in->payload; - fdata = (float *)analog_old->data; - num_channels = g_slist_length(analog_old->channels); - for (si = 0; si < analog_old->num_samples; si++) { - /* For now invert all values in all channels. */ - for (l = analog_old->channels, c = 0; l; l = l->next, c++) { - ch = l->data; - (void)ch; - f = &fdata[si * num_channels + c]; - *f = 1.0 / *f; - } - } - break; - case SR_DF_ANALOG2: - analog2 = packet_in->payload; - p = analog2->encoding->scale.p; - q = analog2->encoding->scale.q; + case SR_DF_ANALOG: + analog = packet_in->payload; + p = analog->encoding->scale.p; + q = analog->encoding->scale.q; if (q > INT64_MAX) return SR_ERR; - analog2->encoding->scale.p = (p < 0) ? -q : q; - analog2->encoding->scale.q = (p < 0) ? -p : p; + analog->encoding->scale.p = (p < 0) ? -q : q; + analog->encoding->scale.q = (p < 0) ? -p : p; break; default: sr_spew("Unsupported packet type %d, ignoring.", packet_in->type);