00001
00002
00016 class DisplayController
00017 {
00018 %TypeHeaderCode
00019 #include "controllers/DisplayController.h"
00020 #include "datasrcs/NTuple.h"
00021 #include "datareps/DataRepException.h"
00022 #include "plotters/PlotterBase.h"
00023 %End
00024
00025
00026 private:
00027
00028 DisplayController();
00029
00030 public:
00031
00032 ~DisplayController ();
00033 static DisplayController * instance ();
00034
00035 PlotterBase * createDisplay ( const std::string &,
00036 const DataSource &,
00037 const std::vector<std::string> & )
00038 const throw ( DataRepException, DataSourceException ) /Factory/;
00039
00040 PlotterBase * createDisplay ( const std::string & )
00041 throw ( DataRepException );
00042
00043 DataRep * addDataRep ( PlotterBase *, const std::string,
00044 const DataSource *,
00045 const std::vector < std::string > & )
00046 throw ( DataRepException, DataSourceException );
00047
00048 DataRep * addDataRepStacked ( PlotterBase *, const std::string,
00049 const DataSource *,
00050 const std::vector < std::string > & )
00051 throw ( DataRepException, DataSourceException );
00052
00053 int activeDataRepIndex ( const PlotterBase * ) const;
00054 void setActiveDataRepIndex ( PlotterBase *, int );
00055
00056 void setRepresentation ( PlotterBase *, const std::string );
00057
00058 LineDataRep * addLineRep ( PlotterBase *, const std::string &, double );
00059
00060 const std::vector < std::string > & getDisplayTypes () const;
00061 const std::vector < std::string > & getTextTypes () const;
00062
00063 const std::vector < std::string > & getValueTransformTypes () const;
00064 void setValueTransform ( PlotterBase *, int );
00065 void setBinWidth ( PlotterBase *, const std::string &, double );
00066 void setLog ( PlotterBase *, const std::string &, bool );
00067 double getAverage ( const PlotterBase *, std::string &, int = 0 );
00068 double getRMS ( const PlotterBase *, std::string &, int = 0 );
00069 int getNumberOfEntries ( const PlotterBase *, int = 0 );
00070
00071 };