X-Git-Url: http://git.code-monkey.de/?a=blobdiff_plain;f=pv%2Fdata%2Fdecode%2Fdecoder.cpp;h=ffdbeb93bc3835eee32594045af1e79f32260467;hb=9f97b3576f527239594ea0accb82a4087147c746;hp=d3ee3459255ebc1ff3246fcda2d6a61b53859e56;hpb=6f925ba9d6faf1077b73c5a5808259576081716a;p=pulseview.git diff --git a/pv/data/decode/decoder.cpp b/pv/data/decode/decoder.cpp index d3ee345..ffdbeb9 100644 --- a/pv/data/decode/decoder.cpp +++ b/pv/data/decode/decoder.cpp @@ -130,11 +130,20 @@ srd_decoder_inst* Decoder::create_decoder_inst(srd_session *session) const return nullptr; // Setup the channels + GArray *const init_pin_states = g_array_sized_new(FALSE, TRUE, + sizeof(uint8_t), channels_.size()); + + g_array_set_size(init_pin_states, channels_.size()); + GHashTable *const channels = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, (GDestroyNotify)g_variant_unref); for (const auto& channel : channels_) { shared_ptr b(channel.second); + +// init_pin_states->data[pdch->order] = +// channel.initial_pin_state; + GVariant *const gvar = g_variant_new_int32(b->index()); g_variant_ref_sink(gvar); g_hash_table_insert(channels, channel.first->id, gvar); @@ -142,9 +151,12 @@ srd_decoder_inst* Decoder::create_decoder_inst(srd_session *session) const srd_inst_channel_set_all(decoder_inst, channels); +// srd_inst_initial_pins_set_all(decoder_inst, initial_pin_states); + g_array_free(init_pin_states, TRUE); + return decoder_inst; } -} // decode -} // data -} // pv +} // namespace decode +} // namespace data +} // namespace pv