-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Python graphics compression #861
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Closed
Closed
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Each call to TCanvas::Modified() increments modify counter. This counter used in then next TCanvas::Update() call to identify current version of canvas. TCanvas::IsModified() will return true until drawing is completed and painter confirms that last version of canvas delivered to all clients and displayed.
By default, TCanvas::Update() will block until latest canvas version delivered to all clients and displayed. Implement with straight polling loop.
By defauly, ROOT will try to crate local window with CEF or Qt5.
If not available, default browser will be started.
If place is specified, it should be program name like:
canvas->Show("/usr/bin/opera");
canvas->Show("firefox");
One could show canvas in several different places.
It let configure more complex program arguments for starting browser for the canvas, provide brief docu
One can call Canvas::SaveAs() several times, all specified files will be created one by one asynchronously
When synchronous mode specified (defualt), method blocked until file is produced. With asynchronous mode method returned and file will be produced in background.
Callback function called when file is created (or command fails)
Invoked when current canvas version delivered to all clients.
When close message send by client, server clear all callbacks and does not reply on the message. Still X is crashing if close called from window.onunload handler
Improve closing of CEF messaging queue
The casting of the function to improve lookup didn't took variadic functions into aspect, causing ABI issues when generating the code for calling this function. This correctly appends the annotation for a variadic function to the function type. This fixes the roottest-python-cling-cling test when compiling with icc.
While it happens very fast, JS close handlers are not executed properly. Therefore special JSROOT handler called directly when qt5webview widget is closed.
At the moment when civetweb closes websocket, it may call websocket data handler with zero-length data Such use case was not handled correctly and was causing seq fault
Closes all connections to clients. As a rection, all opened window should be closed. Currently worsk with CEF, Qt5 and local/remote browsers
fCanvasImp was not initialized and could be used in CreatePainter()
When canvas window should be opened with external browser, real HTTP server should be started. CanvasPainter will try to open several ports in the range 8800..9800
…l make the test fail
This patch instead prints an error with some useful debugging information that should help identify the cause of this issue.
…. This fixes ROOT-8955
Provide dictionary for all necessary classes, canvas painter will not be stored
Provide two signatures - with std::array and normal (width,height)
Still some problem to store canvas with any sub-pads inside
Problem with std::shared_ptr<TObject>
still store of canvas with subpads fails
Provide cxx files for both
Use extra ///<! comment if member should be removed from I/O
Currently we rebuilt LTO everytime you rerun cmake, as CMake touches the vcsrevision file that LTO depends on. Make isn't smart enough to realise it's still just an empty file, so it retriggers the LTO compilations whenever you run CMake. Again, this patch will be obsolete on the next LLVM upgrade as this CMake code is refactored upstream.
…/cling version" clang.git patch id: c46d940
…eing replaced by later PCM." This reverts commit fc1cb80. And brings that file back to the original clang version.
* add NSUM functionality to TF1 * parse NSUM in TF1 * parse NSUM in TF1 (minor updates) * TF1 can parse CONV (not rigorously tested yet) * fix CONV nesting * WIP setting parameters to default values (except Npar is too small) * fix TF1 to understand that "Constant" parameters are combined by TF1Convolution * (remove cout statements) * add google test for TF1 convolution (using Voigt) * remove unnecessary spaces * fix formatting
* fix parameter ordering * run clang-format
Technically this is not revert because of the faulty merge commit.
|
Can one of the admins verify this patch? |
Contributor
|
Hi @hshe824 . Who did you produce this PR? The number of commits is infinite. Did you follow the instructions on how to re-base? https://root.cern.ch/creating-pull-request |
Contributor
Author
|
No, I was not aware of these instructions, I will read this and make another pull request as necessary. Thanks |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Added python TColor compression that leverages Olivier's defined colors checking for changes in the palette.