#include <Fireworks/Core/interface/FWGeometryTableManager.h>
Classes | |
struct | Match |
Public Types | |
enum | ECol { kNameColumn, kColorColumn, kTranspColumn, kVisSelfColumn, kVisChildColumn, kMaterialColumn, kNumColumn } |
enum | GeometryBits { kMatches = BIT(5), kChildMatches = BIT(6), kFilterCached = BIT(7) } |
typedef Volumes_t::iterator | Volumes_i |
typedef boost::unordered_map < TGeoVolume *, Match > | Volumes_t |
Public Types inherited from FWGeometryTableManagerBase | |
enum | Bits { kExpanded = BIT(0), kVisNodeSelf = BIT(1), kVisNodeChld = BIT(2), kHighlighted = BIT(3), kSelected = BIT(4) } |
typedef Entries_v::iterator | Entries_i |
typedef std::vector< NodeInfo > | Entries_v |
Public Member Functions | |
void | assertNodeFilterCache (NodeInfo &data) |
virtual FWTableCellRendererBase * | cellRenderer (int iSortedRowNumber, int iCol) const |
void | checkChildMatches (TGeoVolume *v, std::vector< TGeoVolume * > &) |
void | checkHierarchy () |
void | checkRegionOfInterest (double *center, double radius, long algo) |
FWGeometryTableManager (FWGeometryTableView *) | |
virtual bool | getVisibility (const NodeInfo &nodeInfo) const |
virtual bool | getVisibilityChld (const NodeInfo &nodeInfo) const |
void | importChildren (int parent_idx) |
void | loadGeometry (TGeoNode *iGeoTopNode, TObjArray *iVolumes) |
virtual int | numberOfColumns () const |
Number of columns in the table. More... | |
void | printMaterials () |
virtual void | recalculateVisibility () |
void | recalculateVisibilityNodeRec (int) |
void | recalculateVisibilityVolumeRec (int) |
void | resetRegionOfInterest () |
virtual void | setDaughtersSelfVisibility (int i, bool v) |
virtual void | setVisibility (NodeInfo &nodeInfo, bool) |
virtual void | setVisibilityChld (NodeInfo &nodeInfo, bool) |
void | updateFilter (int) |
virtual | ~FWGeometryTableManager () |
Public Member Functions inherited from FWGeometryTableManagerBase | |
virtual void | applyColorTranspToDaughters (int selectedIdx, bool recurse) |
void | applyTransparencyFromEditor () |
void | cancelEditor (bool) |
virtual bool | cellDataIsSortable () const |
bool | firstColumnClicked (int row, int xPos) |
FWGeometryTableManagerBase () | |
FWGeometryTableManagerBase (const FWGeometryTableManagerBase &) | |
int | getLevelOffset () const |
void | getNodeMatrix (const NodeInfo &nodeInfo, TGeoHMatrix &mat) const |
void | getNodePath (int, std::string &) const |
NodeInfo * | getSelected () |
virtual std::vector< std::string > | getTitles () const |
returns the title names for each column More... | |
virtual void | implSort (int, bool) |
Called by 'sort' method to actually handle the sorting of the rows. Arguments are the same as 'sort'. More... | |
bool | isNodeRendered (int idx, int top_node_idx) const |
void | loadGeometry (TGeoNode *, TObjArray *) |
bool | nodeImported (int idx) const |
virtual int | numberOfRows () const |
Number of rows in the table. More... | |
const FWGeometryTableManagerBase & | operator= (const FWGeometryTableManagerBase &) |
void | redrawTable (bool setExpand=false) |
Entries_v & | refEntries () |
NodeInfo & | refEntry (int i) |
std::vector< int > | rowToIndex () |
void | setBackgroundToWhite (bool) |
void | setCellValueEditor (TGTextEntry *editor) |
void | setDaughtersSelfVisibility (bool) |
void | setLevelOffset (int x) |
void | showEditor (int) |
virtual const std::string | title () const |
virtual int | unsortedRowNumber (int unsorted) const |
when passed the index to the sorted order of the rows it returns the original row number from the underlying data More... | |
virtual | ~FWGeometryTableManagerBase () |
Public Member Functions inherited from FWTableManagerBase | |
virtual void | buttonPressedInRowHeader (Int_t row, Event_t *event, Int_t relX, Int_t relY) |
Called if mouse button pressed in Row Header, defaults is to do nothing. More... | |
virtual void | buttonReleasedInRowHeader (Int_t row, Event_t *event, Int_t relX, Int_t relY) |
virtual unsigned int | cellHeight () const |
require all cells to be the same height More... | |
ClassDef (FWTableManagerBase, 0) | |
void | dataChanged () |
Classes which inherit from FWTableManagerBase must call this when their underlying data changes. More... | |
FWTableManagerBase () | |
virtual bool | hasLabelHeaders () const |
virtual bool | hasRowHeaders () const |
Returns 'true' if this table has row headers. Defaults return value is false. More... | |
virtual std::vector< unsigned int > | maxWidthForColumns () const |
for each column in the table this returns the present maximum width for that column More... | |
virtual FWTableCellRendererBase * | rowHeader (int iSortedRowNumber) const |
Returns the renderer for the row header for the sorted row number iSortedRowNumber. More... | |
void | sort (int iCol, bool iSortOrder) |
Call to have table sorted on values in column iCol with the sort order being descending if iSortOrder is 'true'. More... | |
int | sortColumn (void) |
The current sort column. More... | |
bool | sortOrder (void) |
The current sort order for the table. More... | |
void | visualPropertiesChanged () |
Classes which inherit from FWTableManagerBase must call this when how the data is shown (e.g. color) changes. More... | |
virtual | ~FWTableManagerBase () |
Protected Member Functions | |
virtual const char * | cellName (const NodeInfo &data) const |
virtual bool | nodeIsParent (const NodeInfo &) const |
Private Member Functions | |
FWGeometryTableManager (const FWGeometryTableManager &) | |
const FWGeometryTableManager & | operator= (const FWGeometryTableManager &) |
Private Attributes | |
FWGeometryTableView * | m_browser |
bool | m_filterOff |
Volumes_t | m_volumes |
Additional Inherited Members | |
Static Public Member Functions inherited from FWGeometryTableManagerBase | |
static void | getNNodesTotal (TGeoNode *geoNode, int &off) |
Public Attributes inherited from FWGeometryTableManagerBase | |
ColorBoxRenderer | m_colorBoxRenderer |
TGTextEntry * | m_editor |
int | m_editTransparencyIdx |
Entries_v | m_entries |
TGGC * | m_highlightContext |
int | m_highlightIdx |
int | m_levelOffset |
FWTextTreeCellRenderer | m_renderer |
std::vector< int > | m_row_to_index |
Description: [one line class summary]
Usage: <usage>
Definition at line 32 of file FWGeometryTableManager.h.
typedef Volumes_t::iterator FWGeometryTableManager::Volumes_i |
Definition at line 55 of file FWGeometryTableManager.h.
typedef boost::unordered_map<TGeoVolume*, Match> FWGeometryTableManager::Volumes_t |
Definition at line 54 of file FWGeometryTableManager.h.
Enumerator | |
---|---|
kNameColumn | |
kColorColumn | |
kTranspColumn | |
kVisSelfColumn | |
kVisChildColumn | |
kMaterialColumn | |
kNumColumn |
Definition at line 35 of file FWGeometryTableManager.h.
Enumerator | |
---|---|
kMatches | |
kChildMatches | |
kFilterCached |
Definition at line 37 of file FWGeometryTableManager.h.
FWGeometryTableManager::FWGeometryTableManager | ( | FWGeometryTableView * | v | ) |
Definition at line 29 of file FWGeometryTableManager.cc.
|
virtual |
Definition at line 35 of file FWGeometryTableManager.cc.
|
private |
void FWGeometryTableManager::assertNodeFilterCache | ( | NodeInfo & | data | ) |
Definition at line 424 of file FWGeometryTableManager.cc.
References kChildMatches, FWGeometryTableManagerBase::kExpanded, kFilterCached, kMatches, FWGeometryTableManagerBase::NodeInfo::m_node, m_volumes, FWGeometryTableManagerBase::NodeInfo::setBit(), FWGeometryTableManagerBase::NodeInfo::setBitVal(), setVisibility(), setVisibilityChld(), and FWGeometryTableManagerBase::NodeInfo::testBit().
Referenced by recalculateVisibility(), recalculateVisibilityNodeRec(), recalculateVisibilityVolumeRec(), and updateFilter().
|
protectedvirtual |
Reimplemented from FWGeometryTableManagerBase.
Definition at line 38 of file FWGeometryTableManager.cc.
References FWGeometryTableView::getVolumeMode(), m_browser, and FWGeometryTableManagerBase::NodeInfo::m_node.
Referenced by cellRenderer().
|
virtual |
Returns the particular renderer used to handle the requested cell. Arguments:
iSortedRowNumber: the row number from the present sort (i.e. the cell number of the view) iCol: the column number of the cell. The returned value must be used immediately and not held onto since the same Renderer can be used for subsequent calls
Implements FWTableManagerBase.
Definition at line 48 of file FWGeometryTableManager.cc.
References cellName(), data, getVisibility(), getVisibilityChld(), FWTextTreeCellRenderer::iconWidth(), kColorColumn, FWGeometryTableManagerBase::kExpanded, FWGeometryTableManagerBase::kHighlighted, kMatches, kMaterialColumn, kNameColumn, FWGeometryTableManagerBase::kSelected, kTranspColumn, kVisChildColumn, kVisSelfColumn, testEve_cfg::level, FWGeometryTableManagerBase::NodeInfo::m_color, FWGeometryTableManagerBase::m_colorBoxRenderer, FWGeometryTableManagerBase::m_editTransparencyIdx, FWGeometryTableManagerBase::m_entries, FWGeometryTableManagerBase::m_highlightContext, FWGeometryTableManagerBase::NodeInfo::m_level, FWGeometryTableManagerBase::m_levelOffset, FWGeometryTableManagerBase::NodeInfo::m_node, FWGeometryTableManagerBase::m_renderer, FWGeometryTableManagerBase::m_row_to_index, FWGeometryTableManagerBase::NodeInfo::m_transparency, nodeIsParent(), FWTextTableCellRenderer::setData(), FWGeometryTableManagerBase::ColorBoxRenderer::setData(), FWTextTreeCellRenderer::setIndentation(), FWTextTreeCellRenderer::setIsOpen(), FWTextTreeCellRenderer::setIsParent(), FWTextTreeCellRenderer::showEditor(), and FWGeometryTableManagerBase::NodeInfo::testBit().
void FWGeometryTableManager::checkChildMatches | ( | TGeoVolume * | v, |
std::vector< TGeoVolume * > & | pstack | ||
) |
Definition at line 186 of file FWGeometryTableManager.cc.
References i, FWGeometryTableManager::Match::m_childMatches, and m_volumes.
Referenced by updateFilter().
void FWGeometryTableManager::checkHierarchy | ( | ) |
Definition at line 162 of file FWGeometryTableManager.cc.
References alignCSCRings::e, i, FWGeometryTableManagerBase::m_entries, mergeVDriftHistosByStation::name, and convertSQLiteXML::ok.
void FWGeometryTableManager::checkRegionOfInterest | ( | double * | center, |
double | radius, | ||
long | algo | ||
) |
Definition at line 524 of file FWGeometryTableManager.cc.
References delta, FWGeometryTableViewManager::getGeoMangeur(), i, FWGeometryTableView::kBBoxCenter, FWGeometryTableView::kBBoxSurface, FWGeometryTableManagerBase::kVisNodeChld, FWGeometryTableManagerBase::kVisNodeSelf, FWGeometryTableManagerBase::m_entries, alignCSCRings::r, CosmicsPD_Skims::radius, and lumiQTWidget::t.
Referenced by FWGeometryTableView::checkRegionOfInterest().
|
virtual |
Reimplemented from FWGeometryTableManagerBase.
Definition at line 499 of file FWGeometryTableManager.cc.
References FWGeometryTableView::getVolumeMode(), FWGeometryTableManagerBase::kVisNodeSelf, m_browser, FWGeometryTableManagerBase::NodeInfo::m_node, and FWGeometryTableManagerBase::NodeInfo::testBit().
Referenced by cellRenderer().
|
virtual |
Reimplemented from FWGeometryTableManagerBase.
Definition at line 507 of file FWGeometryTableManager.cc.
References FWGeometryTableView::getVolumeMode(), FWGeometryTableManagerBase::kVisNodeChld, m_browser, FWGeometryTableManagerBase::NodeInfo::m_node, and FWGeometryTableManagerBase::NodeInfo::testBit().
Referenced by cellRenderer().
void FWGeometryTableManager::importChildren | ( | int | parent_idx | ) |
Definition at line 137 of file FWGeometryTableManager.cc.
References data, FWGeometryTableView::getAutoExpand(), FWGeometryTableManagerBase::getNNodesTotal(), FWGeometryTableManagerBase::kExpanded, m_browser, FWGeometryTableManagerBase::NodeInfo::m_color, FWGeometryTableManagerBase::m_entries, FWGeometryTableManagerBase::NodeInfo::m_level, FWGeometryTableManagerBase::NodeInfo::m_node, FWGeometryTableManagerBase::NodeInfo::m_parent, FWGeometryTableManagerBase::NodeInfo::m_transparency, n, dbtoconf::parent, and FWGeometryTableManagerBase::NodeInfo::setBit().
Referenced by loadGeometry().
void FWGeometryTableManager::loadGeometry | ( | TGeoNode * | iGeoTopNode, |
TObjArray * | iVolumes | ||
) |
Definition at line 261 of file FWGeometryTableManager.cc.
References FWGeometryTableView::drawTopNode(), FWGeometryTableView::getAutoExpand(), FWGeometryTableView::getFilterType(), FWGeometryTableManagerBase::getNNodesTotal(), importChildren(), FWGeometryTableManagerBase::kExpanded, FWGeometryTableManagerBase::kVisNodeSelf, m_browser, FWGeometryTableManagerBase::NodeInfo::m_color, FWGeometryTableManagerBase::m_entries, m_filterOff, FWGeometryTableManagerBase::NodeInfo::m_level, FWGeometryTableManagerBase::m_levelOffset, FWGeometryTableManagerBase::NodeInfo::m_node, FWGeometryTableManagerBase::NodeInfo::m_parent, FWGeometryTableManagerBase::m_row_to_index, FWGeometryTableManagerBase::NodeInfo::m_transparency, m_volumes, MultipleCompare::Match(), GetRecoTauVFromDQM_MC_cff::next, FWGeometryTableManagerBase::NodeInfo::setBitVal(), updateFilter(), and v.
Referenced by FWGeometryTableView::FWGeometryTableView().
|
protectedvirtual |
Reimplemented from FWGeometryTableManagerBase.
Definition at line 517 of file FWGeometryTableManager.cc.
References kChildMatches, m_filterOff, FWGeometryTableManagerBase::NodeInfo::m_node, and FWGeometryTableManagerBase::NodeInfo::testBit().
Referenced by cellRenderer().
|
inlinevirtual |
Number of columns in the table.
Implements FWTableManagerBase.
Definition at line 82 of file FWGeometryTableManager.h.
References kNumColumn.
|
private |
void FWGeometryTableManager::printMaterials | ( | ) |
|
virtual |
Implements FWGeometryTableManagerBase.
Definition at line 320 of file FWGeometryTableManager.cc.
References assertNodeFilterCache(), data, FWGeometryTableViewBase::getTopNodeIdx(), FWGeometryTableView::getVolumeMode(), i, kChildMatches, FWGeometryTableManagerBase::kExpanded, m_browser, FWGeometryTableManagerBase::m_entries, m_filterOff, FWGeometryTableManagerBase::m_row_to_index, siStripFEDMonitor_P5_cff::Max, recalculateVisibilityNodeRec(), recalculateVisibilityVolumeRec(), and FWGeometryTableManagerBase::NodeInfo::testBit().
void FWGeometryTableManager::recalculateVisibilityNodeRec | ( | int | pIdx | ) |
Definition at line 396 of file FWGeometryTableManager.cc.
References assertNodeFilterCache(), data, FWGeometryTableManagerBase::getNNodesTotal(), kChildMatches, FWGeometryTableManagerBase::kExpanded, kMatches, FWGeometryTableManagerBase::m_entries, m_filterOff, FWGeometryTableManagerBase::m_row_to_index, n, FWGeometryTableManagerBase::NodeInfo::testBit(), and FWGeometryTableManagerBase::NodeInfo::testBitAny().
Referenced by recalculateVisibility().
void FWGeometryTableManager::recalculateVisibilityVolumeRec | ( | int | pIdx | ) |
Definition at line 346 of file FWGeometryTableManager.cc.
References assertNodeFilterCache(), data, FWGeometryTableManagerBase::getNNodesTotal(), kChildMatches, FWGeometryTableManagerBase::kExpanded, kMatches, FWGeometryTableManagerBase::m_entries, m_filterOff, FWGeometryTableManagerBase::NodeInfo::m_node, FWGeometryTableManagerBase::m_row_to_index, n, FWGeometryTableManagerBase::NodeInfo::testBit(), FWGeometryTableManagerBase::NodeInfo::testBitAny(), and makeLayoutFileForGui::toAdd.
Referenced by recalculateVisibility().
void FWGeometryTableManager::resetRegionOfInterest | ( | ) |
Definition at line 603 of file FWGeometryTableManager.cc.
References FWGeometryTableManagerBase::kVisNodeChld, FWGeometryTableManagerBase::kVisNodeSelf, and FWGeometryTableManagerBase::m_entries.
Referenced by FWGeometryTableView::checkRegionOfInterest().
|
virtual |
Reimplemented from FWGeometryTableManagerBase.
Definition at line 480 of file FWGeometryTableManager.cc.
References data, FWGeometryTableManagerBase::getNNodesTotal(), FWGeometryTableManagerBase::m_entries, n, setVisibility(), and setVisibilityChld().
|
virtual |
Reimplemented from FWGeometryTableManagerBase.
Definition at line 445 of file FWGeometryTableManager.cc.
References FWGeometryTableViewManager::getGeoMangeur(), FWGeometryTableView::getVolumeMode(), FWGeometryTableManagerBase::kVisNodeSelf, m_browser, FWGeometryTableManagerBase::NodeInfo::m_node, FWGeometryTableManagerBase::NodeInfo::setBitVal(), and vdt::x.
Referenced by assertNodeFilterCache(), setDaughtersSelfVisibility(), and FWGeometryTableView::updateFilter().
|
virtual |
Reimplemented from FWGeometryTableManagerBase.
Definition at line 463 of file FWGeometryTableManager.cc.
References FWGeometryTableViewManager::getGeoMangeur(), FWGeometryTableView::getVolumeMode(), FWGeometryTableManagerBase::kVisNodeChld, m_browser, FWGeometryTableManagerBase::NodeInfo::m_node, FWGeometryTableManagerBase::NodeInfo::setBitVal(), and vdt::x.
Referenced by assertNodeFilterCache(), setDaughtersSelfVisibility(), and FWGeometryTableView::updateFilter().
void FWGeometryTableManager::updateFilter | ( | int | iType | ) |
Definition at line 211 of file FWGeometryTableManager.cc.
References assertNodeFilterCache(), checkChildMatches(), FWGeometryTableView::getFilter(), i, kFilterCached, FWGeometryTableView::kFilterMaterialName, FWGeometryTableView::kFilterMaterialTitle, FWGeometryTableView::kFilterShapeClassName, FWGeometryTableView::kFilterShapeName, m_browser, FWGeometryTableManagerBase::m_entries, m_filterOff, and m_volumes.
Referenced by loadGeometry(), FWGeometryTableView::setFrom(), and FWGeometryTableView::updateFilter().
|
private |
Definition at line 98 of file FWGeometryTableManager.h.
Referenced by cellName(), getVisibility(), getVisibilityChld(), importChildren(), loadGeometry(), recalculateVisibility(), setVisibility(), setVisibilityChld(), and updateFilter().
|
private |
Definition at line 102 of file FWGeometryTableManager.h.
Referenced by loadGeometry(), nodeIsParent(), recalculateVisibility(), recalculateVisibilityNodeRec(), recalculateVisibilityVolumeRec(), and updateFilter().
|
mutableprivate |
Definition at line 100 of file FWGeometryTableManager.h.
Referenced by assertNodeFilterCache(), checkChildMatches(), loadGeometry(), and updateFilter().