2 //=============================================================================
6 * @author Carlos O'Ryan (coryan@cs.wustl.edu)
8 //=============================================================================
11 #ifndef EC_INVERSION_H
12 #define EC_INVERSION_H
16 #if !defined (ACE_LACKS_PRAGMA_ONCE)
18 #endif /* ACE_LACKS_PRAGMA_ONCE */
23 * @brief Measure priority inversions in the EC.
25 class EC_Inversion
: public EC_Driver
31 // = The EC_Driver methods
33 * Parse the arguments, but override the number of consumers.
34 * The options controlling the event types are ignored, and only two
35 * consumers are created.
37 int parse_args (int &argc
, ACE_TCHAR
*argv
[]);
40 * In this test there are two consumers, the high priority consumer
41 * receives only events from a single high priority supplier. The
42 * other consumer receives events from a set of low priority
45 virtual void connect_consumers (void);
46 virtual void connect_suppliers (void);
48 /// Activate the suppliers at different priorities
49 virtual void activate_tasks (void);
52 /// If set then both low priority and high priority suppliers
53 /// generate the same events.
57 #endif /* EC_INVERSION_H */