Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
pq_node Class Referenceabstract

#include <JETSCAPE/blob/main/external_packages/gtl/include/GTL/pq_node.h>

+ Inheritance diagram for pq_node:
+ Collaboration diagram for pq_node:

Protected Types

enum  PQ_KIND { P_NODE, Q_NODE, LEAF, DIR }
 
enum  PQ_MARK { UNMARKED, QUEUED, BLOCKED, UNBLOCKED }
 
typedef symlist< pq_node * >
::iterator 
iterator
 

Protected Member Functions

 pq_node (node n_, int id_)
 
virtual ~pq_node ()
 
virtual PQ_KIND kind () const =0
 
virtual void partial (iterator)
 
virtual void full (iterator)
 
virtual void write (ostream &, int)=0
 
virtual void clear ()
 
virtual p_nodeP ()=0
 
virtual q_nodeQ ()=0
 
virtual direction_indicatorD ()=0
 
virtual pq_leafL ()=0
 

Protected Attributes

int pert_children
 
int pert_leaves
 
bool is_endmost
 
pq_nodefather
 
PQ_MARK mark
 
symlist< pq_node * > sons
 
iterator pos
 
list< pq_node * >::iterator lpos
 
node n
 
int id
 
node up
 
int up_id
 

Friends

class q_node
 
class p_node
 
class pq_tree
 
class planarity
 
GTL_EXTERN friend ostream & operator<< (ostream &, const pq_tree &)
 

Detailed Description

Definition at line 30 of file pq_node.h.

View newest version in sPHENIX GitHub at line 30 of file pq_node.h

Member Typedef Documentation

typedef symlist<pq_node*>::iterator pq_node::iterator
protected

Definition at line 36 of file pq_node.h.

View newest version in sPHENIX GitHub at line 36 of file pq_node.h

Member Enumeration Documentation

enum pq_node::PQ_KIND
protected
Enumerator:
P_NODE 
Q_NODE 
LEAF 
DIR 

Definition at line 41 of file pq_node.h.

View newest version in sPHENIX GitHub at line 41 of file pq_node.h

enum pq_node::PQ_MARK
protected
Enumerator:
UNMARKED 
QUEUED 
BLOCKED 
UNBLOCKED 

Definition at line 46 of file pq_node.h.

View newest version in sPHENIX GitHub at line 46 of file pq_node.h

Constructor & Destructor Documentation

pq_node::pq_node ( node  n_,
int  id_ 
)
inlineprotected

Definition at line 51 of file pq_node.h.

View newest version in sPHENIX GitHub at line 51 of file pq_node.h

__GTL_BEGIN_NAMESPACE pq_node::~pq_node ( )
protectedvirtual

Definition at line 24 of file pq_node.cpp.

View newest version in sPHENIX GitHub at line 24 of file pq_node.cpp

References symlist< T >::begin(), symlist< T >::empty(), symlist< T >::erase(), symlist< T >::front(), sons, and Acts::Test::tmp().

+ Here is the call graph for this function:

Member Function Documentation

virtual void pq_node::clear ( )
inlineprotectedvirtual

Reimplemented in q_node, and p_node.

Definition at line 96 of file pq_node.h.

View newest version in sPHENIX GitHub at line 96 of file pq_node.h

Referenced by p_node::clear(), q_node::clear(), pq_tree::reduce(), and pq_tree::reset().

+ Here is the caller graph for this function:

virtual direction_indicator* pq_node::D ( )
protectedpure virtual

Implemented in direction_indicator, pq_leaf, q_node, and p_node.

virtual void pq_node::full ( iterator  )
inlineprotectedvirtual

Reimplemented in q_node, and p_node.

Definition at line 82 of file pq_node.h.

View newest version in sPHENIX GitHub at line 82 of file pq_node.h

Referenced by pq_tree::P1(), pq_tree::Q1(), and pq_tree::reduce().

+ Here is the caller graph for this function:

virtual PQ_KIND pq_node::kind ( ) const
protectedpure virtual

Implemented in direction_indicator, pq_leaf, q_node, and p_node.

Referenced by pq_tree::blocked_in_subtree(), pq_tree::bubble_up(), pq_tree::dfs(), planarity::examine_obstruction(), pq_tree::integrity_check(), planarity::mark_all_neighbors_of_leaves(), pq_tree::reduce(), pq_tree::replace_pert(), planarity::search_empty_leaf(), and planarity::search_full_leaf().

+ Here is the caller graph for this function:

virtual pq_leaf* pq_node::L ( )
protectedpure virtual

