Anaphe Home Page Reference Documentation

Main Page     Namespaces     Classes     Source Code    

IPlotter.h

Go to the documentation of this file.
00001 // 
00002 // Copyright (C) CERN, Geneva 
00003 // 
00004 // header file for class IVector 
00005 // Created by: Andreas Pfeiffer  at ????????
00006 // 
00007 // Last update: 
00008 //              
00009 //   ap, 16-jan-01 : removed default arguments
00010 // 
00011 
00012 #ifndef INTERFACES_IPLOTTER_H
00013 #define INTERFACES_IPLOTTER_H 1
00014 
00015 #include <iostream>
00016 
00017 #ifndef ANAPHE_NO_NAMESPACE
00018 namespace Anaphe {
00019 #endif
00020 
00021   class IVector;
00022   class IScatter2D;
00023 
00024   class IPlotter {
00025 
00026   public:
00027     virtual ~IPlotter()   { /* nop */; }
00028 
00029   public:
00030     virtual void refresh() = 0;
00031     virtual void reset() = 0;
00032 
00033     virtual void plot(IVector *v1, IVector *v2) = 0;
00034     virtual void plot(IScatter2D *scat) = 0;
00035     virtual void overlay(IVector *v2, int selZone=-1) = 0;
00036 
00037     virtual void psPrint(const char *file) = 0;
00038     virtual void makePicture(const char *file) = 0;
00039 
00040     virtual void createRegion(double x, double y, double w, double h) = 0;
00041     virtual void zone(int, int, int iSel, const char *opt) = 0;
00042 
00043     virtual void zoneOption(const char *opt, const  char *val) = 0;
00044     virtual void dataOption(const char *opt, const  char *val) = 0;
00045 
00046     virtual void xAxisOption(const char *opt=0, const  char *val=0) = 0;
00047     virtual void yAxisOption(const char *opt=0, const  char *val=0) = 0;
00048 
00049     virtual void dataStyle(const char *opt, const  char *val) = 0;
00050     virtual void textStyle(const char *opt, const  char *val) = 0;
00051 
00052 #ifdef AIDA_DONT_USE_STD
00053     virtual void listOptions(     ostream& os =      cout) = 0;
00054 #else
00055     virtual void listOptions(std::ostream& os = std::cout) = 0;
00056 #endif
00057 
00058     virtual void pageTitle(const char *title) = 0;
00059     virtual void zoneTitle(const char *title, int selZone=1) = 0;
00060 
00061     // Add text to page
00062     virtual void pageText(double xC, double yC, const char *text) = 0;
00063     // Add text to zone
00064     virtual void zoneText(double xC, double yC, const char *text, int selZone=1) = 0;
00065 
00066     virtual void setMinMaxX(double xMin, double xMax, int selZone=1) = 0;
00067     virtual void setMinMaxY(double yMin, double yMax, int selZone=1) = 0;
00068 
00069     virtual void resetMinMax() = 0;
00070 
00071     virtual void interact() = 0;
00072   };
00073 
00074 #ifndef ANAPHE_NO_NAMESPACE
00075 }; // end namespace Anaphe
00076 #endif 
00077 
00078 extern "C" {
00079   Anaphe::IPlotter * createIPlotter();
00080 }
00081 
00082 #endif   /* INTERFACES_IPLOTTER_H */


Anaphe documentation generated by Doxygen (www.doxygen.org)