Way to browse (hopefully) everything in ROOT.
Definition at line 37 of file RBrowserData.hxx.
Public Member Functions | |
| RBrowserData () | |
| Default constructor. | |
| RBrowserData (std::shared_ptr< Browsable::RElement > elem) | |
| virtual | ~RBrowserData () |
| Destructor. | |
| void | ClearCache () |
| Clear internal objects cache. | |
| void | CreateDefaultElements () |
| Create default elements shown in the RBrowser. | |
| Browsable::RElementPath_t | DecomposePath (const std::string &path, bool relative_to_work_element) |
| Decompose path to elements Returns array of names for each element in the path, first element either "/" or "." If returned array empty - it is error. | |
| std::shared_ptr< Browsable::RElement > | GetElement (const std::string &str) |
| Returns element with path, specified as string. | |
| std::shared_ptr< Browsable::RElement > | GetElementFromTop (const Browsable::RElementPath_t &path) |
| Returns element with path, specified as Browsable::RElementPath_t. | |
| std::shared_ptr< Browsable::RElement > | GetSubElement (const Browsable::RElementPath_t &path) |
| Returns sub-element starting from top, using cached data. | |
| const Browsable::RElementPath_t & | GetWorkingPath () const |
| std::string | ProcessRequest (const RBrowserRequest &request) |
| Process browser request, returns string with JSON of RBrowserReply data. | |
| bool | RemoveFromCache (const Browsable::RElementPath_t &path) |
| Remove path (and all sub-paths) from cache Returns true if any element was removed. | |
| bool | RemoveFromCache (void *obj) |
| Remove object from cache If nullptr specified - removes no-longer-valid elements Returns true if any element was removed. | |
| void | SetTopElement (std::shared_ptr< Browsable::RElement > elem) |
| set top element for browsing | |
| void | SetWorkingPath (const Browsable::RElementPath_t &path) |
| set working directory relative to top element | |
Private Member Functions | |
| bool | ProcessBrowserRequest (const RBrowserRequest &request, RBrowserReply &reply) |
| Process browser request. | |
| void | ResetLastRequestData (bool with_element) |
| Reset all data correspondent to last request. | |
Private Attributes | |
| std::vector< std::pair< Browsable::RElementPath_t, std::shared_ptr< Browsable::RElement > > > | fCache |
| ! already requested elements | |
| std::unique_ptr< TObject > | fCleanupHandle |
| ! cleanup handle for RecursiveRemove | |
| bool | fLastAllChilds {false} |
| ! if all chlds were extracted | |
| std::shared_ptr< Browsable::RElement > | fLastElement |
| ! last element used in request | |
| std::vector< std::unique_ptr< Browsable::RItem > > | fLastItems |
| ! created browser items - used in requests | |
| Browsable::RElementPath_t | fLastPath |
| ! path to last used element | |
| std::vector< const Browsable::RItem * > | fLastSortedItems |
| ! sorted child items, used in requests | |
| std::string | fLastSortMethod |
| ! last sort method | |
| bool | fLastSortReverse {false} |
| ! last request reverse order | |
| std::shared_ptr< Browsable::RElement > | fTopElement |
| ! top element | |
| Browsable::RElementPath_t | fWorkingPath |
| ! path showed in Breadcrumb | |
Friends | |
| class | RBrowserDataCleanup |
#include <ROOT/RBrowserData.hxx>
| RBrowserData::RBrowserData | ( | ) |
Default constructor.
Definition at line 68 of file RBrowserData.cxx.
|
inline |
Definition at line 63 of file RBrowserData.hxx.
|
virtual |
Destructor.
Definition at line 78 of file RBrowserData.cxx.
| void RBrowserData::ClearCache | ( | ) |
Clear internal objects cache.
Definition at line 370 of file RBrowserData.cxx.
| void RBrowserData::CreateDefaultElements | ( | ) |
Create default elements shown in the RBrowser.
Definition at line 108 of file RBrowserData.cxx.
| Browsable::RElementPath_t RBrowserData::DecomposePath | ( | const std::string & | path, |
| bool | relative_to_work_element ) |
Decompose path to elements Returns array of names for each element in the path, first element either "/" or "." If returned array empty - it is error.
Definition at line 155 of file RBrowserData.cxx.
| std::shared_ptr< Browsable::RElement > RBrowserData::GetElement | ( | const std::string & | str | ) |
Returns element with path, specified as string.
Definition at line 290 of file RBrowserData.cxx.
| std::shared_ptr< Browsable::RElement > RBrowserData::GetElementFromTop | ( | const Browsable::RElementPath_t & | path | ) |
Returns element with path, specified as Browsable::RElementPath_t.
Definition at line 300 of file RBrowserData.cxx.
| std::shared_ptr< Browsable::RElement > RBrowserData::GetSubElement | ( | const Browsable::RElementPath_t & | path | ) |
Returns sub-element starting from top, using cached data.
Definition at line 308 of file RBrowserData.cxx.
|
inline |
Definition at line 73 of file RBrowserData.hxx.
|
private |
Process browser request.
Definition at line 171 of file RBrowserData.cxx.
| std::string RBrowserData::ProcessRequest | ( | const RBrowserRequest & | request | ) |
Process browser request, returns string with JSON of RBrowserReply data.
Definition at line 269 of file RBrowserData.cxx.
| bool RBrowserData::RemoveFromCache | ( | const Browsable::RElementPath_t & | path | ) |
Remove path (and all sub-paths) from cache Returns true if any element was removed.
Definition at line 406 of file RBrowserData.cxx.
| bool RBrowserData::RemoveFromCache | ( | void * | obj | ) |
Remove object from cache If nullptr specified - removes no-longer-valid elements Returns true if any element was removed.
Definition at line 380 of file RBrowserData.cxx.
|
private |
Reset all data correspondent to last request.
Definition at line 138 of file RBrowserData.cxx.
| void RBrowserData::SetTopElement | ( | std::shared_ptr< Browsable::RElement > | elem | ) |
set top element for browsing
Definition at line 88 of file RBrowserData.cxx.
| void RBrowserData::SetWorkingPath | ( | const Browsable::RElementPath_t & | path | ) |
set working directory relative to top element
Definition at line 98 of file RBrowserData.cxx.
|
friend |
Definition at line 39 of file RBrowserData.hxx.
|
private |
! already requested elements
Definition at line 45 of file RBrowserData.hxx.
|
private |
! cleanup handle for RecursiveRemove
Definition at line 54 of file RBrowserData.hxx.
! if all chlds were extracted
Definition at line 50 of file RBrowserData.hxx.
|
private |
! last element used in request
Definition at line 48 of file RBrowserData.hxx.
|
private |
! created browser items - used in requests
Definition at line 49 of file RBrowserData.hxx.
|
private |
! path to last used element
Definition at line 47 of file RBrowserData.hxx.
|
private |
! sorted child items, used in requests
Definition at line 51 of file RBrowserData.hxx.
|
private |
! last sort method
Definition at line 52 of file RBrowserData.hxx.
! last request reverse order
Definition at line 53 of file RBrowserData.hxx.
|
private |
! top element
Definition at line 41 of file RBrowserData.hxx.
|
private |
! path showed in Breadcrumb
Definition at line 43 of file RBrowserData.hxx.