Representation of a node and its ancestry. More...
#include <GeoNodePath.h>
Public Types | |
| using | Node_t = TGeoNode const | 
| Type of node object.  More... | |
| using | Nodes_t = std::vector< Node_t const * > | 
| Type of list of nodes.  More... | |
| using | Depth_t = std::size_t | 
| Type used to represent the depth of the path.  More... | |
Public Member Functions | |
| GeoNodePath ()=default | |
| Default constructor: an empty path.  More... | |
| GeoNodePath (std::initializer_list< TGeoNode const * > nodes) | |
| Sets all the the specified nodes into the current path.  More... | |
| template<typename Iter > | |
| GeoNodePath (Iter begin, Iter end) | |
Sets the nodes from begin to end as the path content.  More... | |
| bool | empty () const | 
| Returns whether there is a current node.  More... | |
| Depth_t | depth () const | 
| Returns the depth of the path (elements including up to the current).  More... | |
| Node_t const & | current () const | 
| Returns the current node. Undefined if the path is empty.  More... | |
| void | append (Node_t const &node) | 
| Adds a node to the current path.  More... | |
| void | pop () | 
| Removes the current node from the path, moving the current one up.  More... | |
| template<typename Matrix = TGeoHMatrix> | |
| Matrix | currentTransformation () const | 
Returns the total transformation to the current node, as a Matrix.  More... | |
| operator std::string () const | |
| Prints the full path (as node names) into a string.  More... | |
Private Attributes | |
| Nodes_t | fNodes | 
| Local path of pointers to ROOT geometry nodes.  More... | |
Representation of a node and its ancestry.
A GeoNodePath contains a sequence of nodes, from the root() node down to a current() one.
It behaves like a stack in that it inserts and removes elements at the "top", which is also what defines the current node. 
Definition at line 38 of file GeoNodePath.h.
| using geo::GeoNodePath::Depth_t = std::size_t | 
Type used to represent the depth of the path.
Definition at line 50 of file GeoNodePath.h.
| using geo::GeoNodePath::Node_t = TGeoNode const | 
Type of node object.
Definition at line 44 of file GeoNodePath.h.
| using geo::GeoNodePath::Nodes_t = std::vector<Node_t const*> | 
Type of list of nodes.
Definition at line 47 of file GeoNodePath.h.
      
  | 
  default | 
Default constructor: an empty path.
      
  | 
  inline | 
Sets all the the specified nodes into the current path.
Definition at line 59 of file GeoNodePath.h.
      
  | 
  inline | 
Sets the nodes from begin to end as the path content. 
Definition at line 65 of file GeoNodePath.h.
      
  | 
  inline | 
Adds a node to the current path.
Definition at line 85 of file GeoNodePath.h.
      
  | 
  inline | 
Returns the current node. Undefined if the path is empty.
Definition at line 78 of file GeoNodePath.h.
| Matrix geo::GeoNodePath::currentTransformation | ( | ) | const | 
Returns the total transformation to the current node, as a Matrix. 
Definition at line 114 of file GeoNodePath.h.
      
  | 
  inline | 
Returns the depth of the path (elements including up to the current).
Definition at line 75 of file GeoNodePath.h.
      
  | 
  inline | 
Returns whether there is a current node.
Definition at line 72 of file GeoNodePath.h.
| geo::GeoNodePath::operator std::string | ( | ) | const | 
Prints the full path (as node names) into a string.
Definition at line 16 of file GeoNodePath.cxx.
      
  | 
  inline | 
Removes the current node from the path, moving the current one up.
Definition at line 88 of file GeoNodePath.h.
      
  | 
  private | 
Local path of pointers to ROOT geometry nodes.
Definition at line 102 of file GeoNodePath.h.
 1.8.5