Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

sxy_series.h

Go to the documentation of this file.
00001 
00002 #ifndef series_h
00003 #define series_h
00004 
00005 // =======================================================================
00006 
00007 #include <xy.h>
00008 #include <sxy_vector.h>
00009 
00010 
00011 // =======================================================================
00012 
00013 class SXYSeries : public XYSeries {
00014 
00015  public:
00016    
00017    // Tratamento numérico
00018    static unsigned int isValidNumber(double n);
00019    static double getAnInvalidNumber(void);
00020 
00021    // Métodos do XY redefinidos pela classe. Troca da interface
00022    // de programação para os dois métodos virtuais puros. Isto
00023    // traz uma maior abstração nos acessos aos dados.
00024    void domain (double begin, double end);
00025    void domain (double* begin, double* end) const;
00026    xybool changPoint(unsigned int, double, double);
00027 
00028    unsigned int numPoints (void);
00029    xybool point (int n, double& x, double& y);
00030 
00031    // Métodos virtuais puros que redefinem a nova interface
00032    // de acesso aos dados.
00033    virtual unsigned int getNumPoints(void) = 0;
00034    virtual unsigned int getPoint(unsigned int n, double& x, double& y) = 0;
00035    virtual void writePoint(unsigned int n, double x, double y);
00036 
00037    // Utilitários
00038    virtual void getLimits(double& xmin, double& xmax, 
00039          double& ymin, double& ymax);
00040 
00041    static void getSeveralLimits( SXYVector<SXYSeries*> *vector, 
00042          double& xmin, double& xmax, double& ymin, double& ymax );
00043 
00044    // Construtor e destrutor 
00045    SXYSeries();
00046    virtual ~SXYSeries();
00047 
00048 };
00049 
00050 
00051 #endif
00052 

SXY
Tecgraf / PUC-Rio - Computer Graphics Technology Group