* 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 <http://www.gnu.org/licenses/>.
*/
extern "C" {
#include "annotation.hpp"
+using std::vector;
+
namespace pv {
namespace data {
namespace decode {
-Annotation::Annotation(const srd_proto_data *const pdata) :
+Annotation::Annotation(const srd_proto_data *const pdata, const Row *row) :
start_sample_(pdata->start_sample),
- end_sample_(pdata->end_sample)
+ end_sample_(pdata->end_sample),
+ row_(row)
{
assert(pdata);
const srd_proto_data_annotation *const pda =
(const srd_proto_data_annotation*)pdata->data;
assert(pda);
- format_ = pda->ann_class;
+ ann_class_ = (Class)(pda->ann_class);
const char *const *annotations = (char**)pda->ann_text;
- while(*annotations) {
+ while (*annotations) {
annotations_.push_back(QString::fromUtf8(*annotations));
annotations++;
}
return end_sample_;
}
-int Annotation::format() const
+Annotation::Class Annotation::ann_class() const
{
- return format_;
+ return ann_class_;
}
-const std::vector<QString>& Annotation::annotations() const
+const vector<QString>& Annotation::annotations() const
{
return annotations_;
}
+const Row* Annotation::row() const
+{
+ return row_;
+}
+
+bool Annotation::operator<(const Annotation &other) const
+{
+ return (start_sample_ < other.start_sample_);
+}
+
} // namespace decode
} // namespace data
} // namespace pv