00001
00002
00014 #ifndef _CutRangeRep_H_
00015 #define _CutRangeRep_H_
00016
00017 #include "PointRepBase.h"
00018
00019 #include <vector>
00020
00021 class TupleCut;
00022
00023
00030 class MDL_HIPPOPLOT_API CutRangeRep : public PointRepBase
00031 {
00032 private:
00033
00036 void drawNormalRange ( const Range & x_range,
00037 const Range & y_range,
00038 const std::vector < TupleCut > & cuts,
00039 const TransformBase & tb,
00040 ViewBase & view );
00041
00044 void drawInvertedRange1D ( const Range & x_range,
00045 const Range & y_range,
00046 const std::vector < TupleCut > & cuts,
00047 const TransformBase & tb,
00048 ViewBase & view );
00049
00052 void drawInvertedRange2D ( const Range & x_range,
00053 const Range & y_range,
00054 const std::vector < TupleCut > & cuts,
00055 const TransformBase & transform,
00056 ViewBase & view );
00057
00058 public:
00059
00061 CutRangeRep( );
00062
00064 CutRangeRep( const CutRangeRep & point_rep );
00065
00068 virtual RepBase * clone();
00069
00073 void drawRange ( const Range & x_range,
00074 const Range & y_range,
00075 const std::vector < TupleCut > & cuts,
00076 const TransformBase & tb,
00077 ViewBase & view );
00078
00079 virtual void drawProjectedValues ( const DataSource * ntuple,
00080 TransformBase * transform,
00081 ViewBase * view );
00082 };
00083
00084 #endif // _CutRangeRep_H_