00001
00002
00014 #ifndef _Map2Projector_H_
00015 #define _Map2Projector_H_
00016
00017 #include "NTupleProjector.h"
00018
00019 namespace hippodraw {
00020
00029 class MDL_HIPPOPLOT_API Map2Projector : public NTupleProjector
00030 {
00031
00033 std::string m_x_option;
00034
00036 std::string m_y_option;
00037
00038 protected:
00039
00041 Map2Projector ( const Map2Projector & projector );
00042
00048 virtual void changedNTuple();
00049
00051 virtual void addPointReps ();
00052
00053 public:
00054
00056 Map2Projector();
00057
00059 virtual ~Map2Projector();
00060
00063 ProjectorBase * clone();
00064
00068 virtual void setXErrorOption ( bool enable );
00069
00072 virtual void setYErrorOption ( bool enable );
00073
00076 virtual Range dataRangeOn ( hippodraw::Axes::Type ) const;
00077 virtual Range valueRange () const;
00078
00081 virtual double getPosOn ( hippodraw::Axes::Type axis ) const;
00082
00083 virtual DataSource * createNTuple () const;
00084 virtual void fillProjectedValues ( DataSource * ntuple,
00085 bool in_range = false ) const;
00086 virtual void prepareValues ();
00087
00088 virtual bool inRange ( int row ) const;
00089 };
00090
00091 }
00092
00093 #endif // _Map2Projector_H_