9#ifndef ROOT7_RVirtualCanvasPainter 
   10#define ROOT7_RVirtualCanvasPainter 
   21namespace Experimental {
 
   73   virtual std::shared_ptr<ROOT::RWebWindow> 
GetWindow() = 0;
 
   80   virtual void Run(
double tm = 0.) = 0;
 
   82   virtual bool AddPanel(std::shared_ptr<ROOT::RWebWindow>) { 
return false; }
 
 
virtual std::unique_ptr< RVirtualCanvasPainter > Create(RCanvas &canv) const =0
Abstract interface to create a RVirtualCanvasPainter implementation.
 
virtual ~Generator()
Default destructor.
 
Abstract interface for painting a canvas.
 
virtual void CanvasUpdated(uint64_t, bool, CanvasCallback_t)=0
indicate that canvas changed, provides current version of the canvas
 
virtual std::shared_ptr< ROOT::RWebWindow > GetWindow()=0
 
virtual bool AddPanel(std::shared_ptr< ROOT::RWebWindow >)
 
virtual int NumDisplays() const =0
 
virtual void Run(double tm=0.)=0
run canvas functionality in caller thread, not needed when main thread is used
 
virtual bool ProduceBatchOutput(const std::string &, int, int)=0
produce file output in batch mode like png, jpeg, svg or pdf
 
virtual std::string GetWindowUrl(bool remote)=0
 
virtual void DoWhenReady(const std::string &, const std::string &, bool, CanvasCallback_t)=0
perform special action when drawing is ready
 
static std::unique_ptr< Generator > & GetGenerator()
generator getter
 
virtual ~RVirtualCanvasPainter()
Default destructor.
 
virtual std::string ProduceJSON()=0
produce canvas JSON
 
virtual bool IsCanvasModified(uint64_t) const =0
return true if canvas modified since last painting
 
virtual void SetClearOnClose(const std::shared_ptr< void > &)
 
virtual void NewDisplay(const std::string &where)=0
 
static std::unique_ptr< RVirtualCanvasPainter > Create(RCanvas &canv)
Loads the plugin that implements this class.
 
virtual std::string GetWindowAddr() const =0
 
std::function< void(bool)> CanvasCallback_t