00001 /* -*- mode: c++ -*- */ 00002 00014 #ifndef _TransformBase_H_ 00015 #define _TransformBase_H_ 00016 00017 #include "pattern/libhippo.h" 00018 00019 #include <string> 00020 00021 class Range; 00022 00033 class MDL_HIPPOPLOT_API TransformBase 00034 { 00035 00036 protected: 00037 00039 std::string m_name; 00040 00042 TransformBase (); 00043 00045 TransformBase ( const TransformBase & t ); 00046 00047 public: 00048 00050 virtual ~TransformBase(); 00051 00053 const std::string & name () const; 00054 00056 virtual TransformBase * clone () const = 0; 00057 00059 virtual double aspectRatio () const; 00060 00061 }; 00062 00063 #endif // _TransformBase_H_