USGS

Isis 3.0 Object Programmers' Reference

Home

CubeDataThreadTester.h
1 #ifndef CubeDataThreadTester_h
2 #define CubeDataThreadTester_h
3 
4 #include <QThread>
5 
6 template<typename T> class QList;
7 template<typename A, typename B> class QPair;
8 
9 namespace Isis {
10  class Brick;
11  class CubeDataThread;
12 
18  class CubeDataThreadTester : public QThread {
19  Q_OBJECT
20 
21  public:
23  virtual ~CubeDataThreadTester();
24 
27  return p_numTestsDone;
28  }
29 
32  return p_cubeDataThread;
33  }
34 
35  void Connect();
36  void ReadCubeTest(int);
37  void ReadCubeTest2(int, int);
38  void ReadCubeTest3(int);
39  void WriteCubeTest(int);
40  void WriteCubeTest2(int, int);
41  void WriteCubeTest3(int);
43  void NotifyChangeTest(int);
44 
45  public slots:
46  void ReadBrick(void *requester, int cubeId, const Isis::Brick *data);
47  void ReadWriteBrick(void *requester, int cubeId, Isis::Brick *data);
48  void BrickChanged(int cubeId, const Isis::Brick *data);
49 
50  signals:
62  void RequestReadCube(int cubeId, int startSample, int startLine,
63  int endSample, int endLine, int band, void *caller);
64 
65 
77  void RequestReadWriteCube(int cubeId, int startSample, int startLine,
78  int endSample, int endLine, int band, void *caller);
79 
80 
85  void NotifyDoneWithData(int, const Isis::Brick *);
86 
87  private:
89  void run();
90 
93 
96 
99 
102 
104  QVector< QPair<int, const Isis::Brick *> > * p_cachedDoneBricks;
105  };
106 
107 };
108 
109 
110 #endif