Implemented in direction_indicator, pq_leaf, q_node, and p_node.

Referenced by planarity::search_empty_leaf(), and planarity::search_full_leaf().

+ Here is the caller graph for this function:

virtual p_node* pq_node::P ( )
protectedpure virtual

Implemented in direction_indicator, pq_leaf, q_node, and p_node.

Referenced by planarity::examine_obstruction(), pq_tree::integrity_check(), and pq_tree::reduce().

+ Here is the caller graph for this function:

virtual void pq_node::partial ( iterator  )
inlineprotectedvirtual

Reimplemented in q_node, and p_node.

Definition at line 74 of file pq_node.h.

View newest version in sPHENIX GitHub at line 74 of file pq_node.h

Referenced by pq_tree::P3(), pq_tree::P5(), and pq_tree::Q2().

+ Here is the caller graph for this function:

virtual q_node* pq_node::Q ( )
protectedpure virtual

Implemented in direction_indicator, pq_leaf, q_node, and p_node.

Referenced by planarity::examine_obstruction(), pq_tree::P4(), pq_tree::P5(), pq_tree::P6(), pq_tree::reduce(), pq_tree::replace_pert(), and pq_tree::where_bubble_up_failed().

+ Here is the caller graph for this function:

virtual void pq_node::write ( ostream &  ,
int   
)
protectedpure virtual

Implemented in direction_indicator, pq_leaf, q_node, and p_node.

Referenced by operator<<().

+ Here is the caller graph for this function:

Friends And Related Function Documentation

GTL_EXTERN friend ostream& operator<< ( ostream &  os,
const pq_tree tree 
)
friend

Definition at line 1346 of file pq_tree.cpp.

View newest version in sPHENIX GitHub at line 1346 of file pq_tree.cpp

friend class p_node
friend

Definition at line 243 of file pq_node.h.

View newest version in sPHENIX GitHub at line 243 of file pq_node.h

friend class planarity
friend

Definition at line 255 of file pq_node.h.

View newest version in sPHENIX GitHub at line 255 of file pq_node.h

friend class pq_tree
friend

Definition at line 249 of file pq_node.h.

View newest version in sPHENIX GitHub at line 249 of file pq_node.h

friend class q_node
friend

Definition at line 237 of file pq_node.h.

View newest version in sPHENIX GitHub at line 237 of file pq_node.h

Member Data Documentation

int pq_node::id
protected

Definition at line 217 of file pq_node.h.

View newest version in sPHENIX GitHub at line 217 of file pq_node.h

Referenced by pq_tree::P2(), pq_tree::P3(), pq_tree::P4(), pq_tree::P5(), pq_tree::P6(), and pq_tree::reset().

bool pq_node::is_endmost
protected
list<pq_node*>::iterator pq_node::lpos
protected

Definition at line 202 of file pq_node.h.

View newest version in sPHENIX GitHub at line 202 of file pq_node.h

Referenced by pq_tree::bubble_up(), pq_tree::dfs(), pq_tree::reduce(), pq_tree::remove_dir_ind(), and pq_tree::replace_pert().

int pq_node::pert_children
protected

Definition at line 140 of file pq_node.h.

View newest version in sPHENIX GitHub at line 140 of file pq_node.h

Referenced by pq_tree::bubble_up(), q_node::pertinent(), pq_tree::reduce(), pq_tree::reset(), and pq_tree::where_bubble_up_failed().

int pq_node::pert_leaves
protected

Definition at line 148 of file pq_node.h.

View newest version in sPHENIX GitHub at line 148 of file pq_node.h

Referenced by pq_tree::bubble_up(), p_node::full(), q_node::full(), pq_tree::P3(), pq_tree::P5(), p_node::partial(), q_node::partial(), and pq_tree::reduce().

node pq_node::up
protected

Definition at line 222 of file pq_node.h.

View newest version in sPHENIX GitHub at line 222 of file pq_node.h

Referenced by pq_tree::P3(), pq_tree::P4(), pq_tree::P5(), pq_tree::P6(), pq_leaf::pq_leaf(), and pq_tree::replace_pert().

int pq_node::up_id
protected

Definition at line 227 of file pq_node.h.

View newest version in sPHENIX GitHub at line 227 of file pq_node.h

Referenced by pq_tree::P3(), pq_tree::P4(), pq_tree::P5(), pq_tree::P6(), pq_leaf::pq_leaf(), and pq_tree::replace_pert().


The documentation for this class was generated from the following files: