Handle of created web-based display Depending from type of web display, holds handle of started browser process or other display-specific information to correctly stop and cleanup display.
Definition at line 26 of file RWebDisplayHandle.hxx.
Classes | |
class | BrowserCreator |
class | ChromeCreator |
class | Creator |
!< page content More... | |
class | FirefoxCreator |
class | SafariCreator |
Public Member Functions | |
RWebDisplayHandle (const std::string &url) | |
constructor | |
virtual | ~RWebDisplayHandle ()=default |
required virtual destructor for correct cleanup at the end | |
const std::string & | GetContent () const |
get content | |
const std::string & | GetUrl () const |
returns url of start web display | |
virtual void | RemoveStartupFiles () |
remove file which was used to startup widget - if possible | |
virtual bool | Resize (int, int) |
resize web window - if possible | |
void | SetContent (const std::string &cont) |
set content | |
Static Public Member Functions | |
static bool | CanProduceImages (const std::string &browser="") |
Returns true if image production for specified browser kind is supported If browser not specified - use currently configured browser or try to test existing web browsers. | |
static std::unique_ptr< RWebDisplayHandle > | Display (const RWebDisplayArgs &args) |
Create web display. | |
static bool | DisplayUrl (const std::string &url) |
Display provided url in configured web browser. | |
static std::string | GetImageFormat (const std::string &fname) |
Detect image format There is special handling of ".screenshot.pdf" and ".screenshot.png" extensions Creation of such files relies on headless browser functionality and fully supported only by Chrome browser. | |
static bool | NeedHttpServer (const RWebDisplayArgs &args) |
Check if http server required for display. | |
static bool | ProduceImage (const std::string &fname, const std::string &json, int width=800, int height=600, const char *batch_file=nullptr) |
Produce image file using JSON data as source Invokes JSROOT drawing functionality in headless browser - Google Chrome or Mozilla Firefox. | |
static bool | ProduceImages (const std::string &fname, const std::vector< std::string > &jsons, const std::vector< int > &widths, const std::vector< int > &heights, const char *batch_file=nullptr) |
Produce image file(s) using JSON data as source Invokes JSROOT drawing functionality in headless browser - Google Chrome or Mozilla Firefox. | |
static bool | ProduceImages (const std::vector< std::string > &fnames, const std::vector< std::string > &jsons, const std::vector< int > &widths, const std::vector< int > &heights, const char *batch_file=nullptr) |
Produce image file(s) using JSON data as source Invokes JSROOT drawing functionality in headless browser - Google Chrome or Mozilla Firefox. | |
static std::vector< std::string > | ProduceImagesNames (const std::string &fname, unsigned nfiles=1) |
Produce vector of file names for specified file pattern Depending from supported file forma. | |
Static Protected Member Functions | |
static bool | CheckIfCanProduceImages (RWebDisplayArgs &args) |
Checks if configured browser can be used for image production. | |
static std::unique_ptr< Creator > & | FindCreator (const std::string &name, const std::string &libname="") |
Search for specific browser creator If not found, try to add one. | |
static std::map< std::string, std::unique_ptr< Creator > > & | GetMap () |
Static holder of registered creators of web displays. | |
Private Attributes | |
std::string | fContent |
!< URL used to launch display | |
std::string | fUrl |
#include <ROOT/RWebDisplayHandle.hxx>
|
inline |
constructor
Definition at line 97 of file RWebDisplayHandle.hxx.
|
virtualdefault |
required virtual destructor for correct cleanup at the end
Returns true if image production for specified browser kind is supported If browser not specified - use currently configured browser or try to test existing web browsers.
Definition at line 1062 of file RWebDisplayHandle.cxx.
|
staticprotected |
Checks if configured browser can be used for image production.
Definition at line 1014 of file RWebDisplayHandle.cxx.
|
static |
Create web display.
args | - defines where and how to display web window Returns RWebDisplayHandle, which holds information of running browser application Can be used fully independent from RWebWindow classes just to show any web page |
Definition at line 904 of file RWebDisplayHandle.cxx.
Display provided url in configured web browser.
url | - specified URL address like https://root.cern Browser can specified when starting root --web=firefox Returns true when browser started It is convenience method, equivalent to: RWebDisplayArgs args;
args.SetStandalone(false);
auto handle = RWebDisplayHandle::Display(args);
Definition TCollection.h:311 Holds different arguments for starting browser with RWebDisplayHandle::Display() method. Definition RWebDisplayArgs.hxx:30 void SetStandalone(bool on=true) Set standalone mode for running browser, default on When disabled, normal browser window (or just tab... Definition RWebDisplayArgs.hxx:140 static std::unique_ptr< RWebDisplayHandle > Display(const RWebDisplayArgs &args) Create web display. Definition RWebDisplayHandle.cxx:904 |
Definition at line 1000 of file RWebDisplayHandle.cxx.
|
staticprotected |
Search for specific browser creator If not found, try to add one.
name | - creator name like ChromeCreator |
libname | - shared library name where creator could be provided |
Definition at line 81 of file RWebDisplayHandle.cxx.
|
inline |
get content
Definition at line 108 of file RWebDisplayHandle.hxx.
|
static |
Detect image format There is special handling of ".screenshot.pdf" and ".screenshot.png" extensions Creation of such files relies on headless browser functionality and fully supported only by Chrome browser.
Definition at line 1074 of file RWebDisplayHandle.cxx.
|
staticprotected |
Static holder of registered creators of web displays.
Definition at line 69 of file RWebDisplayHandle.cxx.
|
inline |
returns url of start web display
Definition at line 103 of file RWebDisplayHandle.hxx.
|
static |
Check if http server required for display.
args | - defines where and how to display web window |
Definition at line 874 of file RWebDisplayHandle.cxx.
|
static |
Produce image file using JSON data as source Invokes JSROOT drawing functionality in headless browser - Google Chrome or Mozilla Firefox.
Definition at line 1107 of file RWebDisplayHandle.cxx.
|
static |
Produce image file(s) using JSON data as source Invokes JSROOT drawing functionality in headless browser - Google Chrome or Mozilla Firefox.
Definition at line 1154 of file RWebDisplayHandle.cxx.
|
static |
Produce image file(s) using JSON data as source Invokes JSROOT drawing functionality in headless browser - Google Chrome or Mozilla Firefox.
Definition at line 1163 of file RWebDisplayHandle.cxx.
|
static |
Produce vector of file names for specified file pattern Depending from supported file forma.
Definition at line 1117 of file RWebDisplayHandle.cxx.
|
inlinevirtual |
remove file which was used to startup widget - if possible
Reimplemented in ROOT::RWebBrowserHandle.
Definition at line 114 of file RWebDisplayHandle.hxx.
resize web window - if possible
Definition at line 111 of file RWebDisplayHandle.hxx.
|
inline |
set content
Definition at line 106 of file RWebDisplayHandle.hxx.
|
private |
!< URL used to launch display
Definition at line 30 of file RWebDisplayHandle.hxx.
|
private |
Definition at line 28 of file RWebDisplayHandle.hxx.