Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

LinearTransform.h

Go to the documentation of this file.
00001 /* -*- mode: c++ -*- */
00002 
00013 #ifndef _LinearTransform_H_
00014 #define _LinearTransform_H_
00015 
00016 #include "UnaryTransform.h"
00017 
00018 class AxisModelBase;
00019 class AxisTick;
00020 
00027 class MDL_HIPPOPLOT_API LinearTransform : public UnaryTransform
00028 {
00029 private:
00030 
00033   std::vector < AxisTick > m_ticks;
00034 
00035 void setFirstTick( AxisModelBase & );
00036   void setTickStep( AxisModelBase & );
00037   const std::vector < AxisTick > &  
00038   genTicks ( AxisModelBase & );
00039 
00040 public:
00041 
00043   LinearTransform ();
00044 
00046   LinearTransform ( const LinearTransform & );
00047 
00049   virtual ~LinearTransform();
00050 
00052 #ifdef CLONE_DEFECT
00053   virtual TransformBase *   clone () const;
00054 #else
00055   virtual LinearTransform * clone () const;
00056 #endif
00057 
00058   bool isLinear () const;
00059 
00061   virtual void transform ( double & x ) const;
00062 
00064   virtual void inverseTransform ( double & x ) const;
00065 
00067   virtual void transform ( std::vector< double > & x ) const;
00068 
00072   virtual void  validate ( Range & ) const;
00073   
00076   virtual const std::vector < AxisTick > &
00077   setTicks ( AxisModelBase & axis );
00078 
00082   virtual const Range & adjustValues ( AxisModelBase & axis,
00083                                        const Range & limit );
00084   
00085 };
00086 
00087 #endif // _LinearTransform_H_

Generated for HippoDraw-1.14.8.5 by doxygen 1.4.3