X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=pv%2Fdevices%2Fsessionfile.cpp;h=e6920ff5e299a6a5b5e437b2768d3d020549f2e0;hb=51ae69ae74d4868e52785875daa5fa1360e638a6;hp=7bcabee036cef366eb59d6cd3d5e4731ae1e9bfe;hpb=474e817a724fdad4db635ba59202283fbcc22ef9;p=pulseview.git diff --git a/pv/devices/sessionfile.cpp b/pv/devices/sessionfile.cpp index 7bcabee0..e6920ff5 100644 --- a/pv/devices/sessionfile.cpp +++ b/pv/devices/sessionfile.cpp @@ -27,16 +27,24 @@ namespace pv { namespace devices { -SessionFile::SessionFile(const std::shared_ptr &context, +SessionFile::SessionFile(const std::shared_ptr context, const std::string &file_name) : File(file_name), context_(context) { } -void SessionFile::create() { +void SessionFile::open() { + if (session_) + close(); + session_ = context_->load_session(file_name_); device_ = session_->devices()[0]; } +void SessionFile::close() { + if (session_) + session_->remove_devices(); +} + } // namespace devices } // namespace pv