0
0
mirror of https://github.com/yse/easy_profiler.git synced 2024-12-28 01:04:41 +08:00

416 Commits

Author SHA1 Message Date
Holger Rapp
7641951247 Fixes for clang 3.8.
- Disables warnings for no-braced-scalar-init which shows up for ATOMIC_VAR_INIT.
- Fixes compile warnings, mostly "moving a temporary objects prevents
  copy elision" (-Wpessimizing-move) and unused variables.
- Adds some necessary fields to make the sample compile after having
  build the core library.
2017-02-07 17:19:58 +01:00
Victor Zarubkin
365d1608be (GUI) Fixed wrong hierarchy tree building in "Plain mode" (not all blocks were added) 2016-12-27 22:33:10 +03:00
Victor Zarubkin
bf7bf10b80 (GUI) Less buggy and more efficient recursive painting algorithm for blocks at diagram. Test mode.
Note: with recursive algorithm it is possible to iterate through blocks in parallel to make painting just more efficient - this is my future todo
2016-12-27 22:07:44 +03:00
Victor Zarubkin
b3045c1b68 (GUI) Hystogram painting improvement 2016-12-27 20:53:16 +03:00
Victor Zarubkin
179aee62fc amend last commit 2016-12-21 23:21:35 +03:00
Victor Zarubkin
4078fe2a4a (GUI) Blocks/files list widget search fix: files are highlighted too 2016-12-21 23:19:22 +03:00
Victor Zarubkin
6d59c53f7a (GUI) Fixed wrong window size calculation for hystogram window 2016-12-21 22:40:06 +03:00
Victor Zarubkin
649eda5641 (GUI) Small alignment fixes 2016-12-21 21:45:11 +03:00
Victor Zarubkin
829ca05e75 (GUI) Added new icon (:/Stop), increased default icon size 2016-12-18 19:16:21 +03:00
Victor Zarubkin
6c403ae4ba (GUI) Asking before restore last connection if could not connect to the new address;
* (GUI) Automatically restore connection on "Start Capture" click if application was disconnected.
2016-12-18 18:27:19 +03:00
Victor Zarubkin
0a57ff381c (GUI) Please, read NOTICE for that commit.
1) Added active time calculation (this is duration excluding context switch time).
2) Columns "Duration", "Self Dur.", "Self %", "% / Frame", "Active time", "Active %" in Plain mode shows total values per frame (sum of all values per frame).
2016-12-18 17:59:41 +03:00
Victor Zarubkin
e5dccfb8be (GUI) Added hierarchy window mode: full hierarchy, plain mode (only functions list) 2016-12-18 15:56:08 +03:00
Victor Zarubkin
1ac9c5c2a0 (EasyHystogramItem) Do not check events when calculating block min duration for selected thread 2016-12-17 16:32:39 +03:00
Victor Zarubkin
d85f9864d6 (GUI) Added statistics gathering for context switches (calls number, total duration, % per thread or frame).
Known issue: if context switch events occur out of profiled blocks then percent/thread may be calculated wrong as it is calculating relative to thread profiled time (which may be a very low value).
2016-12-14 23:17:02 +03:00
Victor Zarubkin
7883371166 (GUI) Added calculation of thread wait time (sum of all context switches) 2016-12-14 22:16:14 +03:00
Victor Zarubkin
eafcb40970 (GUI) Added possibility to torn on/off decorated thread names (add/don't add "Thread" word info thread name. Example, "Render" convert to "Render Thread", "WorkerThread" "My thread" will not convert in any way). See Settings->View->Use decorated thread names.
* (GUI) Fixed lagging when painting very long block on large scale.
2016-12-14 21:47:33 +03:00
Victor Zarubkin
7b63ae39d2 CMake + core: added options to CMakeLists.txt. TODO: maybe set them via CMake "option(...)" command 2016-12-13 21:53:29 +03:00
Victor Zarubkin
b67e078e55 (GUI) Fixed division by zero;
* (GUI) Displaying blocks number on hystogram for selected thread
2016-12-12 22:28:54 +03:00
Victor Zarubkin
d88b747c33 Valid version check 2016-12-12 22:26:50 +03:00
Victor Zarubkin
3f64b9fb1c (GUI) Added average time into summary popup 2016-12-12 21:41:48 +03:00
Victor Zarubkin
d4877b59b8 (GUI) Added new regime "Hide min-size blocks" to hide blocks which screen size is less than 'Min blocks size';
(GUI) Slightly more memory effective arch.
2016-12-12 21:39:16 +03:00
Victor Zarubkin
fd259d3948 (GUI) Removed Reload button 2016-12-12 01:10:54 +03:00
Victor Zarubkin
0dc944a877 (GUI) Remember 10 last opened files instead of one (added menu into "Reload last file" tool-button) 2016-12-11 03:27:42 +03:00
Victor Zarubkin
24e0ac261b (GUI) Increased length of text edit - IP: [ ] 2016-12-10 12:58:16 +03:00
Victor Zarubkin
e5b1485cec (GUI) Now you can use host name instead of ip-address 2016-12-10 12:54:17 +03:00
Victor Zarubkin
61271ff282 Amend last commit 2016-12-08 22:28:02 +03:00
Victor Zarubkin
6f14a4e97c (GUI) Added possibility to re-connect to the profiled application or to connect to the new address/port 2016-12-08 22:22:09 +03:00
Victor Zarubkin
88dc699099 No need to check for nullptr while deleting 2016-12-08 22:19:45 +03:00
Victor Zarubkin
c9d3169dbf (EasyGraphicsView) minor alignment fixes 2016-12-07 23:32:10 +03:00
Victor Zarubkin
d0c847da1d (EasyGraphicsView) Additional 5% offset before first and after last block;
* (EasyGraphicsView) Scroll to the first block after opening file;
2016-12-07 23:28:15 +03:00
Victor Zarubkin
0a4f9b0f43 (GUI) similar blocks highlighting fix;
(EasyDescTreeWidget) tree build fix;
2016-12-07 22:40:45 +03:00
Victor Zarubkin
46c4867b2d (EasyHystogramItem) updating image after window resize 2016-12-07 22:35:37 +03:00
Victor Zarubkin
b33faa571e (EasyHystogramItem) Display hystogram mode (MODE: overview // MODE: zoom);
* (EasyHystogramItem) Changed colors calculation method;
2016-12-07 22:29:16 +03:00
Victor Zarubkin
3c72d5d94d minor fixes 2016-12-04 19:17:28 +03:00
Victor Zarubkin
f9e8138c36 gcc warnings fix 2016-12-04 18:40:46 +03:00
Victor Zarubkin
e388c8e08e Merge branch 'develop' of https://github.com/yse/easy_profiler into develop 2016-12-04 17:02:01 +03:00
Sergey Yagovtsev
4539addae2 warning fix 2016-12-04 16:59:34 +03:00
Victor Zarubkin
15f3c7fc87 (GUI) Added tooltips into Settings->View menu;
(GUI) More informative popup window view;
(GUI) Added hystogram for current selected block;
2016-12-04 16:51:27 +03:00
Sergey Yagovtsev
cbbf570fae Define EASY_PRODUCT_VERSION by concatenating major, minor and patch strings 2016-12-04 16:40:00 +03:00
Sergey Yagovtsev
f4d4cbecfa Merge branch 'develop' of github.com:yse/easy_profiler into develop 2016-12-02 00:09:31 +03:00
Sergey Yagovtsev
5537eb290d More convenient build scripts. 2016-12-02 00:08:25 +03:00
Victor Zarubkin
ced93de1b3 (EasyGraphicsView) New popup window for blocks 2016-12-01 23:31:40 +03:00
Victor Zarubkin
acb197557f (EasyGraphicsView) Added possibility to scroll thread names list with mouse wheel 2016-12-01 22:27:25 +03:00
Victor Zarubkin
33bd7256ab (EasyGraphicsView) Scroll to main thread after file load 2016-12-01 22:20:34 +03:00
Victor Zarubkin
02e43a2b45 (EasyGraphicsScrollbar) Displaying text with minimum and maximum duration of frames 2016-12-01 21:55:11 +03:00
Victor Zarubkin
a2ae2dd051 (EasyGraphicsItem) Changed sync events minimum size 2016-12-01 21:53:06 +03:00
Victor Zarubkin
02349afe8b (EasyGraphicsView) Fixed timeline scale indicator text;
* (EasyGraphicsView) Fixed longest thread selection;
2016-12-01 21:52:29 +03:00
Victor Zarubkin
4dcb769ba2 (EasyGraphicsScrollbar) Added possibility to scale minimap to the current visible area (click mouse right button on minimap) 2016-11-30 22:37:11 +03:00
Victor Zarubkin
045f464e1f (EasyGraphicsView) Chronometer line style reset fix 2016-11-30 22:22:58 +03:00
Victor Zarubkin
69a326c06b (EasyGraphicsView) Highlighting all similar blocks on diagram (only if they are visible!);
(GUI) Added possibility to select units in which time will be displayed
2016-11-30 21:59:40 +03:00
Victor Zarubkin
90705af989 (GUI) Added flag "add zero blocks to hierarchy". If it is false then blocks with zero duration will not be added into hierarchy tree in hierarchy window. This saves a lot of memory. 2016-11-26 18:08:02 +03:00
Victor Zarubkin
b63cc382bd (EasyGraphicsItem) increased events interval 2016-11-26 17:15:08 +03:00
Victor Zarubkin
0658540109 (EasyGraphicsView) Important fix: fixed wrong indexing on paint 2016-11-26 17:00:05 +03:00
Victor Zarubkin
a7ac056021 (GUI) Added flag for enabling zero length blocks on diagram (if NOT enabled then such blocks would be resized to minimum length which is 250 ns. Otherwise you probably will not see blocks with zero length on diagram, but such blocks are still available at hierarchy window) 2016-11-23 22:54:59 +03:00
Victor Zarubkin
f1017c3ed4 (GUI) Added possibility to do case sensitive search into blocks descriptions list and hierarchy window 2016-11-20 21:40:05 +03:00
Victor Zarubkin
92b2b27a3b (GUI) Added search box into Hierarchy window;
(GUI) Added new option for building hierarchy for selected thread only (for memory economy)
2016-11-20 21:01:33 +03:00
Victor Zarubkin
a08b986418 (EasyDescTreeWidget) Expanded files in blocks list remain expanded after refresh 2016-11-20 18:34:31 +03:00
Victor Zarubkin
75fff29ba5 Fixed bug with increasing descriptions number on blocks list refresh 2016-11-20 18:33:56 +03:00
Victor Zarubkin
4d13e689f8 changed default value 2016-11-20 14:39:01 +03:00
Victor Zarubkin
21a7898572 removed unnecessary lambdas 2016-11-20 14:11:46 +03:00
Victor Zarubkin
752f0c08a8 Added possibility to build easy_profiler with empty API implementation to avoid whole solution rebuild if you want to build without profiler;
* resources.rc changes: proper macro names + copyright sign;
2016-11-20 13:42:05 +03:00
Sergey Yagovtsev
648ec8676c Rename PRODUCT_VERSION define 2016-11-19 19:29:57 +03:00
Victor Zarubkin
141b0f99a4 GUI: Added drag and drop of files into GUI window. NOTICE: You have to launch gui NOT as Administrator on Windows, otherwise Windows will block drag and drops from explorer. 2016-11-19 05:39:41 +03:00
Victor Zarubkin
65be64fb51 GUI: Added new settings into settings toolbar -> View. You can change blocks minimum size, spacing and narrow width value. 2016-11-19 04:52:45 +03:00
Victor Zarubkin
ed3e26a59c GUI: Blocks painting algorithm optimization for detailed mode 2016-11-19 03:46:52 +03:00
Victor Zarubkin
03587cb45b (EasyGraphicsItem) Painting optimization 2016-11-19 02:26:54 +03:00
Sergey Yagovtsev
b1e6bef056 Check connection in GUI 2016-11-18 22:58:44 +03:00
Sergey Yagovtsev
e4879d46dd REmove obsolete code 2016-11-18 22:04:33 +03:00
Sergey Yagovtsev
e60c46b710 Remove dependencies from QtNetwork 2016-11-17 00:19:06 +03:00
Sergey Yagovtsev
46b295c67b Prepare for release. Add rc-files and read version info from file 2016-11-16 23:58:47 +03:00
Victor Zarubkin
5c4904756f (EasyGraphicsScrollbar) Changed dash-line color to black for better perception 2016-11-16 23:13:43 +03:00
Victor Zarubkin
7e3d27a580 (EasyGraphicsScrollbar) Minimap optimization 2016-11-16 22:28:38 +03:00
Victor Zarubkin
07b78ea92f Moved version definition to CMakeLists.txt, added functions for getting profiler version 2016-11-16 22:17:39 +03:00
Victor Zarubkin
776039f543 (EasyGraphicsScrollbar) Tweaking colors coefficients 2016-11-13 22:16:50 +03:00
Victor Zarubkin
c0e2e345ec (EasyGraphicsScrollbar) Draw frame time marker on graphics scrollbar to visualize long frames 2016-11-13 22:02:47 +03:00
Sergey Yagovtsev
e5041a9b2b Multi-licensing in source codes 2016-11-13 16:39:59 +03:00
Victor Zarubkin
9b0e7fabc5 g++ warnings fix 2016-11-13 15:20:25 +03:00
Victor Zarubkin
34abef3575 Linux build: gcc 4 compatibility (in gcc 4 std::stringstream has no swap() method) 2016-11-06 14:47:01 +03:00
Sergey Yagovtsev
e03b720290 Prepare for make package by cpack 2016-11-02 22:37:51 +03:00
Sergey Yagovtsev
f8ab7f0d91 Merge remote-tracking branch 'origin/develop' into rename_to_easy 2016-10-21 22:15:32 +03:00
Victor Zarubkin
01b946f396 Thread names change 2016-10-02 17:52:42 +03:00
Victor Zarubkin
bc83a837f7 New icons 2016-10-02 17:52:14 +03:00
Victor Zarubkin
19966b40c6 Crash fix 2016-10-02 17:45:55 +03:00
Victor Zarubkin
5de9fcf824 Moved working with files from QFile to std::fstream because QFile has no overwrite mode (old file should be removed first);
Added merging algorithm for block descriptions when refreshing descriptions list.
2016-10-02 16:17:22 +03:00
Victor Zarubkin
4eef4daf30 Minor refactoring 2016-10-02 12:33:08 +03:00
Victor Zarubkin
dc01c49020 Saving network data using temporary cache file + Question box when clicked on "Clear all" 2016-10-02 12:13:12 +03:00
Sergey Yagovtsev
76defe2372 Rename directory profiler to easy 2016-09-29 23:29:57 +03:00
Victor Zarubkin
3b7266fb37 Prepare for saving profiled data (does not work yet);
* Remastered tool-bars and menus;
* Added new painting regime (Settings->View->Hide narrow children)
2016-09-29 22:40:19 +03:00
Victor Zarubkin
eca7061fd0 Added menu Settings->Remote to control profiler event tracing and other future options 2016-09-28 00:37:20 +03:00
Victor Zarubkin
d099aa28bb Validating ip address 2016-09-27 23:45:33 +03:00
Victor Zarubkin
425ca67077 (EasyMainWindow) IP-Address validation 2016-09-27 22:43:02 +03:00
Victor Zarubkin
4a05cafab4 Writing signature and version into file to let reader check if file is valid;
* Added output messages
2016-09-27 22:28:04 +03:00
Victor Zarubkin
6e50f6517d (EasyMainWindow) save and restore last used ip-address and port 2016-09-27 21:57:46 +03:00
Victor Zarubkin
f539dd3858 (EasyTreeWidget) tool-tips for blocks statuses 2016-09-25 11:51:39 +03:00
Victor Zarubkin
c53a8d4cb9 (EasyGraphicsView) additional offset before first block and after last block for ease of view 2016-09-25 11:50:57 +03:00
Victor Zarubkin
8fd70c5420 Many new features:
* Reading blocks from stream without temporary file;
* Reading blocks description from stream;
* Control blocks statuses over network: connect to the application, refresh blocks list, change block's status, launch profiling.
2016-09-25 11:49:49 +03:00
Victor Zarubkin
6cae6901de (profiler_gui) Removed unnecessary signals (rebuild may be needed) 2016-09-24 00:00:31 +03:00
Victor Zarubkin
583410c929 (profiler_gui) Added events indicators (like context switch events at the bottom of each thread) 2016-09-23 23:50:43 +03:00
Victor Zarubkin
30de452113 Trying to fix problem with c++11 magic statics (there is no support for visual studio 2013 and earlier, gcc < 4.3 and clang < 2.9);
Wrapped "final" keyword for different compilers support;
Block descriptors now stored in unordered_map to make it easy to control theirs visibility level and to make it safe to unload dll/so during application execution.
2016-09-22 23:06:43 +03:00
Victor Zarubkin
79e503983c Merge branch 'develop' of https://github.com/yse/easy_profiler into develop 2016-09-21 22:09:09 +03:00
Victor Zarubkin
7f5b7c00a8 (profiler_gui) Added tool-button "Clear all";
(profiler_gui) Prepare for append blocks
2016-09-21 22:09:04 +03:00
Sergey Yagovtsev
7804cf8b92 Warning fix 2016-09-20 23:25:13 +03:00
Victor Zarubkin
d6269f17fe Merge branch 'develop' of https://github.com/yse/easy_profiler into develop 2016-09-20 22:57:52 +03:00
Victor Zarubkin
e49b6179ef New flexible block statuses instead of ENABLED, DISABLED: OFF, ON, FORCE_ON, OFF_RECURSIVE, ON_WITHOUT_CHILDREN, FORCE_ON_WITHOUT_CHILDREN 2016-09-20 22:57:34 +03:00
Victor Zarubkin
cd0ef96793 (EasyMainWindow) Adjust QLineEdit width on tool-bar 2016-09-20 22:30:39 +03:00
Sergey Yagovtsev
151c359f7f Linux build 2016-09-20 01:24:53 +03:00
Victor Zarubkin
70bdd755f5 (EasyDescWidget) refactoring 2016-09-18 20:21:07 +03:00
Victor Zarubkin
89ff53c3c8 (profiler_gui) Main window refactoring 2016-09-18 20:20:37 +03:00
Sergey Yagovtsev
85e7145bf1 Merge commit 2016-09-18 19:02:12 +03:00
Sergey Yagovtsev
9b7b80febe Check if receive return zero - set it to disconnect 2016-09-18 18:33:10 +03:00
Sergey Yagovtsev
d2b4423c7b Remove obsolete code 2016-09-18 18:26:11 +03:00
Sergey Yagovtsev
a59a18be95 Some warning fix 2016-09-18 18:11:33 +03:00
Sergey Yagovtsev
2d4e22cc23 Add init and flush functions for EasySocket 2016-09-18 18:08:47 +03:00
Sergey Yagovtsev
c822809f4e Merge branch 'network_blocks' of github.com:yse/easy_profiler into network_blocks 2016-09-18 16:46:43 +03:00
Sergey Yagovtsev
9420f97a5a Set icon on connect 2016-09-18 16:46:35 +03:00
Sergey Yagovtsev
6939f053c9 Add checkResult function for socket 2016-09-18 16:43:43 +03:00
Victor Zarubkin
08a9cbf75d (profiler_gui) Save and restore windowState of EasyMainWindow;
(profiler_gui) Block descriptors list: added search box, search matches coloring, context menu event;
2016-09-17 18:43:06 +03:00
Victor Zarubkin
ef7469a880 (profiler_gui) First version of displaying and controlling blocks enable status 2016-09-17 15:39:31 +03:00
Victor Zarubkin
9ccb0499a5 (EasyTreeWidgetLoader) Destructor will delete items in the same thread 2016-09-17 15:38:41 +03:00
Victor Zarubkin
ce61ea1a77 small refactoring 2016-09-17 11:10:45 +03:00
Sergey Yagovtsev
c316734e8f Fix disconnect problem on downloading 2016-09-16 22:51:15 +03:00
Sergey Yagovtsev
82079f43da linux client socket fix 2016-09-16 22:23:04 +03:00
Sergey Yagovtsev
8ff721efa7 Merge remote-tracking branch 'origin/develop' into network_blocks 2016-09-16 02:16:27 +03:00
Sergey Yagovtsev
c83fc4626b linux build 2016-09-16 02:12:56 +03:00
Sergey Yagovtsev
1c37f4cab5 Merge remote-tracking branch 'origin/develop' into network_blocks 2016-09-16 02:11:16 +03:00
Sergey Yagovtsev
52a9862963 Correct receiving 2016-09-16 02:11:11 +03:00
Sergey Yagovtsev
f4676ced6f sleep for 1 second 2016-09-16 01:37:50 +03:00
Victor Zarubkin
03f6a37f25 Google material design colors for icons 2016-09-16 01:35:30 +03:00
Victor Zarubkin
17a90b38ec New icons 2016-09-16 01:17:01 +03:00
Victor Zarubkin
9b71695140 (profiler_gui) Added icon for GUI 2016-09-16 00:54:44 +03:00
Sergey Yagovtsev
4b71a64363 Merge commit 2016-09-16 00:53:27 +03:00
Victor Zarubkin
a2784eec50 Typo fix 2016-09-16 00:18:51 +03:00
Victor Zarubkin
6cc481319f New icons 2016-09-16 00:18:43 +03:00
Victor Zarubkin
925e2f1b26 (profiler_gui) New style for icons 2016-09-15 23:56:20 +03:00
Victor Zarubkin
cb6da49b3d (EasyGraphicsView) clang build fix 2016-09-15 23:20:37 +03:00
Sergey Yagovtsev
61589c1154 Merge commit 2016-09-15 22:49:56 +03:00
Victor Zarubkin
d8296ad43a (profiler_gui) Project hierarchy change: moved sources to separate files 2016-09-15 22:30:32 +03:00
Victor Zarubkin
c56acf50ed Warning fix 2016-09-15 00:08:42 +03:00
Victor Zarubkin
f0ee9215bd Warnings fix 2016-09-14 23:34:56 +03:00
Victor Zarubkin
330951cb62 (profiler_gui) Low priority for deleter thread 2016-09-14 23:14:47 +03:00
Victor Zarubkin
9748d7274f (profiler_gui) Bold and colorized font in EasyTreeWidget header 2016-09-14 23:14:24 +03:00
Victor Zarubkin
0166038e74 (profiler_gui) Enable/Disable statistics 2016-09-14 23:13:38 +03:00
Victor Zarubkin
89c2dc82c7 (profiler_gui) More icons 2016-09-14 23:12:41 +03:00
Sergey Yagovtsev
80892e636e Receive by EasySocket 2016-09-14 22:04:15 +03:00
Victor Zarubkin
acad6b6b37 (profiler_gui) Added icons and main logo 2016-09-14 21:52:11 +03:00
Victor Zarubkin
fdee7226f8 (profiler_gui) More information in popup; Right way to remove QGraphicsProxyWidget from scene (it does not delete widget by itself) 2016-09-13 23:44:20 +03:00
Victor Zarubkin
1b33ad788d (profiler_core) Further work with run-time enable/disable blocks;
(profiler_core) Fixed bug with memory corruption in chunk_allocator;
(profiler_core) Event tracing now gathering info about process which owns thread;
(profiler_core) Thread names are stored before other blocks now;
(profiler_core) Removed unused block types: context switch and thread sign;
(profiler_core) Added some description for API;
(profiler_gui) Context switch events now painted in different colors: red = switch to another process, coral = switch to registered thread in the same process, black = switch to kernel mode (thread id == 0).
(profiler_gui) Added popup windows with information about context-switch or block under mouse cursor;
2016-09-13 23:03:01 +03:00
Sergey Yagovtsev
6d6ad61a18 Add connect button 2016-09-13 21:42:38 +03:00
Sergey Yagovtsev
3181b867b1 Windows socket connection 2016-09-12 22:10:45 +03:00
Sergey Yagovtsev
0fe6690545 Add server function for EasySock 2016-09-12 21:28:15 +03:00
Sergey Yagovtsev
0a98d032d0 Windows almost work 2016-09-11 18:23:47 +03:00
Victor Zarubkin
c67bf1dda7 (EasyGraphicsView) Fixed wrong font width calculation issue; Fixed wrong resizeEvent behavior; 2016-09-11 16:53:34 +03:00
Sergey Yagovtsev
03765b08bc Not compiling version of windows sock 2016-09-09 06:14:34 +03:00
Victor Zarubkin
5b620071b6 (profiler_gui) Adjust colors; Added keyboard handlers; Displaying additional info 2016-09-09 00:07:27 +03:00
Sergey Yagovtsev
a422f69deb More stability in networking 2016-09-08 23:15:01 +03:00
Victor Zarubkin
248348ee05 (EasyGraphicsView) Added widget displaying thread names on scene. Double click on thread name makes it current selected thread.
(EasyGraphicsView) Selected item's text is now painted bold + removed selected item color, but made selected item's border more wide.
(profiler_gui) Colors adjustment.
2016-09-08 22:42:35 +03:00
Sergey Yagovtsev
20d3fb47a6 First steps in network. Work on linux 2016-09-08 21:03:40 +03:00
Victor Zarubkin
40a8ee3d16 Material design colors 2016-09-07 22:37:05 +03:00
Victor Zarubkin
68bbd0eef3 Merge branch 'event_tracing' of https://github.com/yse/easy_profiler into event_tracing 2016-09-07 21:52:40 +03:00
Victor Zarubkin
6e845eece2 Using Google Material Design colors;
* At last, fixed bug with text paint on very large scene scale. Now you can scale the scene up to 10 ns scale!
2016-09-07 21:48:50 +03:00
Sergey Yagovtsev
e1d95e0d3b clang some warning fix 2016-09-07 21:37:13 +03:00
Sergey Yagovtsev
19d757f231 gcc warning fix 2016-09-07 21:33:10 +03:00
Sergey Yagovtsev
68ee40a5ad Replace tab to whitespaces 2016-09-06 22:23:55 +03:00
Victor Zarubkin
591f613ff6 License text + small clean-up 2016-09-06 21:49:32 +03:00
Victor Zarubkin
d8d9a2fd32 (EasyGraphicsView) Painting context switches with outlined rectangles 2016-09-06 00:23:46 +03:00
Victor Zarubkin
f5ed51e13a Event tracing fixes! Now working :) 2016-09-04 19:35:58 +03:00
Victor Zarubkin
05b56dcec0 First debuggable version of system event tracing for visualizing thread context switches 2016-09-04 14:48:35 +03:00
Victor Zarubkin
7086592e6b (profiler_gui) Typo fixed! 2016-09-01 22:24:42 +03:00
Victor Zarubkin
b90e13509e small refactoring 2016-09-01 22:24:13 +03:00
Victor Zarubkin
937f7d8fec (profiler_core) Correcting: checking built-in "_WIN32" instead of compiler dependant "WIN32" 2016-09-01 22:22:58 +03:00
Victor Zarubkin
cbcfe4c184 (EasyMainWindow) Memory leak issue 2016-08-30 23:15:16 +03:00
Victor Zarubkin
9560c5b5cf (profiler_gui) Memory consumption optimization + File reading speed-up. 2016-08-30 22:51:18 +03:00
Victor Zarubkin
245bc6c386 (EasyChronometerItem) Fixed an error of displaying text on large scale 2016-08-30 20:47:49 +03:00
Victor Zarubkin
61c40c2512 (EasyGraphicsView) Design tweaking 2016-08-28 23:40:51 +03:00
Victor Zarubkin
988d9da391 (EasyTreeWidget) Trying to fix slow clear() 2016-08-28 21:10:16 +03:00
Victor Zarubkin
4ff13053ec Remastering profiler API. Fixed read/write 2016-08-28 21:06:23 +03:00
Victor Zarubkin
aa0d96d0e6 Remastering profiler API. All projects are compiled successfully, but there is an error occured during read/write .prof file 2016-08-28 18:22:45 +03:00
Victor Zarubkin
3a2c8aaef1 (profiler_gui) Small design tweaking;
(profiler_gui) Added possibility to change where chronometer (time-meter) item text will be painted: at the top of the scene, in the center or at the bottom of the scene. See menu View -> Chronometer text.
2016-08-24 01:00:24 +03:00
Victor Zarubkin
bb7e288c1c (EasyMainWindow) Separated loading of settings and geometry;
(profiler_gui) Added flag of connecting items expand status on scene and in the tree.
2016-08-23 23:50:30 +03:00
Victor Zarubkin
8b0f99ced0 (EasyGraphicsScrollbar) Displaying indicators for sliders at the top and the bottom of the mini-map view 2016-08-23 22:44:59 +03:00
Victor Zarubkin
3d8a120502 (profiler_gui) New flags for expanding all items on file open and for collapsing all items after closing tree (Blocks hierarchy dock-window);
(EasyTreeWidget) Fix of invisible progress bar;
2016-08-23 22:44:04 +03:00
Victor Zarubkin
355e3f519b (EasyGraphicsView) High painting performance optimization. No lags on 10 million blocks scene. (of course, not all 10 mil. of blocks are visible at the same moment) 2016-08-23 22:42:20 +03:00
Victor Zarubkin
004c4a257f (EasyGraphicsView) Second click on selected item on graphics scene makes it expanded or collapsed;
(EasyGraphicsView) Scale indicator rework;
(EasyMainWindow) Added menu "View" with actions "Expand all" nad "Collapse all";
(EasyGraphicsScrollbar) Fixed wrong mouse position calculation when scaling (with mouse wheel) on minimap.
2016-08-21 22:44:03 +03:00
Victor Zarubkin
4e5305ee74 (EasyGraphicsView) Refused of using QPainter::setClipRect() because of it is buggy when used with very big coordinates;
(EasyGraphicsView) New items borders drawing style.
2016-08-21 18:04:38 +03:00
Victor Zarubkin
1b3806ded2 (EasyGraphicsView) Removed debug output; Added vertical scrolling to the current thread on mouse wheel from EasyGraphicsScrollbar 2016-08-21 17:12:28 +03:00
Victor Zarubkin
721c145450 (profiler_gui) Added possibility of changing current scale using mouse wheel on minimap under graphics scene 2016-08-21 16:48:42 +03:00
Victor Zarubkin
beadd01c0c Merge remote-tracking branch 'origin/serialized_optimize' into develop 2016-08-21 14:48:36 +03:00
Victor Zarubkin
e40da7921d (EasyGraphicsView) Revert code analyzer fix: No need to check for nullptr because if it is null then there are no free memory in the system and the program will crash anyway. 2016-08-21 14:33:22 +03:00
Victor Zarubkin
9804378b1a Merge branch 'serialized_optimize' of https://github.com/yse/easy_profiler into serialized_optimize 2016-08-21 14:28:09 +03:00
Victor Zarubkin
5ab152620c (profiler_gui) Better way of setting fixed size of windows 2016-08-21 14:26:36 +03:00
Victor Zarubkin
d4ebdeeda8 (EasyGraphicsView) Added painting of time scale on the bottom of the graphics scene;
(EasyGraphicsItem) Fixed algorithmic error in paint() (this fix has improved paint() performance);
(profiler_gui) Color mathing
2016-08-21 14:26:04 +03:00
Sergey Yagovtsev
7d542cadda Ubuntu build 2016-08-19 01:40:14 +03:00
Sergey Yagovtsev
485c2a64ac (profiler gui) fix potencial zero pointer 2016-08-19 00:35:20 +03:00
Sergey Yagovtsev
7a87d681a1 (profiler gui) fix style warning by cppcheck analizer 2016-08-19 00:35:05 +03:00
Sergey Yagovtsev
fa15edf2ea Linux build 2016-08-18 23:50:53 +03:00
Victor Zarubkin
8f30948105 (profiler_gui) Reading file (MainWindow) and building blocks hierarchy (TreeWidget) in separate threads + displaying read progress;
(profiler_gui) Moving sources into separate files;
(profiler_gui) Rename Prof* classes into Easy*;
(EasyGraphicsView) Optimized performance by not painting items which were not expanded in TreeWidget. While there are no range selected for TreeWidget, only top-level blocks are painted on scene.
2016-08-18 23:26:41 +03:00
Victor Zarubkin
197a585307 (profiler core) Warning: .prof file format changed! New SerializedBlock format, less allocations and copy, only single allocation in fillTreesFromFile(). Memory consumption reduced. Also speed up statistics gathering by moving calculations into several threads. 2016-08-14 22:22:44 +03:00
Victor Zarubkin
d38c869330 Memory consumtion optimization (almost 2 times less memory used on Windows) 2016-08-14 16:05:10 +03:00
Victor Zarubkin
cdd74503eb (ProfGraphicsScrollbar) overflow guard (it seems that this is because of floating point precision) 2016-08-11 23:48:29 +03:00
Victor Zarubkin
24f181c040 (profiler GUI) high memory consumption optimizations: ~20 bytes per block 2016-08-11 23:43:34 +03:00