13#ifndef ROOT7_RWebDisplayHandle 
   14#define ROOT7_RWebDisplayHandle 
   50      virtual std::string 
MakeProfile(std::string &, 
bool) { 
return ""; }
 
 
   70      std::string 
MakeProfile(std::string &exec, 
bool) 
override;
 
 
   82   static std::map<std::string, std::unique_ptr<Creator>> &
GetMap();
 
  105   virtual bool Resize(
int, 
int) { 
return false; }
 
 
ROOT::Detail::TRangeCast< T, true > TRangeDynCast
TRangeDynCast is an adapter class that allows the typed iteration through a TCollection.
 
Option_t Option_t TPoint TPoint const char GetTextMagnitude GetFillStyle GetLineColor GetLineWidth GetMarkerStyle GetTextAlign GetTextColor GetTextSize void char Point_t Rectangle_t height
 
Holds different arguments for starting browser with RWebDisplayHandle::Display() method.
 
std::string fProg
browser executable
 
std::string fBatchExec
batch execute line
 
std::string fHeadlessExec
headless execute line
 
std::unique_ptr< RWebDisplayHandle > Display(const RWebDisplayArgs &args) override
Display given URL in web browser.
 
virtual void ProcessGeometry(std::string &, const RWebDisplayArgs &)
 
std::string fExec
standard execute line
 
void TestProg(const std::string &nexttry, bool check_std_paths=false)
Check if browser executable exists and can be used.
 
BrowserCreator(bool custom=true, const std::string &exec="")
Class to handle starting of web-browsers like Chrome or Firefox.
 
virtual std::string MakeProfile(std::string &, bool)
 
~BrowserCreator() override=default
 
ChromeCreator(bool is_edge=false)
Constructor.
 
~ChromeCreator() override=default
 
bool IsActive() const override
 
void ProcessGeometry(std::string &, const RWebDisplayArgs &) override
Replace $geometry placeholder with geometry settings Also RWebDisplayArgs::GetExtraArgs() are appende...
 
std::string MakeProfile(std::string &exec, bool) override
Handle profile argument.
 
virtual ~Creator()=default
 
virtual std::unique_ptr< RWebDisplayHandle > Display(const RWebDisplayArgs &args)=0
 
virtual bool IsActive() const
 
bool IsActive() const override
 
FirefoxCreator()
Constructor.
 
std::string MakeProfile(std::string &exec, bool batch) override
Create Firefox profile to run independent browser window.
 
void ProcessGeometry(std::string &, const RWebDisplayArgs &) override
Process window geometry for Firefox.
 
~FirefoxCreator() override=default
 
Handle of created web-based display Depending from type of web display, holds handle of started brows...
 
const std::string & GetContent() const
get content
 
static std::map< std::string, std::unique_ptr< Creator > > & GetMap()
Static holder of registered creators of web displays.
 
static bool CheckIfCanProduceImages(RWebDisplayArgs &args)
Checks if configured browser can be used for image production.
 
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 brow...
 
virtual ~RWebDisplayHandle()=default
required virtual destructor for correct cleanup at the end
 
void SetContent(const std::string &cont)
set content
 
const std::string & GetUrl() const
returns url of start web display
 
RWebDisplayHandle(const std::string &url)
constructor
 
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...
 
static bool CanProduceImages(const std::string &browser="")
Returns true if image production for specified browser kind is supported If browser not specified - u...
 
static bool NeedHttpServer(const RWebDisplayArgs &args)
Check if http server required for display.
 
virtual bool Resize(int, int)
resize web window - if possible
 
static bool DisplayUrl(const std::string &url)
Display provided url in configured web browser.
 
std::string fContent
!< URL used to launch display
 
static std::unique_ptr< RWebDisplayHandle > Display(const RWebDisplayArgs &args)
Create web display.
 
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.
 
tbb::task_arena is an alias of tbb::interface7::task_arena, which doesn't allow to forward declare tb...