SpikeStream Application Library  0.2
AbstractSpectrogramData.h
Go to the documentation of this file.
00001 #ifndef ABSTRACTSPECTROGRAMDATA_H
00002 #define ABSTRACTSPECTROGRAMDATA_H
00003 
00004 //SpikeStream includes
00005 #include "AnalysisInfo.h"
00006 using namespace spikestream;
00007 
00008 //Qwt includes
00009 #include "qwt_raster_data.h"
00010 
00011 //Qt includes
00012 #include <QHash>
00013 
00014 namespace spikestream {
00015 
00017         class AbstractSpectrogramData : public QwtRasterData {
00018                 public:
00019                         AbstractSpectrogramData(const AnalysisInfo& analysisInfo);
00020                         virtual ~AbstractSpectrogramData();
00021                         virtual QwtRasterData *copy() const = 0;
00022                         virtual QwtDoubleInterval range() const;
00023                         virtual void showAllTimeSteps(bool show);
00024                         virtual void showSelectedTimeStep(unsigned int timeStep);
00025                         virtual void setShowNeuronIDs(bool show);
00026                         virtual double value(double x, double y) const;
00027 
00028                 protected:
00029                         //=======================  VARIABLES  =========================
00031                         AnalysisInfo analysisInfo;
00032 
00036                         QHash<unsigned int, QHash<unsigned int, QHash<unsigned int, double> > > timeStepDataMap;
00037 
00039                         unsigned int minNeuronID;
00040 
00042                         unsigned int maxNeuronID;
00043 
00045                         int selectedTimeStep;
00046 
00048                         bool allTimeSteps;
00049 
00051                         unsigned int allTimeStepsKey;
00052 
00054                         bool showNeuronIDs;
00055 
00056 
00057                         //=======================  METHODS  ===========================
00058                         void addAllTimeStepsMap(const QList<unsigned int>& neurIDList);
00059                         void addTimeStep(unsigned int timeStep, const QList<unsigned int>& neurIDList);
00060                         virtual void loadData() = 0;
00061                         virtual void printData();
00062                         virtual void reset();
00063         };
00064 
00065 }
00066 
00067 
00068 #endif//ABSTRACTSPECTROGRAMDATA_H
00069 
 All Classes Files Functions Variables Typedefs Friends Defines