13#ifndef ROOT7_RWebDisplayHandle
14#define ROOT7_RWebDisplayHandle
23namespace Experimental {
47 void TestProg(
const std::string &nexttry,
bool check_std_paths =
false);
50 virtual std::string
MakeProfile(std::string &,
bool) {
return ""; }
67 std::string
MakeProfile(std::string &exec,
bool)
override;
75 std::string
MakeProfile(std::string &exec,
bool batch)
override;
78 static std::map<std::string, std::unique_ptr<Creator>> &
GetMap();
80 static std::unique_ptr<Creator> &
FindCreator(
const std::string &
name,
const std::string &libname =
"");
100 static bool DisplayUrl(
const std::string &url);
102 static bool ProduceImage(
const std::string &fname,
const std::string &json,
int width = 800,
int height = 600);
include TDocParser_001 C image html pict1_TDocParser_001 png width
Holds different arguments for starting browser with RWebDisplayHandle::Display() method.
std::string fExec
standard execute line
virtual std::string MakeProfile(std::string &, bool)
std::unique_ptr< RWebDisplayHandle > Display(const RWebDisplayArgs &args) override
Display given URL in web browser.
virtual ~BrowserCreator()=default
std::string fBatchExec
batch execute line
std::string fProg
browser executable
virtual void ProcessGeometry(std::string &, const RWebDisplayArgs &)
void TestProg(const std::string &nexttry, bool check_std_paths=false)
Check if browser executable exists and can be used.
std::string fHeadlessExec
headless execute line
void ProcessGeometry(std::string &, const RWebDisplayArgs &args) override
Replace $geometry placeholder with geometry settings Also RWebDisplayArgs::GetExtraArgs() are appende...
virtual ~ChromeCreator()=default
ChromeCreator()
Constructor.
bool IsActive() const override
std::string MakeProfile(std::string &exec, bool) override
Handle profile argument.
virtual bool IsActive() const
virtual std::unique_ptr< RWebDisplayHandle > Display(const RWebDisplayArgs &args)=0
virtual ~Creator()=default
FirefoxCreator()
Constructor.
std::string MakeProfile(std::string &exec, bool batch) override
Create Firefox profile to run independent browser window.
bool IsActive() const override
virtual ~FirefoxCreator()=default
Handle of created web-based display Depending from type of web display, holds handle of started brows...
static std::map< std::string, std::unique_ptr< Creator > > & GetMap()
Static holder of registered creators of web displays.
static bool ProduceImage(const std::string &fname, const std::string &json, int width=800, int height=600)
Produce image file using JSON data as source Invokes JSROOT drawing functionality in headless browser...
const std::string & GetUrl() const
returns url of start web display
RWebDisplayHandle(const std::string &url)
constructor
void SetContent(const std::string &cont)
set content
std::string fContent
!< URL used to launch display
const std::string & GetContent() const
get content
virtual ~RWebDisplayHandle()=default
required virtual destructor for correct cleanup at the end
static bool DisplayUrl(const std::string &url)
Display provided url in configured web browser.
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...