summaryrefslogtreecommitdiff
path: root/ACE/examples/Mem_Map/IO-tests/IO_Test.h
diff options
context:
space:
mode:
Diffstat (limited to 'ACE/examples/Mem_Map/IO-tests/IO_Test.h')
-rw-r--r--ACE/examples/Mem_Map/IO-tests/IO_Test.h100
1 files changed, 100 insertions, 0 deletions
diff --git a/ACE/examples/Mem_Map/IO-tests/IO_Test.h b/ACE/examples/Mem_Map/IO-tests/IO_Test.h
new file mode 100644
index 00000000000..3c130b32363
--- /dev/null
+++ b/ACE/examples/Mem_Map/IO-tests/IO_Test.h
@@ -0,0 +1,100 @@
+/* -*- C++ -*- */
+// $Id$
+
+/* Class hierarchy for the File I/O tests. */
+
+#include "ace/Profile_Timer.h"
+
+#if !defined (ACE_LACKS_PRAGMA_ONCE)
+# pragma once
+#endif /* ACE_LACKS_PRAGMA_ONCE */
+
+/* Base class for all the File I/O tests. */
+
+class IO_Test
+{
+public:
+
+ // Initialize the test name
+ IO_Test (const char *name,
+ ACE_Profile_Timer &tm);
+
+ // Destructor.
+ virtual ~IO_Test (void);
+
+ // Return the name of the test
+ const char *name (void);
+
+ // Execute the IO test (note this is a pure virtual function...)
+ virtual int run_test (int iterations,
+ FILE *input_fp,
+ FILE *output_fp) = 0;
+
+protected:
+ // Name of the test
+ const char *name_;
+
+ // Reference to a timer
+ ACE_Profile_Timer &tm_;
+};
+
+class Slow_Read_Write_Test : public IO_Test
+{
+public:
+ Slow_Read_Write_Test (const char *name,
+ ACE_Profile_Timer &tm);
+ virtual int run_test (int iterations,
+ FILE *input_fp,
+ FILE *output_fp);
+};
+
+class Stdio_Test : public IO_Test
+{
+public:
+ Stdio_Test (const char *name,
+ ACE_Profile_Timer &tm);
+ virtual int run_test (int iterations,
+ FILE *input_fp,
+ FILE *output_fp);
+};
+
+class Block_Read_Write_Test : public IO_Test
+{
+public:
+ Block_Read_Write_Test (const char *name,
+ ACE_Profile_Timer &tm);
+ virtual int run_test (int iterations,
+ FILE *input_fp,
+ FILE *output_fp);
+};
+
+class Block_Fread_Fwrite_Test : public IO_Test
+{
+public:
+ Block_Fread_Fwrite_Test (const char *name,
+ ACE_Profile_Timer &tm);
+ virtual int run_test (int iterations,
+ FILE *input_fp,
+ FILE *output_fp);
+};
+
+class Mmap1_Test : public IO_Test
+{
+public:
+ Mmap1_Test (const char *name,
+ ACE_Profile_Timer &tm);
+ virtual int run_test (int iterations,
+ FILE *input_fp,
+ FILE *output_fp);
+};
+
+class Mmap2_Test : public IO_Test
+{
+public:
+ Mmap2_Test (const char *name,
+ ACE_Profile_Timer &tm);
+ virtual int run_test (int iterations,
+ FILE *input_fp,
+ FILE *output_fp);
+};
+