X-Git-Url: http://git.code-monkey.de/?p=pulseview.git;a=blobdiff_plain;f=pv%2Fdevices%2Finputfile.hpp;h=e08832f608d6247e9febce369f32c3b8aea843e5;hp=9b9aee88dcbad288f12642397a6b6921d9e83a29;hb=f4ab4b5c657e5613caba82feaa81a8a400e4f331;hpb=4d6c6ea3e6b069787c270d4911083dae05eae4c6 diff --git a/pv/devices/inputfile.hpp b/pv/devices/inputfile.hpp index 9b9aee8..e08832f 100644 --- a/pv/devices/inputfile.hpp +++ b/pv/devices/inputfile.hpp @@ -14,8 +14,7 @@ * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * along with this program; if not, see . */ #ifndef PULSEVIEW_PV_DEVICE_INPUTFILE_HPP @@ -27,19 +26,37 @@ #include "file.hpp" +#include + +using std::atomic; +using std::ifstream; +using std::map; +using std::shared_ptr; +using std::streamsize; +using std::string; + namespace pv { namespace devices { class InputFile final : public File { private: - static const std::streamsize BufferSize; + static const streamsize BufferSize; public: - InputFile(const std::shared_ptr &context, - const std::string &file_name, - std::shared_ptr format, - const std::map &options); + InputFile(const shared_ptr &context, + const string &file_name, + shared_ptr format, + const map &options); + + /** + * Constructor that loads a file using the metadata saved by + * save_meta_to_settings() before. + */ + InputFile(const shared_ptr &context, + QSettings &settings); + + void save_meta_to_settings(QSettings &settings); void open(); @@ -52,10 +69,13 @@ public: void stop(); private: - const std::shared_ptr context_; - const std::shared_ptr input_; + const shared_ptr context_; + shared_ptr format_; + map options_; + shared_ptr input_; - std::atomic interrupt_; + ifstream *f; + atomic interrupt_; }; } // namespace devices