summaryrefslogtreecommitdiffstats
path: root/private/oleutest/perform/cairole/tests/bm_nstg.hxx
diff options
context:
space:
mode:
Diffstat (limited to 'private/oleutest/perform/cairole/tests/bm_nstg.hxx')
-rw-r--r--private/oleutest/perform/cairole/tests/bm_nstg.hxx111
1 files changed, 111 insertions, 0 deletions
diff --git a/private/oleutest/perform/cairole/tests/bm_nstg.hxx b/private/oleutest/perform/cairole/tests/bm_nstg.hxx
new file mode 100644
index 000000000..0215d12e4
--- /dev/null
+++ b/private/oleutest/perform/cairole/tests/bm_nstg.hxx
@@ -0,0 +1,111 @@
+//+------------------------------------------------------------------------
+//
+// Microsoft Windows
+// Copyright (C) Microsoft Corporation, 1993.
+//
+// File: bm_nstg.hxx
+//
+// Contents: Nested storage test class definition
+//
+// Classes: CNestedStorageTest
+//
+// Functions:
+//
+// History: 09-June-94 t-vadims Created
+//
+//--------------------------------------------------------------------------
+
+#ifndef _BM_NSTG_HXX_
+#define _BM_NSTG_HXX_
+
+#include <bm_base.hxx>
+
+// Maximum allowed branching and nesting factors
+// Using both maximums at the same time is not recommended,
+// due to exponetial growth of time requirements
+#define MAX_BRANCHING 7
+#define MAX_NESTING 7
+
+class CNestedStorageTest : public CTestBase
+{
+public:
+ virtual TCHAR *Name ();
+ virtual SCODE Setup (CTestInput *input);
+ virtual SCODE Run ();
+ virtual SCODE Report (CTestOutput &OutputFile);
+ virtual SCODE Cleanup ();
+
+private:
+
+ ULONG m_ulIterations;
+
+ // timing arrays
+
+ ULONG m_ulStgCreateDocfile[TEST_MAX_ITERATIONS];
+ ULONG m_ulFinalStorageCommit[TEST_MAX_ITERATIONS];
+ ULONG m_ulFinalStorageRelease[TEST_MAX_ITERATIONS];
+
+ ULONG m_ulCreateStorageMin[MAX_NESTING][TEST_MAX_ITERATIONS];
+ ULONG m_ulCreateStorageMax[MAX_NESTING][TEST_MAX_ITERATIONS];
+ ULONG m_ulCreateStorageAverage[TEST_MAX_ITERATIONS];
+ ULONG m_ulCreateStorageTotal[TEST_MAX_ITERATIONS];
+
+ ULONG m_ulStorageReleaseMin[MAX_NESTING][TEST_MAX_ITERATIONS];
+ ULONG m_ulStorageReleaseMax[MAX_NESTING][TEST_MAX_ITERATIONS];
+ ULONG m_ulStorageReleaseAverage[TEST_MAX_ITERATIONS];
+ ULONG m_ulStorageReleaseTotal[TEST_MAX_ITERATIONS];
+
+ ULONG m_ulCreateStreamMin[TEST_MAX_ITERATIONS];
+ ULONG m_ulCreateStreamMax[TEST_MAX_ITERATIONS];
+ ULONG m_ulCreateStreamAverage[TEST_MAX_ITERATIONS];
+ ULONG m_ulCreateStreamTotal[TEST_MAX_ITERATIONS];
+
+ ULONG m_ulStreamWriteMin[TEST_MAX_ITERATIONS];
+ ULONG m_ulStreamWriteMax[TEST_MAX_ITERATIONS];
+ ULONG m_ulStreamWriteAverage[TEST_MAX_ITERATIONS];
+ ULONG m_ulStreamWriteTotal[TEST_MAX_ITERATIONS];
+
+ ULONG m_ulStreamReleaseMin[TEST_MAX_ITERATIONS];
+ ULONG m_ulStreamReleaseMax[TEST_MAX_ITERATIONS];
+ ULONG m_ulStreamReleaseAverage[TEST_MAX_ITERATIONS];
+ ULONG m_ulStreamReleaseTotal[TEST_MAX_ITERATIONS];
+
+ ULONG m_ulDestroyElementMin[TEST_MAX_ITERATIONS];
+ ULONG m_ulDestroyElementMax[TEST_MAX_ITERATIONS];
+ ULONG m_ulDestroyElementAverage[TEST_MAX_ITERATIONS];
+ ULONG m_ulDestroyElementTotal[TEST_MAX_ITERATIONS];
+
+ ULONG m_ulStorageCommitMin[MAX_NESTING][TEST_MAX_ITERATIONS];
+ ULONG m_ulStorageCommitMax[MAX_NESTING][TEST_MAX_ITERATIONS];
+ ULONG m_ulStorageCommitAverage[TEST_MAX_ITERATIONS];
+ ULONG m_ulStorageCommitTotal[TEST_MAX_ITERATIONS];
+
+
+ ULONG m_ulTotal[TEST_MAX_ITERATIONS];
+
+
+ BYTE *m_pbData; // data to be written
+
+ OLECHAR m_pwszFile[MAX_PATH]; // file name to be written for OLE
+ TCHAR m_pszFile[MAX_PATH]; // file name to be written for WIN32
+ TCHAR m_pszFileMode[15]; // file access mode (TRANSACTED / DIRECTED)
+
+ ULONG m_flCreateFlags; // Creation flag (STGM_TRANSACTED / STGM_DIRECT)
+ BOOL m_bDelete; // flag if we are to delete streams
+
+ ULONG m_cbSize; // number of bytes in data
+
+ ULONG m_cBranching; // Branching factor
+ ULONG m_cNesting; // nesting factor
+ ULONG m_cParentFactor;
+
+
+ ULONG m_cStorages; // number of storages
+ ULONG m_cStreams; // number of streams
+ LPSTORAGE *m_piStorages; // array of storages
+
+ LPMALLOC m_piMalloc; // pointer of task allocator.
+
+};
+
+#endif