00001 #ifndef _QWIENERDATA_HH_ 00002 #define _QWIENERDATA_HH_ 00003 00011 #include "QEventData.hh" 00012 00013 #include "QVector.hh" 00014 00015 class QWienerDataR; 00016 class MWienerFilter; 00017 00018 Q_BEGIN_NAMESPACE 00019 00020 class QWienerDataBase : public QEventData { 00021 00022 public: 00023 00025 virtual ~QWienerDataBase(); 00026 00028 const QVector& GetAmplitudes() const {return fAmplitudes;} 00030 const QVector& GetPositions() const {return fPositions;} 00031 00032 protected: 00033 00035 QWienerDataBase(); 00036 00038 void Clear(); 00039 00041 QVector& GetAmplitudes() {return fAmplitudes;} 00043 QVector& GetPositions() {return fPositions;} 00044 00045 private: 00046 00048 QVector fAmplitudes; 00050 QVector fPositions; 00051 00052 friend class ::QWienerDataR; 00053 }; 00054 00062 class QWienerData : public QWienerDataBase { 00063 00064 public: 00065 00067 QWienerData(); 00068 00070 ~QWienerData(); 00071 00072 private: 00073 00074 friend class ::MWienerFilter; 00075 00076 }; 00077 00078 Q_END_NAMESPACE 00079 00080 #endif