comparison data/fft/FFTDataServer.h @ 1057:5c5d4863b428 tonioni

Merge from cxx11 branch
author Chris Cannam
date Mon, 23 Mar 2015 11:26:28 +0000
parents 1a73618b0b67
children 027d8b943be5
comparison
equal deleted inserted replaced
1056:c4898e57eea5 1057:5c5d4863b428
47 int windowIncrement, 47 int windowIncrement,
48 int fftSize, 48 int fftSize,
49 bool polar, 49 bool polar,
50 StorageAdviser::Criteria criteria = 50 StorageAdviser::Criteria criteria =
51 StorageAdviser::NoCriteria, 51 StorageAdviser::NoCriteria,
52 int fillFromColumn = 0); 52 sv_frame_t fillFromFrame = 0);
53 53
54 static FFTDataServer *getFuzzyInstance(const DenseTimeValueModel *model, 54 static FFTDataServer *getFuzzyInstance(const DenseTimeValueModel *model,
55 int channel, 55 int channel,
56 WindowType windowType, 56 WindowType windowType,
57 int windowSize, 57 int windowSize,
58 int windowIncrement, 58 int windowIncrement,
59 int fftSize, 59 int fftSize,
60 bool polar, 60 bool polar,
61 StorageAdviser::Criteria criteria = 61 StorageAdviser::Criteria criteria =
62 StorageAdviser::NoCriteria, 62 StorageAdviser::NoCriteria,
63 int fillFromColumn = 0); 63 sv_frame_t fillFromFrame = 0);
64 64
65 static void claimInstance(FFTDataServer *); 65 static void claimInstance(FFTDataServer *);
66 static void releaseInstance(FFTDataServer *); 66 static void releaseInstance(FFTDataServer *);
67 67
68 static void modelAboutToBeDeleted(Model *); 68 static void modelAboutToBeDeleted(Model *);
106 return getMagnitudeAt(x, y) > threshold; 106 return getMagnitudeAt(x, y) > threshold;
107 } 107 }
108 108
109 QString getError() const; 109 QString getError() const;
110 int getFillCompletion() const; 110 int getFillCompletion() const;
111 int getFillExtent() const; 111 sv_frame_t getFillExtent() const;
112 112
113 private: 113 private:
114 FFTDataServer(QString fileBaseName, 114 FFTDataServer(QString fileBaseName,
115 const DenseTimeValueModel *model, 115 const DenseTimeValueModel *model,
116 int channel, 116 int channel,
118 int windowSize, 118 int windowSize,
119 int windowIncrement, 119 int windowIncrement,
120 int fftSize, 120 int fftSize,
121 bool polar, 121 bool polar,
122 StorageAdviser::Criteria criteria, 122 StorageAdviser::Criteria criteria,
123 int fillFromColumn = 0); 123 sv_frame_t fillFromFrame = 0);
124 124
125 virtual ~FFTDataServer(); 125 virtual ~FFTDataServer();
126 126
127 FFTDataServer(const FFTDataServer &); // not implemented 127 FFTDataServer(const FFTDataServer &); // not implemented
128 FFTDataServer &operator=(const FFTDataServer &); // not implemented 128 FFTDataServer &operator=(const FFTDataServer &); // not implemented
239 fftf_plan m_fftPlan; 239 fftf_plan m_fftPlan;
240 240
241 class FillThread : public Thread 241 class FillThread : public Thread
242 { 242 {
243 public: 243 public:
244 FillThread(FFTDataServer &server, int fillFromColumn) : 244 FillThread(FFTDataServer &server, sv_frame_t fillFromFrame) :
245 m_server(server), m_extent(0), m_completion(0), 245 m_server(server), m_extent(0), m_completion(0),
246 m_fillFrom(fillFromColumn) { } 246 m_fillFrom(fillFromFrame) { }
247 247
248 int getExtent() const { return m_extent; } 248 sv_frame_t getExtent() const { return m_extent; }
249 int getCompletion() const { return m_completion ? m_completion : 1; } 249 int getCompletion() const { return m_completion ? m_completion : 1; }
250 QString getError() const { return m_error; } 250 QString getError() const { return m_error; }
251 virtual void run(); 251 virtual void run();
252 252
253 protected: 253 protected:
254 FFTDataServer &m_server; 254 FFTDataServer &m_server;
255 int m_extent; 255 sv_frame_t m_extent;
256 int m_completion; 256 int m_completion;
257 int m_fillFrom; 257 sv_frame_t m_fillFrom;
258 QString m_error; 258 QString m_error;
259 }; 259 };
260 260
261 bool m_exiting; 261 bool m_exiting;
262 bool m_suspended; 262 bool m_suspended;