197 lines
4.8 KiB
QBasic
197 lines
4.8 KiB
QBasic
' ============================================================
|
|
' Module Name: Test_Cache
|
|
' Module Desc: Debug module to print cache contents to Test_Cache sheet
|
|
' Module Methods:
|
|
' - Test_PrintAllCaches
|
|
' - PrintM1CacheToSheet
|
|
' - PrintM1KukanDCacheToSheet
|
|
' - PrintM2CacheToSheet
|
|
' - PrintZ1CacheToSheet
|
|
' - PrintO1CacheToSheet
|
|
' ============================================================
|
|
|
|
' Test Cache Module
|
|
|
|
Sub Test_PrintAllCaches()
|
|
Call RefreshM1Cache
|
|
Call RefreshM1KukanDCache
|
|
Call RefreshM2Cache
|
|
Call RefreshZ1Cache
|
|
Call RefreshO1Cache
|
|
|
|
Dim ws As Worksheet
|
|
On Error Resume Next
|
|
Set ws = ThisWorkbook.Worksheets("Test_Cache")
|
|
If ws Is Nothing Then
|
|
Set ws = ThisWorkbook.Worksheets.Add
|
|
ws.Name = "Test_Cache"
|
|
End If
|
|
On Error GoTo 0
|
|
|
|
ws.Cells.ClearContents
|
|
|
|
Dim r As Long
|
|
r = 1
|
|
ws.Cells(r, 1).Value = "M1 Cache"
|
|
r = r + 1
|
|
Call PrintM1CacheToSheet(ws, r)
|
|
|
|
r = r + 1
|
|
ws.Cells(r, 1).Value = "M1_KukanD Cache"
|
|
r = r + 1
|
|
Call PrintM1KukanDCacheToSheet(ws, r)
|
|
|
|
r = r + 1
|
|
ws.Cells(r, 1).Value = "M2 Cache"
|
|
r = r + 1
|
|
Call PrintM2CacheToSheet(ws, r)
|
|
|
|
r = r + 1
|
|
ws.Cells(r, 1).Value = "Z1 Cache"
|
|
r = r + 1
|
|
Call PrintZ1CacheToSheet(ws, r)
|
|
|
|
r = r + 1
|
|
ws.Cells(r, 1).Value = "O1 Cache"
|
|
r = r + 1
|
|
Call PrintO1CacheToSheet(ws, r)
|
|
|
|
ws.Columns.AutoFit
|
|
End Sub
|
|
|
|
Private Sub PrintM1CacheToSheet(ws As Worksheet, ByRef r As Long)
|
|
If m1Cache Is Nothing Then
|
|
ws.Cells(r, 1).Value = "Nothing"
|
|
r = r + 1
|
|
Exit Sub
|
|
End If
|
|
|
|
ws.Cells(r, 1).Value = "Count: " & m1Cache.Count
|
|
r = r + 1
|
|
|
|
Dim k As Variant
|
|
For Each k In m1Cache.Keys
|
|
Dim v As Variant
|
|
v = m1Cache(k)
|
|
ws.Cells(r, 1).Value = k
|
|
ws.Cells(r, 2).Value = v(1)
|
|
ws.Cells(r, 3).Value = v(2)
|
|
ws.Cells(r, 4).Value = v(3)
|
|
r = r + 1
|
|
Next k
|
|
End Sub
|
|
|
|
Private Sub PrintM1KukanDCacheToSheet(ws As Worksheet, ByRef r As Long)
|
|
If m1KukanDCache Is Nothing Then
|
|
ws.Cells(r, 1).Value = "Nothing"
|
|
r = r + 1
|
|
Exit Sub
|
|
End If
|
|
|
|
ws.Cells(r, 1).Value = "Count: " & m1KukanDCache.Count
|
|
r = r + 1
|
|
|
|
Dim d As Variant
|
|
For Each d In m1KukanDCache.Keys
|
|
ws.Cells(r, 1).Value = d
|
|
r = r + 1
|
|
Dim inner As Object
|
|
Set inner = m1KukanDCache(d)
|
|
Dim f As Variant
|
|
For Each f In inner.Keys
|
|
ws.Cells(r, 2).Value = f
|
|
r = r + 1
|
|
Dim arr As Object
|
|
Set arr = inner(f)
|
|
Dim g As Variant
|
|
For Each g In arr.Keys
|
|
ws.Cells(r, 3).Value = g
|
|
r = r + 1
|
|
Next g
|
|
Next f
|
|
Next d
|
|
End Sub
|
|
|
|
Private Sub PrintM2CacheToSheet(ws As Worksheet, ByRef r As Long)
|
|
If m2Cache Is Nothing Then
|
|
ws.Cells(r, 1).Value = "Nothing"
|
|
r = r + 1
|
|
Exit Sub
|
|
End If
|
|
|
|
ws.Cells(r, 1).Value = "Count: " & m2Cache.Count
|
|
r = r + 1
|
|
|
|
Dim k As Variant
|
|
For Each k In m2Cache.Keys
|
|
ws.Cells(r, 1).Value = k
|
|
r = r + 1
|
|
Dim inner As Object
|
|
Set inner = m2Cache(k)
|
|
Dim kanshu As Variant
|
|
For Each kanshu In inner.Keys
|
|
ws.Cells(r, 2).Value = kanshu
|
|
r = r + 1
|
|
Dim innermost As Object
|
|
Set innermost = inner(kanshu)
|
|
Dim c As Variant
|
|
For Each c In innermost.Keys
|
|
ws.Cells(r, 3).Value = c
|
|
ws.Cells(r, 4).Value = innermost(c)
|
|
r = r + 1
|
|
Next c
|
|
Next kanshu
|
|
Next k
|
|
End Sub
|
|
|
|
Private Sub PrintZ1CacheToSheet(ws As Worksheet, ByRef r As Long)
|
|
If z1Cache Is Nothing Then
|
|
ws.Cells(r, 1).Value = "Nothing"
|
|
r = r + 1
|
|
Exit Sub
|
|
End If
|
|
|
|
ws.Cells(r, 1).Value = "Count: " & z1Cache.Count
|
|
r = r + 1
|
|
|
|
Dim k As Variant
|
|
For Each k In z1Cache.Keys
|
|
Dim v As Variant
|
|
v = z1Cache(k)
|
|
ws.Cells(r, 1).Value = k
|
|
ws.Cells(r, 2).Value = v(0)
|
|
r = r + 1
|
|
Next k
|
|
End Sub
|
|
|
|
Private Sub PrintO1CacheToSheet(ws As Worksheet, ByRef r As Long)
|
|
If o1Cache Is Nothing Then
|
|
ws.Cells(r, 1).Value = "Nothing"
|
|
r = r + 1
|
|
Exit Sub
|
|
End If
|
|
|
|
ws.Cells(r, 1).Value = "Count: " & o1Cache.Count
|
|
r = r + 1
|
|
|
|
Dim c As Variant
|
|
For Each c In o1Cache.Keys
|
|
ws.Cells(r, 1).Value = c
|
|
r = r + 1
|
|
Dim inner As Object
|
|
Set inner = o1Cache(c)
|
|
Dim e As Variant
|
|
For Each e In inner.Keys
|
|
ws.Cells(r, 2).Value = e
|
|
r = r + 1
|
|
Dim arr As Object
|
|
Set arr = inner(e)
|
|
Dim f As Variant
|
|
For Each f In arr.Keys
|
|
ws.Cells(r, 3).Value = f
|
|
r = r + 1
|
|
Next f
|
|
Next e
|
|
Next c
|
|
End Sub
|