/
graphdirector.h
63 lines (55 loc) · 1.95 KB
/
graphdirector.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
/***************************************************************************
graphdirector.h
--------------------------------------
Date : 2010-10-18
Copyright : (C) 2010 by Yakushev Sergey
Email : YakushevS <at> list.ru
****************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
#ifndef ROADGRAPH_GRAPHDIRECTOR
#define ROADGRAPH_GRAPHDIRECTOR
//QT4 includes
#include <QObject>
//QGIS includes
#include <qgsrectangle.h>
//forward declarations
class RgGraphBuilder;
/**
* \class RgGraphDirector
* \brief Determine making the graph
*/
class RgGraphDirector : public QObject
{
Q_OBJECT
signals:
void buildProgress( int, int ) const;
void buildMessage( QString ) const;
public:
//! Destructor
virtual ~RgGraphDirector() { };
/**
* Make a graph using RgGraphBuilder
*
* @param builder The graph builder
*
* @param additionalPoints Vector of points that must be tied to the graph
*
* @param tiedPoints Vector of tied points
*
* @note if tiedPoints[i]==QgsPoint(0.0,0.0) then tied failed.
*/
virtual void makeGraph( RgGraphBuilder *builder,
const QVector< QgsPoint >& additionalPoints,
QVector< QgsPoint>& tiedPoints ) const = 0;
/**
* return Director name
*/
virtual QString name() const = 0;
};
#endif //GRAPHDIRECTOR