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),
return *this;
}
-Annotation::~Annotation()
+const RowData* Annotation::row_data() const
{
+ return data_;
+}
+
+const Row* Annotation::row() const
+{
+ return data_->row();
}
uint64_t Annotation::start_sample() const
return end_sample_;
}
-Annotation::Class Annotation::ann_class_id() const
+uint64_t Annotation::length() const
+{
+ return end_sample_ - start_sample_;
+}
+
+uint32_t Annotation::ann_class_id() const
{
return ann_class_id_;
}
return QString(ann_class->name);
}
+const QString Annotation::ann_class_description() const
+{
+ const AnnotationClass* ann_class =
+ data_->row()->decoder()->get_ann_class_by_id(ann_class_id_);
+
+ return QString(ann_class->description);
+}
+
const vector<QString>* Annotation::annotations() const
{
return texts_;
return texts_->front();
}
-const Row* Annotation::row() const
+bool Annotation::visible() const
{
- return data_->row();
+ const Row* row = data_->row();
+
+ return (row->visible() && row->class_is_visible(ann_class_id_)
+ && row->decoder()->visible());
+}
+
+const QColor Annotation::color() const
+{
+ return data_->row()->get_class_color(ann_class_id_);
+}
+
+const QColor Annotation::bright_color() const
+{
+ return data_->row()->get_bright_class_color(ann_class_id_);
+}
+
+const QColor Annotation::dark_color() const
+{
+ return data_->row()->get_dark_class_color(ann_class_id_);
}
bool Annotation::operator<(const Annotation &other) const