1 #ifndef CubeDataThreadTester_h 2 #define CubeDataThreadTester_h 6 template<
typename T>
class QList;
7 template<
typename A,
typename B>
struct QPair;
64 int endSample,
int endLine,
int band,
void *caller);
79 int endSample,
int endLine,
int band,
void *caller);
CubeDataThread * p_cubeDataThread
The data thread being tested.
void WriteCubeTest3BreakDeadlock()
This test breaks the deadlock caused by the third write test.
void ReadBrick(void *requester, int cubeId, const Isis::Brick *data)
This is called when a brick is read.
void RequestReadCube(int cubeId, int startSample, int startLine, int endSample, int endLine, int band, void *caller)
Ask for a brick for reading.
Buffer for containing a three dimensional section of an image.
int NumberOfTestsDone()
Returns the number of tests done (testing methods count as several)
bool p_notifyDone
True if we will notify done on the next brick received for R/W.
void ReadCubeTest(int)
This tests a basic read.
CubeDataThreadTester(CubeDataThread *)
This initializes a CubeDataThreadTester.
void NotifyChangeTest(int)
This test tests this automatic change notifications.
void BrickChanged(int cubeId, const Isis::Brick *data)
This is called when a brick is written.
void ReadWriteBrick(void *requester, int cubeId, Isis::Brick *data)
This is called when a brick is given for R/W.
void WriteCubeTest2(int, int)
This tests two non-conflicting writes.
CubeDataThread * DataThread()
Returns the cube data thread being tested.
QVector< QPair< int, const Isis::Brick * > > * p_cachedDoneBricks
A list of bricks we haven't send the done signal for.
void RequestReadWriteCube(int cubeId, int startSample, int startLine, int endSample, int endLine, int band, void *caller)
Ask for a brick for reading and writing.
void ReadCubeTest3(int)
This tests an overlapping read.
void WriteCubeTest3(int)
This tests two conflicting* writes.
Encapsulation of Cube I/O with Change Notifications.
void ReadCubeTest2(int, int)
This tests two basic reads with no conflicts.
int p_numTestsDone
The count of completed tests.
void run()
This thread is centered completely around its event loop.
void Connect()
This connects this class' signals and slots with CubeDataThread's signals and slots.
void NotifyDoneWithData(int, const Isis::Brick *)
Let the cube data thread know we're no longer working with a particular brick.
virtual ~CubeDataThreadTester()
This cleans up the cube data thread.
bool p_execStarted
True if this thread is started.
Namespace for ISIS/Bullet specific routines.
void WriteCubeTest(int)
This tests a basic write.