projects
/
pulseview.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Allow users to set initial pin states for decoders.
[pulseview.git]
/
pv
/
data
/
decode
/
decoder.cpp
diff --git
a/pv/data/decode/decoder.cpp
b/pv/data/decode/decoder.cpp
index d3ee3459255ebc1ff3246fcda2d6a61b53859e56..841d4fd7b874cdf4ba30227beaf862f361d60627 100644
(file)
--- a/
pv/data/decode/decoder.cpp
+++ b/
pv/data/decode/decoder.cpp
@@
-37,7
+37,8
@@
namespace decode {
Decoder::Decoder(const srd_decoder *const dec) :
decoder_(dec),
Decoder::Decoder(const srd_decoder *const dec) :
decoder_(dec),
- shown_(true)
+ shown_(true),
+ initial_pins_(nullptr)
{
}
{
}
@@
-74,6
+75,18
@@
void Decoder::set_channels(map<const srd_channel*,
channels_ = channels;
}
channels_ = channels;
}
+void Decoder::set_initial_pins(GArray *initial_pins)
+{
+ if (initial_pins_)
+ g_array_free(initial_pins_, TRUE);
+ initial_pins_ = initial_pins;
+}
+
+GArray *Decoder::initial_pins() const
+{
+ return initial_pins_;
+}
+
const map<string, GVariant*>& Decoder::options() const
{
return options_;
const map<string, GVariant*>& Decoder::options() const
{
return options_;
@@
-142,9
+155,11
@@
srd_decoder_inst* Decoder::create_decoder_inst(srd_session *session) const
srd_inst_channel_set_all(decoder_inst, channels);
srd_inst_channel_set_all(decoder_inst, channels);
+ srd_inst_initial_pins_set_all(decoder_inst, initial_pins_);
+
return decoder_inst;
}
return decoder_inst;
}
-}
//
decode
-}
//
data
-}
//
pv
+}
// namespace
decode
+}
// namespace
data
+}
// namespace
pv