1
/*****************************************************************
2
* Unipro UGENE - Integrated Bioinformatics Suite
3
* Copyright (C) 2008 Unipro, Russia (http://ugene.unipro.ru)
6
* This source code is distributed under the terms of the
7
* GNU General Public License. See the files COPYING and LICENSE
9
*****************************************************************/
11
#ifndef _GB2_PAN_VIEW_ROWS_H_
12
#define _GB2_PAN_VIEW_ROWS_H_
14
#include <core_api/LRegion.h>
16
#include <QtCore/QString>
17
#include <QtCore/QMap>
18
#include <QtCore/QList>
26
PVRowData(const QString& _key) : key(_key), rowNum(-1), uptodate(true){}
30
QList<LRegion> ranges;
31
QList<Annotation*> annotations;
40
int addAnnotation(Annotation* f, const QString& key);
41
void removeAnnotation(Annotation* f);
43
int getNumRows() const;
44
int getAnnotationRow(Annotation* f);
46
bool contains(const QString& key) const;
51
const QString& getRowKey(int rowNum) const;
52
int getNumAnnotationsInRow(int rowNum) const;
55
bool isUpToDate() const;
56
bool addToRow(Annotation* f, PVRowData* row);
57
bool fitToRow(PVRowData* row, const LRegion& region);
59
QList<PVRowData*> rows;
60
QMap<Annotation*, PVRowData*> rowByAnnotaion;