xref: /xnu-11215.61.5/tools/tests/perf_index/PerfIndex_COPS_Module/PITest.h (revision 4f1223e81cd707a65cc109d0b8ad6653699da3c4)
1*4f1223e8SApple OSS Distributions //
2*4f1223e8SApple OSS Distributions //  PITest.h
3*4f1223e8SApple OSS Distributions //  PerfIndex
4*4f1223e8SApple OSS Distributions //
5*4f1223e8SApple OSS Distributions //  Created by Mark Hamilton on 8/21/13.
6*4f1223e8SApple OSS Distributions //
7*4f1223e8SApple OSS Distributions //
8*4f1223e8SApple OSS Distributions 
9*4f1223e8SApple OSS Distributions #import <Foundation/Foundation.h>
10*4f1223e8SApple OSS Distributions #import "PerfIndex.h"
11*4f1223e8SApple OSS Distributions 
12*4f1223e8SApple OSS Distributions @interface PITest : NSObject <HGTest>
13*4f1223e8SApple OSS Distributions {
14*4f1223e8SApple OSS Distributions 	int (*setup_func)(int, long long, int, void**);
15*4f1223e8SApple OSS Distributions 	int (*execute_func)(int, int, long long, int, void**);
16*4f1223e8SApple OSS Distributions 	void (*cleanup_func)(int, long long);
17*4f1223e8SApple OSS Distributions 
18*4f1223e8SApple OSS Distributions 	long long length;
19*4f1223e8SApple OSS Distributions 	int numThreads;
20*4f1223e8SApple OSS Distributions 	int readyThreadCount;
21*4f1223e8SApple OSS Distributions 	int testArgc;
22*4f1223e8SApple OSS Distributions 	void** testArgv;
23*4f1223e8SApple OSS Distributions 	pthread_mutex_t readyThreadCountLock;
24*4f1223e8SApple OSS Distributions 	pthread_cond_t threadsReadyCvar;
25*4f1223e8SApple OSS Distributions 	pthread_cond_t startCvar;
26*4f1223e8SApple OSS Distributions 	pthread_t* threads;
27*4f1223e8SApple OSS Distributions }
28*4f1223e8SApple OSS Distributions 
29*4f1223e8SApple OSS Distributions @property NSString* testName;
30*4f1223e8SApple OSS Distributions 
31*4f1223e8SApple OSS Distributions - (BOOL)setup;
32*4f1223e8SApple OSS Distributions - (BOOL)execute;
33*4f1223e8SApple OSS Distributions - (void)cleanup;
34*4f1223e8SApple OSS Distributions 
35*4f1223e8SApple OSS Distributions 
36*4f1223e8SApple OSS Distributions @end
37