Main Page   Namespace List   Alphabetical List   Compound List   File List   Namespace Members   Compound Members  

AIDA_PlotterStyle.h

Go to the documentation of this file.
00001 // -*- C++ -*-
00002 
00004 //                                                                     //
00005 //  This library is free software; you can redistribute it and/or      //
00006 //  modify it under the terms of the GNU Lesser General Public         //
00007 //  License as published by the Free Software Foundation; either       //
00008 //  version 2.1 of the License, or (at your option) any later version. //
00009 //                                                                     //
00010 //  This library is distributed in the hope that it will be useful,    //
00011 //  but WITHOUT ANY WARRANTY; without even the implied warranty of     //
00012 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU   //
00013 //  Lesser General Public License for more details.                    //
00014 //                                                                     //
00015 //  You should have received a copy of the GNU Lesser General Public   //
00016 //  License along with this library (see file COPYING); if not, write  //
00017 //  to the Free Software Foundation, Inc., 59 Temple Place, Suite      //
00018 //  330, Boston, MA 02111-1307 USA, or contact the author.             //
00019 //                                                                     //
00021 
00030 // 
00031 // Created by user sang on Sun Oct  6 17:48:39 2002
00032 // 
00033 
00034 #ifndef ANAPHE_AIDA_PLOTTERSTYLE_H
00035 #define ANAPHE_AIDA_PLOTTERSTYLE_H
00036 
00037 
00038 #include "AIDA/IPlotterStyle.h"
00039 
00040 
00041 
00042 namespace Anaphe {
00043   // Concrete classes from GracePlotter
00044   class Style;
00045 }
00046 
00047 
00048 
00049 namespace Anaphe {
00050 namespace AIDA_Plotter_Grace {
00051 
00052 
00053 
00054 
00059 class AIDA_PlotterStyle : public AIDA::IPlotterStyle
00060 {
00061 public:
00062   AIDA_PlotterStyle();
00063   AIDA_PlotterStyle(Style*, bool ownership = true);
00064   virtual ~AIDA_PlotterStyle();
00065 
00066 private:
00067   AIDA_PlotterStyle(const AIDA_PlotterStyle&);
00068   AIDA_PlotterStyle& operator=(const AIDA_PlotterStyle&);
00069 
00070 public:
00071   virtual void reset();
00072   virtual bool setParameter(const std::string& paramName, const std::string& options);
00073   virtual std::vector<std::string> availableParameters() const;
00074   virtual std::string parameterValue(const std::string& paramName) const;
00075   virtual std::vector<std::string> availableParameterOptions(const std::string& paramName) const;
00076   virtual AIDA::IDataStyle& dataStyle();
00077   virtual AIDA::IAxisStyle& xAxisStyle();
00078   virtual AIDA::IAxisStyle& yAxisStyle();
00079   virtual AIDA::IAxisStyle& zAxisStyle();
00080   virtual AIDA::ITitleStyle& titleStyle();
00081   virtual AIDA::IInfoStyle& infoStyle();
00082   virtual bool setDataStyle(const AIDA::IDataStyle& dataStyle);
00083   virtual bool setAxisStyleX(const AIDA::IAxisStyle& xAxisStyle);
00084   virtual bool setAxisStyleY(const AIDA::IAxisStyle& yAxisStyle);
00085   virtual bool setAxisStyleZ(const AIDA::IAxisStyle& zAxisStyle);
00086   virtual bool setTitleStyle(const AIDA::ITitleStyle& textStyle);
00087   virtual bool setInfoStyle(const AIDA::IInfoStyle& infoStyle);
00088 
00089   Style* theRep();
00090   void setRep(Style&, bool owns);
00091 
00092 private:
00093   void crisis() const;
00094 
00095 private:
00096   Style* rep;
00097   bool ownRep;
00098 
00099 };
00100 
00101 
00102 } // end of namespace AIDA_Plotter_Grace
00103 } // end of namespace Anaphe
00104 
00105 
00106 #endif // ANAPHE_AIDA_PLOTTERSTYLE_H
00107 

Generated on Tue Jan 28 13:30:45 2003 for Anaphe_AIDA_Plotter_Grace by doxygen1.2.16