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