author | Matti Laitinen <matti.t.laitinen@nokia.com> |
Wed, 21 Apr 2010 20:01:08 +0300 | |
changeset 7 | 8e12a575a9b5 |
permissions | -rw-r--r-- |
7
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
1 |
/* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
2 |
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies). |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
3 |
* All rights reserved. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
4 |
* This component and the accompanying materials are made available |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
5 |
* under the terms of "Eclipse Public License v1.0" |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
6 |
* which accompanies this distribution, and is available |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
7 |
* at the URL "http://www.eclipse.org/legal/epl-v10.html". |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
8 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
9 |
* Initial Contributors: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
10 |
* Nokia Corporation - initial contribution. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
11 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
12 |
* Contributors: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
13 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
14 |
* Description: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
15 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
16 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
17 |
package com.nokia.s60tools.swmtanalyser.ui.graphs; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
18 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
19 |
import java.util.Arrays; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
20 |
import java.util.List; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
21 |
import java.util.Random; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
22 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
23 |
import org.eclipse.draw2d.Graphics; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
24 |
import org.eclipse.swt.SWT; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
25 |
import org.eclipse.swt.graphics.Color; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
26 |
import org.eclipse.swt.graphics.Font; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
27 |
import org.eclipse.swt.graphics.GC; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
28 |
import org.eclipse.swt.graphics.Image; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
29 |
import org.eclipse.swt.graphics.ImageData; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
30 |
import org.eclipse.swt.graphics.ImageLoader; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
31 |
import org.eclipse.swt.graphics.Point; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
32 |
import org.eclipse.swt.widgets.Composite; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
33 |
import org.eclipse.swt.widgets.Display; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
34 |
import org.eclipse.swt.widgets.FileDialog; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
35 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
36 |
import com.nokia.s60tools.swmtanalyser.ui.graphs.GenericGraph.EventTypes; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
37 |
import com.nokia.s60tools.util.debug.DbgUtility; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
38 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
39 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
40 |
* Graph utilities common to all graph types. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
41 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
42 |
public class GraphsUtils { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
43 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
44 |
// |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
45 |
// Constants |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
46 |
// |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
47 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
48 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
49 |
* Constant for no marker possibility. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
50 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
51 |
private static final int NO_MARKER = -1; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
52 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
53 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
54 |
* Possible marker sizes from smallest to biggest value. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
55 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
56 |
private static final int[] MARKER_SIZES = { 4, 6, 8 }; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
57 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
58 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
59 |
* Default marker size. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
60 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
61 |
private static final int DEFAULT_MARKER = MARKER_SIZES[2]; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
62 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
63 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
64 |
* Array of event names used to map the event names into corresponding event |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
65 |
* enumerators. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
66 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
67 |
* @see com.nokia.s60tools.swmtanalyser.ui.graphs.GenericGraph.EventTypes |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
68 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
69 |
private static final String[] EVENT_NAMES_ARR = { "Global data size", |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
70 |
"Non heap chunk size", "Disk used", "Disk total", "No of Files", |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
71 |
"Max size", "Heap size", "Heap allocated space", "Heap free space", |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
72 |
"Heap allocated cell count", "Heap free cell count", "Free slack", |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
73 |
"No of PS Handles", "RAM used", "RAM total", "System Data" }; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
74 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
75 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
76 |
* Percentage of byte count to be graphed that is added extra reserve in |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
77 |
* order to show markers appropriately. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
78 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
79 |
private static final int MARKER_MARGIN_PERCENTAGE = 5; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
80 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
81 |
// |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
82 |
// Symbolic name constants for different byte units use in setting Y-axis |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
83 |
// value level according given maximum byte value |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
84 |
// |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
85 |
private static final int KILOBYTE = 1024; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
86 |
private static final int MEGABYTE = 1024 * 1024; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
87 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
88 |
// |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
89 |
// Members |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
90 |
// |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
91 |
private static String imageFilename; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
92 |
private static Composite parentComposite; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
93 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
94 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
95 |
* Maps event names into corresponding enumerator type |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
96 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
97 |
* @param event |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
98 |
* event name |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
99 |
* @return enumerator constant corresponding to the given event |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
100 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
101 |
public static EventTypes getMappedEvent(String eventName) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
102 |
int index = Arrays.asList(EVENT_NAMES_ARR).indexOf(eventName); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
103 |
GenericGraph.EventTypes eventType = null; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
104 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
105 |
switch (index) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
106 |
case 0: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
107 |
eventType = GenericGraph.EventTypes.GLOBAL_DATA_SIZE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
108 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
109 |
case 1: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
110 |
eventType = GenericGraph.EventTypes.NON_HEAP_CHUNK_SIZE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
111 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
112 |
case 2: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
113 |
eventType = GenericGraph.EventTypes.DISK_USED_SIZE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
114 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
115 |
case 3: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
116 |
eventType = GenericGraph.EventTypes.DISK_TOTAL_SIZE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
117 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
118 |
case 4: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
119 |
eventType = GenericGraph.EventTypes.NO_OF_FILES; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
120 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
121 |
case 5: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
122 |
eventType = GenericGraph.EventTypes.MAX_HEAP_SIZE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
123 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
124 |
case 6: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
125 |
eventType = GenericGraph.EventTypes.HEAP_SIZE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
126 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
127 |
case 7: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
128 |
eventType = GenericGraph.EventTypes.HEAP_ALLOC_SPACE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
129 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
130 |
case 8: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
131 |
eventType = GenericGraph.EventTypes.HEAP_FREE_SPACE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
132 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
133 |
case 9: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
134 |
eventType = GenericGraph.EventTypes.HEAP_ALLOC_CELL_COUNT; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
135 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
136 |
case 10: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
137 |
eventType = GenericGraph.EventTypes.HEAP_FREE_CELL_COUNT; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
138 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
139 |
case 11: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
140 |
eventType = GenericGraph.EventTypes.HEAP_FREE_SLACK; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
141 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
142 |
case 12: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
143 |
eventType = GenericGraph.EventTypes.NO_OF_PSHANDLES; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
144 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
145 |
case 13: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
146 |
eventType = GenericGraph.EventTypes.RAM_USED; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
147 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
148 |
case 14: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
149 |
eventType = GenericGraph.EventTypes.RAM_TOTAL; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
150 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
151 |
case 15: |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
152 |
eventType = GenericGraph.EventTypes.SYSTEM_DATA; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
153 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
154 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
155 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
156 |
return eventType; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
157 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
158 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
159 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
160 |
* Get next scale when zooming in or out |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
161 |
* @param scale |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
162 |
* @param bigger give <code>true</code> when zooming out and <code>false</code> when zooming in. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
163 |
* @return next scale |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
164 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
165 |
public static double nextScale(double scale, boolean bigger) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
166 |
double logScale = Math.log10(scale); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
167 |
double floorLogScale = Math.floor(Math.log10(scale)); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
168 |
double mostSignificantDigit = Math.rint(Math.pow(10, |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
169 |
(logScale - floorLogScale))); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
170 |
double powerOfTen = Math.pow(10, floorLogScale); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
171 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
172 |
if (bigger) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
173 |
if (mostSignificantDigit < 2) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
174 |
mostSignificantDigit = 2; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
175 |
} else if (mostSignificantDigit < 5) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
176 |
mostSignificantDigit = 5; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
177 |
} else { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
178 |
mostSignificantDigit = 10; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
179 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
180 |
} else { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
181 |
if (mostSignificantDigit > 5) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
182 |
mostSignificantDigit = 5; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
183 |
} else if (mostSignificantDigit > 2) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
184 |
mostSignificantDigit = 2; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
185 |
} else if (mostSignificantDigit > 1) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
186 |
mostSignificantDigit = 1; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
187 |
} else { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
188 |
mostSignificantDigit = 0.5; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
189 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
190 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
191 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
192 |
double result = mostSignificantDigit * powerOfTen; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
193 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
194 |
if (result < 0.1) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
195 |
result = 0.1; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
196 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
197 |
return result; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
198 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
199 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
200 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
201 |
* Save the given composite as an image to local file system. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
202 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
203 |
* @param parent |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
204 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
205 |
public static void saveGraph(Composite parent) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
206 |
parentComposite = parent; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
207 |
FileDialog dlg = new FileDialog(Display.getCurrent().getActiveShell(), |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
208 |
SWT.SAVE); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
209 |
dlg.setFilterExtensions(new String[] { "*.bmp", "*.png", "*.jpeg" }); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
210 |
imageFilename = dlg.open(); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
211 |
if (imageFilename == null) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
212 |
return; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
213 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
214 |
Runnable p = new Runnable() { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
215 |
public void run() { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
216 |
GC gc = new GC(parentComposite); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
217 |
Image image = new Image(Display.getCurrent(), parentComposite |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
218 |
.getClientArea().width, |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
219 |
parentComposite.getClientArea().height); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
220 |
parentComposite.setFocus(); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
221 |
gc.copyArea(image, 0, 0); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
222 |
gc.dispose(); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
223 |
ImageData data = image.getImageData(); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
224 |
ImageLoader loader = new ImageLoader(); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
225 |
loader.data = new ImageData[] { data }; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
226 |
if (imageFilename != null) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
227 |
loader.save(imageFilename, SWT.IMAGE_BMP); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
228 |
image.dispose(); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
229 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
230 |
}; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
231 |
Display.getDefault().timerExec(500, p); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
232 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
233 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
234 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
235 |
* Generate random color. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
236 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
237 |
* @return a random color |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
238 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
239 |
public static Color getRandomColor() { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
240 |
Random rand = new Random(); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
241 |
int r = rand.nextInt(255); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
242 |
int g = rand.nextInt(255); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
243 |
int b = rand.nextInt(255); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
244 |
return new Color(Display.getCurrent(), r, g, b); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
245 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
246 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
247 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
248 |
* Creates an image and writes the given text vertically on the image. This |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
249 |
* is used to represent the Y-axis names in the Analysis tab and Graphed |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
250 |
* events -graphs. Those graphs show double Y-axis and therefore layout |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
251 |
* differs from single Y-axis situation. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
252 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
253 |
* @param axisLabelName |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
254 |
* name of the label |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
255 |
* @return vertical axis label image |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
256 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
257 |
public static Image getDoubleYAxisVerticalLabel(String axisLabelName) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
258 |
return getVerticalLabel(axisLabelName, 90, 18, 10); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
259 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
260 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
261 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
262 |
* Creates an image and writes the given text vertically on the image with |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
263 |
* given coordinates and font size. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
264 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
265 |
* @param axisLabelName |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
266 |
* name of the label |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
267 |
* @param x |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
268 |
* x-coordinate |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
269 |
* @param y |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
270 |
* y-coordinate |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
271 |
* @param fontSize |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
272 |
* font size |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
273 |
* @return vertical axis label image |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
274 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
275 |
public static Image getVerticalLabel(String axisLabelName, int x, int y, |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
276 |
int fontSize) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
277 |
final Image image = new Image(Display.getDefault(), x, y); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
278 |
GC gc = new GC(image); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
279 |
Font font = new Font(Display.getDefault(), Display.getDefault() |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
280 |
.getSystemFont().getFontData()[0].getName(), fontSize, SWT.BOLD); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
281 |
gc.setFont(font); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
282 |
gc.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_WHITE)); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
283 |
gc.fillRectangle(0, 0, 90, 15); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
284 |
gc.setForeground(Display.getDefault().getSystemColor(SWT.COLOR_BLACK)); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
285 |
gc.drawText(axisLabelName + " ->", 0, 0, true); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
286 |
font.dispose(); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
287 |
gc.dispose(); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
288 |
return image; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
289 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
290 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
291 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
292 |
* Draws markers to data points with current foreground color and marker |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
293 |
* size. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
294 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
295 |
* @param graphics |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
296 |
* Graphics context |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
297 |
* @param points |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
298 |
* Data point array in format [ X0, Y0, X1, Y1, ... ] |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
299 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
300 |
private static void drawMarkers(Graphics graphics, int[] points, |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
301 |
int markerSize) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
302 |
Color backgroundColor = graphics.getBackgroundColor(); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
303 |
graphics.setBackgroundColor(graphics.getForegroundColor()); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
304 |
for (int j = 0; j < points.length; j += 2) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
305 |
int width = markerSize; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
306 |
int height = width; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
307 |
int x = points[j] - (width / 2); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
308 |
int y = points[j + 1] - (width / 2); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
309 |
graphics.fillRectangle(x, y, width, height); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
310 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
311 |
graphics.setBackgroundColor(backgroundColor); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
312 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
313 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
314 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
315 |
* Resolving minimum space between subsequent X-coordinate data points. This |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
316 |
* method expects that there are at least 2 x,y pairs in the array |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
317 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
318 |
* @param points |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
319 |
* Data point array in format [ X0, Y0, X1, Y1, ... ] |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
320 |
* @return minimum space between subsequent X-coordinate data points |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
321 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
322 |
private static int resolveMinumumXDelta(int[] points) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
323 |
int minDelta = points[2] - points[0]; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
324 |
for (int i = 4; i < points.length; i += 2) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
325 |
int delta = points[i] - points[i - 2]; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
326 |
if (delta < minDelta) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
327 |
minDelta = delta; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
328 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
329 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
330 |
return minDelta; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
331 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
332 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
333 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
334 |
* Draws markers to data points with current foreground color. Markers drawn |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
335 |
* only if there is enough room in X-axis to draw them between all |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
336 |
* individual data points. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
337 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
338 |
* @param graphics |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
339 |
* Graphics context |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
340 |
* @param points |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
341 |
* Data point array in format [ X0, Y0, X1, Y1, ... ] |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
342 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
343 |
public static void drawMarkers(Graphics graphics, int[] points) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
344 |
int markerSize = NO_MARKER; // By default not drawing markers if there |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
345 |
// is no room for them |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
346 |
// Checking deltas only if there is more than single point to draw |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
347 |
if (points.length > 2) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
348 |
// Resolving minimum space between subsequent X-coordinate data |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
349 |
// points |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
350 |
int minDelta = resolveMinumumXDelta(points); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
351 |
// Resolving if there is at all need to draw markers |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
352 |
for (int i = MARKER_SIZES.length - 1; i >= 0; i--) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
353 |
int size = MARKER_SIZES[i]; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
354 |
if (size < minDelta) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
355 |
markerSize = size; // Using this size in drawing |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
356 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
357 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
358 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
359 |
// DbgUtility.println(DbgUtility.PRIORITY_LOOP, "minDelta: " + minDelta); //$NON-NLS-1$ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
360 |
} else { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
361 |
// Using default marker in case there |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
362 |
markerSize = DEFAULT_MARKER; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
363 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
364 |
// DbgUtility.println(DbgUtility.PRIORITY_LOOP, "markerSize: " + markerSize); //$NON-NLS-1$ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
365 |
// Drawing markers |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
366 |
if (markerSize != NO_MARKER) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
367 |
drawMarkers(graphics, points, markerSize); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
368 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
369 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
370 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
371 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
372 |
* Gets nearest Y-legend bytes label from the given bytes |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
373 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
374 |
* @param bytes |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
375 |
* bytes number |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
376 |
* @return nearest Y-legend bytes label from the given bytes |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
377 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
378 |
static public int prettyMaxBytes(int bytes) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
379 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
380 |
// Adding some margin that makes possible to show also markers |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
381 |
int byteMarginForMarkers = (int) Math |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
382 |
.ceil((MARKER_MARGIN_PERCENTAGE / 100.0) * bytes); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
383 |
bytes = bytes + byteMarginForMarkers; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
384 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
385 |
// DbgUtility.println(DbgUtility.PRIORITY_LOOP, "prettyMaxBytes/bytes: " + bytes); //$NON-NLS-1$ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
386 |
// DbgUtility.println(DbgUtility.PRIORITY_LOOP, "byteMarginForMarkers: " + byteMarginForMarkers); //$NON-NLS-1$ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
387 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
388 |
// Before 10 KB limit using byte units are used Y-axis legend and |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
389 |
// therefore thousand is used as checkpoint limit instead if KILOBYTE |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
390 |
final int thousand = 1000; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
391 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
392 |
if (bytes < thousand) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
393 |
bytes = thousand; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
394 |
else if (bytes < 10 * thousand) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
395 |
bytes = 10 * thousand; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
396 |
else if (bytes < 20 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
397 |
bytes = 20 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
398 |
else if (bytes < 30 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
399 |
bytes = 30 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
400 |
else if (bytes < 50 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
401 |
bytes = 50 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
402 |
else if (bytes < 100 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
403 |
bytes = 100 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
404 |
else if (bytes < 150 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
405 |
bytes = 150 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
406 |
else if (bytes < 200 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
407 |
bytes = 200 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
408 |
else if (bytes < 300 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
409 |
bytes = 300 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
410 |
else if (bytes < 400 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
411 |
bytes = 400 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
412 |
else if (bytes < 500 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
413 |
bytes = 500 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
414 |
else if (bytes < 600 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
415 |
bytes = 600 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
416 |
else if (bytes < 700 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
417 |
bytes = 700 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
418 |
else if (bytes < 800 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
419 |
bytes = 800 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
420 |
else if (bytes < 900 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
421 |
bytes = 900 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
422 |
else if (bytes < 1000 * KILOBYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
423 |
bytes = 1000 * KILOBYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
424 |
else if (bytes < 1 * MEGABYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
425 |
bytes = 1 * MEGABYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
426 |
else if (bytes < 2 * MEGABYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
427 |
bytes = 2 * MEGABYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
428 |
else if (bytes < 3 * MEGABYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
429 |
bytes = 3 * MEGABYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
430 |
else if (bytes < 5 * MEGABYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
431 |
bytes = 5 * MEGABYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
432 |
else if (bytes < 10 * MEGABYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
433 |
bytes = 10 * MEGABYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
434 |
else if (bytes < 20 * MEGABYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
435 |
bytes = 20 * MEGABYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
436 |
else if (bytes < 30 * MEGABYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
437 |
bytes = 30 * MEGABYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
438 |
else if (bytes < 50 * MEGABYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
439 |
bytes = 50 * MEGABYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
440 |
else if (bytes < 100 * MEGABYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
441 |
bytes = 100 * MEGABYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
442 |
else if (bytes < 200 * MEGABYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
443 |
bytes = 200 * MEGABYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
444 |
else if (bytes < 300 * MEGABYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
445 |
bytes = 300 * MEGABYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
446 |
else if (bytes < 500 * MEGABYTE) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
447 |
bytes = 500 * MEGABYTE; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
448 |
else |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
449 |
bytes = ((bytes + 1024 * MEGABYTE - 1) / (1024 * MEGABYTE)) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
450 |
* (1024 * MEGABYTE); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
451 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
452 |
return bytes; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
453 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
454 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
455 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
456 |
* Converts list of <code>Point</code> objects into integer array. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
457 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
458 |
* @param pointsList |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
459 |
* list of point objects |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
460 |
* @return points converted in 1-dimensional integer array. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
461 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
462 |
public static int[] convertPointListToIntArray(List<Point> pointsList) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
463 |
int[] integerArray = new int[pointsList.size() * 2]; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
464 |
for (int i = 0, j = 0; i < pointsList.size(); i++, j += 2) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
465 |
Point pnt = pointsList.get(i); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
466 |
integerArray[j] = pnt.x; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
467 |
integerArray[(j + 1)] = pnt.y; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
468 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
469 |
return integerArray; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
470 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
471 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
472 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
473 |
* Gets nearest Y-legend count value label from the given input count value. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
474 |
* Maximum count value handled is 999*100 i.e. 99900 counts. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
475 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
476 |
* @param inputCountValue |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
477 |
* bytes input count value |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
478 |
* @return nearest Y-legend count value label from the given input count |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
479 |
* value. |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
480 |
* @return |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
481 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
482 |
static public int roundToNearestNumber(int inputCountValue) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
483 |
int tempCount = inputCountValue; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
484 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
485 |
// Adding some safe margin for making sure that all data points with |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
486 |
// markers are drawn appropriately |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
487 |
int countMarginForMarkers = (int) Math |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
488 |
.ceil((MARKER_MARGIN_PERCENTAGE / 100.0) * tempCount); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
489 |
tempCount = tempCount + countMarginForMarkers; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
490 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
491 |
DbgUtility.println(DbgUtility.PRIORITY_OPERATION, |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
492 |
"roundToNearestNumber/count: " + tempCount); //$NON-NLS-1$ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
493 |
DbgUtility.println(DbgUtility.PRIORITY_OPERATION, |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
494 |
"countMarginForMarkers: " + countMarginForMarkers); //$NON-NLS-1$ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
495 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
496 |
if (tempCount < 10) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
497 |
tempCount = 10; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
498 |
else if (tempCount < 50) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
499 |
tempCount = 50; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
500 |
else if (tempCount < 100) |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
501 |
tempCount = 100; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
502 |
else { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
503 |
for (int i = 2; i < 1000; i++) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
504 |
if (tempCount < (i * 100)) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
505 |
tempCount = i * 100; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
506 |
break; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
507 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
508 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
509 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
510 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
511 |
return tempCount; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
512 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
513 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
514 |
/** |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
515 |
* Builds int array from Integer List object |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
516 |
* |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
517 |
* @param solidsList |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
518 |
* Integer list |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
519 |
* @return int array |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
520 |
*/ |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
521 |
public static int[] CreateIntArrayFromIntegerList(List<Integer> solidsList) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
522 |
int[] solidPts = new int[solidsList.size()]; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
523 |
for (int j = 0; j < solidsList.size(); j++) { |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
524 |
solidPts[j] = solidsList.get(j); |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
525 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
526 |
return solidPts; |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
527 |
} |
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
528 |
|
8e12a575a9b5
MemSpy Carbide Extension 1.6.0
Matti Laitinen <matti.t.laitinen@nokia.com>
parents:
diff
changeset
|
529 |
} |