diff options
Diffstat (limited to 'ACE/examples/ASX/UPIPE_Event_Server/Options.h')
-rw-r--r-- | ACE/examples/ASX/UPIPE_Event_Server/Options.h | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/ACE/examples/ASX/UPIPE_Event_Server/Options.h b/ACE/examples/ASX/UPIPE_Event_Server/Options.h new file mode 100644 index 00000000000..1acad4b9d1f --- /dev/null +++ b/ACE/examples/ASX/UPIPE_Event_Server/Options.h @@ -0,0 +1,88 @@ +/* -*- C++ -*- */ +// $Id$ + +// Option manager for Event Server. + +#ifndef DEVICE_OPTIONS_H +#define DEVICE_OPTIONS_H + +#include "ace/config-all.h" + +#if !defined (ACE_LACKS_PRAGMA_ONCE) +# pragma once +#endif /* ACE_LACKS_PRAGMA_ONCE */ + +#include "ace/Profile_Timer.h" + +#if defined (ACE_HAS_THREADS) + +class Options +{ +public: + Options (void); + ~Options (void); + void parse_args (int argc, ACE_TCHAR *argv[]); + + void stop_timer (void); + void start_timer (void); + + void thr_count (size_t count); + size_t thr_count (void); + + void initial_queue_length (size_t length); + size_t initial_queue_length (void); + + void high_water_mark (size_t size); + size_t high_water_mark (void); + + void low_water_mark (size_t size); + size_t low_water_mark (void); + + void message_size (size_t size); + size_t message_size (void); + + void iterations (size_t n); + size_t iterations (void); + + void t_flags (long flag); + long t_flags (void); + + void supplier_port (const ACE_TCHAR *port); + const ACE_TCHAR *supplier_port (void); + + void consumer_port (const ACE_TCHAR *port); + const ACE_TCHAR *consumer_port (void); + + void supplier_file (const ACE_TCHAR *file); + const ACE_TCHAR *supplier_file (void); + + void consumer_file (const ACE_TCHAR *file); + const ACE_TCHAR *consumer_file (void); + + int debug (void); + int verbose (void); + + void print_results (void); + +private: + ACE_Profile_Timer itimer_; // Time the process. + size_t thr_count_; // Number of threads to spawn. + long t_flags_; // Flags to thr_create(). + size_t high_water_mark_; // ACE_Task high water mark. + size_t low_water_mark_; // ACE_Task low water mark. + size_t message_size_; // Size of a message. + size_t initial_queue_length_; // Initial number of items in the queue. + size_t iterations_; // Number of iterations to run the test program. + int debugging_; // Extra debugging info. + int verbosity_; // Extra verbose messages. + const ACE_TCHAR *consumer_port_; // Port that the Consumer_Router is using. + const ACE_TCHAR *supplier_port_; // Port that the Supplier_Router is using. + const ACE_TCHAR *consumer_file_; // file that the Consumer_Router is using. + const ACE_TCHAR *supplier_file_; // file that the Supplier_Router is using. +}; + +extern Options options; + +#include "Options.i" +#endif /* ACE_HAS_THREADS */ +#endif /* DEVICE_OPTIONS_H */ |