Index: webrtc/modules/rtp_rtcp/test/BWEStandAlone/MatlabPlot.h |
diff --git a/webrtc/modules/rtp_rtcp/test/BWEStandAlone/MatlabPlot.h b/webrtc/modules/rtp_rtcp/test/BWEStandAlone/MatlabPlot.h |
deleted file mode 100644 |
index 7ded42d7329ec971476ead216056aceb363a7cb8..0000000000000000000000000000000000000000 |
--- a/webrtc/modules/rtp_rtcp/test/BWEStandAlone/MatlabPlot.h |
+++ /dev/null |
@@ -1,170 +0,0 @@ |
-/* |
- * Copyright (c) 2011 The WebRTC project authors. All Rights Reserved. |
- * |
- * Use of this source code is governed by a BSD-style license |
- * that can be found in the LICENSE file in the root of the source |
- * tree. An additional intellectual property rights grant can be found |
- * in the file PATENTS. All contributing project authors may |
- * be found in the AUTHORS file in the root of the source tree. |
- */ |
- |
-#ifndef WEBRTC_MODULES_RTP_RTCP_TEST_BWESTANDALONE_MATLABPLOT_H_ |
-#define WEBRTC_MODULES_RTP_RTCP_TEST_BWESTANDALONE_MATLABPLOT_H_ |
- |
-#include <list> |
-#include <string> |
-#include <vector> |
- |
-#include "webrtc/base/platform_thread.h" |
-#include "webrtc/typedefs.h" |
- |
-namespace webrtc { |
-class CriticalSectionWrapper; |
-class EventWrapper; |
-} |
- |
-//#define PLOT_TESTING |
- |
-#ifdef MATLAB |
- |
-typedef struct engine Engine; |
-typedef struct mxArray_tag mxArray; |
- |
-class MatlabLine |
-{ |
- friend class MatlabPlot; |
- |
-public: |
- MatlabLine(int maxLen = -1, const char *plotAttrib = NULL, const char *name = NULL); |
- ~MatlabLine(); |
- virtual void Append(double x, double y); |
- virtual void Append(double y); |
- void SetMaxLen(int maxLen); |
- void SetAttribute(char *plotAttrib); |
- void SetName(char *name); |
- void Reset(); |
- virtual void PurgeOldData() {}; |
- |
- void UpdateTrendLine(MatlabLine * sourceData, double slope, double offset); |
- |
- double xMin(); |
- double xMax(); |
- double yMin(); |
- double yMax(); |
- |
-protected: |
- void GetPlotData(mxArray** xData, mxArray** yData); |
- std::string GetXName(); |
- std::string GetYName(); |
- std::string GetPlotString(); |
- std::string GetRefreshString(); |
- std::string GetLegendString(); |
- bool hasLegend(); |
- std::list<double> _xData; |
- std::list<double> _yData; |
- mxArray* _xArray; |
- mxArray* _yArray; |
- int _maxLen; |
- std::string _plotAttribute; |
- std::string _name; |
-}; |
- |
- |
-class MatlabTimeLine : public MatlabLine |
-{ |
-public: |
- MatlabTimeLine(int horizonSeconds = -1, const char *plotAttrib = NULL, const char *name = NULL, |
- int64_t refTimeMs = -1); |
- ~MatlabTimeLine() {}; |
- void Append(double y); |
- void PurgeOldData(); |
- int64_t GetRefTime(); |
- |
-private: |
- int64_t _refTimeMs; |
- int _timeHorizon; |
-}; |
- |
- |
-class MatlabPlot |
-{ |
- friend class MatlabEngine; |
- |
-public: |
- MatlabPlot(); |
- ~MatlabPlot(); |
- |
- int AddLine(int maxLen = -1, const char *plotAttrib = NULL, const char *name = NULL); |
- int AddTimeLine(int maxLen = -1, const char *plotAttrib = NULL, const char *name = NULL, |
- int64_t refTimeMs = -1); |
- int GetLineIx(const char *name); |
- void Append(int lineIndex, double x, double y); |
- void Append(int lineIndex, double y); |
- int Append(const char *name, double x, double y); |
- int Append(const char *name, double y); |
- int Length(char *name); |
- void SetPlotAttribute(char *name, char *plotAttrib); |
- void Plot(); |
- void Reset(); |
- void SmartAxis(bool status = true) { _smartAxis = status; }; |
- void SetFigHandle(int handle); |
- void EnableLegend(bool enable) { _legendEnabled = enable; }; |
- |
- bool TimeToPlot(); |
- void Plotting(); |
- void DonePlotting(); |
- void DisablePlot(); |
- |
- int MakeTrend(const char *sourceName, const char *trendName, double slope, double offset, const char *plotAttrib = NULL); |
- |
-#ifdef PLOT_TESTING |
- int64_t _plotStartTime; |
- int64_t _plotDelay; |
-#endif |
- |
-private: |
- void UpdateData(Engine* ep); |
- bool GetPlotCmd(std::ostringstream & cmd, Engine* ep); |
- void GetPlotCmd(std::ostringstream & cmd); // call inside crit sect |
- void GetRefreshCmd(std::ostringstream & cmd); // call inside crit sect |
- void GetLegendCmd(std::ostringstream & cmd); |
- bool DataAvailable(); |
- |
- std::vector<MatlabLine *> _line; |
- int _figHandle; |
- bool _smartAxis; |
- double _xlim[2]; |
- double _ylim[2]; |
- webrtc::CriticalSectionWrapper *_critSect; |
- bool _timeToPlot; |
- bool _plotting; |
- bool _enabled; |
- bool _firstPlot; |
- bool _legendEnabled; |
- webrtc::EventWrapper* _donePlottingEvent; |
-}; |
- |
- |
-class MatlabEngine |
-{ |
-public: |
- MatlabEngine(); |
- ~MatlabEngine(); |
- |
- MatlabPlot * NewPlot(MatlabPlot *newPlot); |
- void DeletePlot(MatlabPlot *plot); |
- |
-private: |
- static bool PlotThread(void *obj); |
- |
- std::vector<MatlabPlot *> _plots; |
- webrtc::CriticalSectionWrapper *_critSect; |
- webrtc::EventWrapper *_eventPtr; |
- rtc::scoped_ptr<rtc::PlatformThread> _plotThread; |
- bool _running; |
- int _numPlots; |
-}; |
- |
-#endif //MATLAB |
- |
-#endif // WEBRTC_MODULES_RTP_RTCP_TEST_BWESTANDALONE_MATLABPLOT_H_ |