+template
+uint64_t Device::read_config(const sigrok::ConfigKey*,
+ const uint64_t);
+
+template<typename T>
+T Device::read_config(const ConfigKey *key, const T default_value)
+{
+ assert(key);
+
+ if (!device_)
+ return default_value;
+
+ if (!device_->config_check(key, Capability::GET))
+ return default_value;
+
+ return VariantBase::cast_dynamic<Glib::Variant<guint64>>(
+ device_->config_get(ConfigKey::SAMPLERATE)).get();
+}
+
+void Device::start()
+{
+ assert(session_);
+ session_->start();
+}
+
+void Device::run()
+{