]> sigrok.org Git - pulseview.git/blobdiff - pv/data/decode/annotation.cpp
Session: Fix issue #67 by improving error handling
[pulseview.git] / pv / data / decode / annotation.cpp
index 1a331b3e143aeb46e0969b5936dac60e7fa314aa..f8a5c47b66236a8be66327a2c9ea05568970749f 100644 (file)
@@ -17,9 +17,7 @@
  * along with this program; if not, see <http://www.gnu.org/licenses/>.
  */
 
-extern "C" {
 #include <libsigrokdecode/libsigrokdecode.h>
-}
 
 #include <cassert>
 #include <vector>
@@ -35,7 +33,7 @@ namespace data {
 namespace decode {
 
 Annotation::Annotation(uint64_t start_sample, uint64_t end_sample,
-       const vector<QString>* texts, Class ann_class_id, const RowData *data) :
+       const vector<QString>* texts, uint32_t ann_class_id, const RowData *data) :
        start_sample_(start_sample),
        end_sample_(end_sample),
        texts_(texts),
@@ -91,7 +89,7 @@ uint64_t Annotation::length() const
        return end_sample_ - start_sample_;
 }
 
-Annotation::Class Annotation::ann_class_id() const
+uint32_t Annotation::ann_class_id() const
 {
        return ann_class_id_;
 }
@@ -126,7 +124,8 @@ bool Annotation::visible() const
 {
        const Row* row = data_->row();
 
-       return (row->visible() && row->class_is_visible(ann_class_id_));
+       return (row->visible() && row->class_is_visible(ann_class_id_)
+               && row->decoder()->visible());
 }
 
 const QColor Annotation::color() const