X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=include%2Flibsigrokflow%2Flibsigrokflow.hpp;h=e800be0d45cc38248fc55fd8a0ae92d3195b096a;hb=d03b3a9898b6da83867b27ab76261fbecdcb54e3;hp=a5fc25314c57c3d518852a3fa6d40f55793ff254;hpb=f7363af19dd8d9a0e07d1b315fe3a8392d7acf25;p=libsigrokflow.git diff --git a/include/libsigrokflow/libsigrokflow.hpp b/include/libsigrokflow/libsigrokflow.hpp index a5fc253..e800be0 100644 --- a/include/libsigrokflow/libsigrokflow.hpp +++ b/include/libsigrokflow/libsigrokflow.hpp @@ -60,12 +60,23 @@ class LegacyCaptureDevice : { public: /* Construct from libsigrok device object */ - LegacyCaptureDevice(shared_ptr); + LegacyCaptureDevice(shared_ptr); /* Retrieve libsigrok device object */ - shared_ptr libsigrok_device(); + shared_ptr libsigrok_device(); + + /* Override state change */ + Gst::StateChangeReturn change_state_vfunc(Gst::StateChange transition); private: - shared_ptr _device; + shared_ptr _device; + Glib::RefPtr _src_pad; + Glib::Threads::RecMutex _mutex; + Glib::RefPtr _task; + shared_ptr _session; + + void _datafeed_callback(shared_ptr device, + shared_ptr packet); + void _run(); };