X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=bindings%2Fcxx%2Finclude%2Flibsigrokcxx%2Flibsigrokcxx.hpp;h=b9395a7109b5c60507a3a0107d579193e6550b16;hb=8b2a184327900fd7d08bb09f58699d62e2578eea;hp=0701688db5f46bacdfa373749c6a679c2b0d0444;hpb=161dc24d845acfc00108dd33eac7c42430d21e17;p=libsigrok.git diff --git a/bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp b/bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp index 0701688d..b9395a71 100644 --- a/bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp +++ b/bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp @@ -70,7 +70,7 @@ raised, which provides access to the error code and description. #ifndef LIBSIGROKCXX_HPP #define LIBSIGROKCXX_HPP -#include "libsigrok/libsigrok.h" +#include #include #include @@ -96,6 +96,7 @@ class SR_API Session; class SR_API ConfigKey; class SR_API InputFormat; class SR_API OutputFormat; +class SR_API OutputFlag; class SR_API LogLevel; class SR_API ChannelGroup; class SR_API Trigger; @@ -865,6 +866,9 @@ public: string name(); /** Description of this input format. */ string description(); + /** A list of preferred file name extensions for this file format. + * @note This list is a recommendation only. */ + vector extensions(); /** Options supported by this input format. */ map > options(); /** Create an input using this input format. @@ -885,8 +889,9 @@ public: /** Virtual device associated with this input. */ shared_ptr device(); /** Send next stream data. - * @param data Next stream data. */ - void send(string data); + * @param data Next stream data. + * @param length Length of data. */ + void send(void *data, size_t length); /** Signal end of input data. */ void end(); protected: @@ -945,14 +950,33 @@ public: string name(); /** Description of this output format. */ string description(); + /** A list of preferred file name extensions for this file format. + * @note This list is a recommendation only. */ + vector extensions(); /** Options supported by this output format. */ map > options(); /** Create an output using this format. * @param device Device to output for. * @param options Mapping of (option name, value) pairs. */ - shared_ptr create_output(shared_ptr device, + shared_ptr create_output( + shared_ptr device, map options = map()); + /** Create an output using this format. + * @param filename Name of destination file. + * @param device Device to output for. + * @param options Mapping of (option name, value) pairs. */ + shared_ptr create_output(string filename, + shared_ptr device, + map options = + map()); + /** + * Checks whether a given flag is set. + * @param flag Flag to check + * @return true if flag is set for this module + * @see sr_output_flags + */ + bool test_flag(const OutputFlag *flag); protected: OutputFormat(const struct sr_output_module *structure); ~OutputFormat(); @@ -971,6 +995,8 @@ protected: Output(shared_ptr format, shared_ptr device); Output(shared_ptr format, shared_ptr device, map options); + Output(string filename, shared_ptr format, + shared_ptr device, map options); ~Output(); const shared_ptr _format; const shared_ptr _device; @@ -1021,7 +1047,7 @@ protected: const string _name; }; -#include "enums.hpp" +#include }