X-Git-Url: https://sigrok.org/gitweb/?a=blobdiff_plain;f=bindings%2Fcxx%2Finclude%2Flibsigrokcxx%2Flibsigrokcxx.hpp;h=da2a286e05d79db7eff2e234067274ee6a41a58b;hb=12f2f640cbe9167ad386a2d9069ec882d70cda5b;hp=48111b876a3237d0811b46d2fc862717c10148c3;hpb=ace872d5296ab7352e94f09746c574db256c07d6;p=libsigrok.git diff --git a/bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp b/bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp index 48111b87..da2a286e 100644 --- a/bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp +++ b/bindings/cxx/include/libsigrokcxx/libsigrokcxx.hpp @@ -71,7 +71,12 @@ raised, which provides access to the error code and description. #define LIBSIGROKCXX_HPP #include + +/* Suppress warnings due to glibmm's use of std::auto_ptr<> in a public + * header file. To be removed once glibmm is fixed. */ +G_GNUC_BEGIN_IGNORE_DEPRECATIONS #include +G_GNUC_END_IGNORE_DEPRECATIONS #include #include @@ -93,6 +98,7 @@ class SR_API HardwareDevice; class SR_API Channel; class SR_API Session; class SR_API ConfigKey; +class SR_API Capability; class SR_API InputFormat; class SR_API OutputFormat; class SR_API OutputFlag; @@ -302,13 +308,7 @@ private: ~Context(); friend class Session; friend class Driver; - friend class std::default_delete; -}; - -enum Capability { - GET = SR_CONF_GET, - SET = SR_CONF_SET, - LIST = SR_CONF_LIST + friend struct std::default_delete; }; /** An object that can be configured. */ @@ -326,7 +326,7 @@ public: * @param key ConfigKey to enumerate values for. */ Glib::VariantContainerBase config_list(const ConfigKey *key) const; /** Enumerate available keys, according to a given index key. */ - map > config_keys(const ConfigKey *key); + map > config_keys(const ConfigKey *key); /** Check for a key in the list from a given index key. */ bool config_check(const ConfigKey *key, const ConfigKey *index_key) const; protected: @@ -363,7 +363,7 @@ private: friend class Context; friend class HardwareDevice; friend class ChannelGroup; - friend class std::default_delete; + friend struct std::default_delete; }; /** A generic device, either hardware or virtual */ @@ -404,7 +404,7 @@ private: friend class ChannelGroup; friend class Output; friend class Analog; - friend class std::default_delete; + friend struct std::default_delete; }; /** A real hardware device, connected via a driver */ @@ -423,7 +423,7 @@ private: friend class Driver; friend class ChannelGroup; - friend class std::default_delete; + friend struct std::default_delete; }; /** A virtual device, created by the user */ @@ -440,7 +440,7 @@ private: shared_ptr get_shared_from_this(); friend class Context; - friend class std::default_delete; + friend struct std::default_delete; }; /** A channel on a device */ @@ -473,7 +473,7 @@ private: friend class Session; friend class TriggerStage; friend class Context; - friend class std::default_delete; + friend struct std::default_delete; }; /** A group of channels on a device, which share some configuration */ @@ -491,7 +491,7 @@ private: ~ChannelGroup(); vector _channels; friend class Device; - friend class std::default_delete; + friend struct std::default_delete; }; /** A trigger configuration */ @@ -512,7 +512,7 @@ private: vector > _stages; friend class Context; friend class Session; - friend class std::default_delete; + friend struct std::default_delete; }; /** A stage in a trigger configuration */ @@ -539,7 +539,7 @@ private: explicit TriggerStage(struct sr_trigger_stage *structure); ~TriggerStage(); friend class Trigger; - friend class std::default_delete; + friend struct std::default_delete; }; /** A match condition in a trigger configuration */ @@ -559,7 +559,7 @@ private: struct sr_trigger_match *_structure; shared_ptr _channel; friend class TriggerStage; - friend class std::default_delete; + friend struct std::default_delete; }; /** Type of session stopped callback */ @@ -594,7 +594,7 @@ private: shared_ptr get_shared_from_this(); friend class Session; - friend class std::default_delete; + friend struct std::default_delete; }; /** A sigrok session */ @@ -649,7 +649,7 @@ private: friend class Context; friend class DatafeedCallbackData; friend class SessionDevice; - friend class std::default_delete; + friend struct std::default_delete; }; /** A packet on the session datafeed */ @@ -676,7 +676,7 @@ private: friend class Logic; friend class Analog; friend class Context; - friend class std::default_delete; + friend struct std::default_delete; }; /** Abstract base class for datafeed packet payloads */ @@ -690,7 +690,7 @@ private: friend class Packet; friend class Output; - friend class std::default_delete; + friend struct std::default_delete; }; /** Payload of a datafeed header packet */ @@ -808,7 +808,7 @@ private: friend class Context; friend class InputDevice; - friend class std::default_delete; + friend struct std::default_delete; }; /** An input instance (an input format applied to a file or stream) */ @@ -832,7 +832,7 @@ private: friend class Context; friend class InputFormat; - friend class std::default_delete; + friend struct std::default_delete; }; /** A virtual device associated with an input */ @@ -846,7 +846,7 @@ private: shared_ptr get_shared_from_this(); shared_ptr _input; friend class Input; - friend class std::default_delete; + friend struct std::default_delete; }; /** An option used by an output format */ @@ -872,7 +872,7 @@ private: friend class InputFormat; friend class OutputFormat; - friend class std::default_delete