Predator  [unstable] git snapshot
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes
UserNode Class Reference

trace graph node representing something important for the user More...

#include <symtrace.hh>

Inheritance diagram for UserNode:
Inheritance graph
[legend]
Collaboration diagram for UserNode:
Collaboration graph
[legend]

Public Types

typedef std::vector< NodeBase * > TBaseList
 used to store a list of child nodes

Public Member Functions

 UserNode (Node *ref, const TInsn insn, const char *label)
virtual NodeprintNode () const
 print the node in a human-readable format if considered interesting
const TBaseListchildren () const
 reference to list of child nodes (containing 0..n pointers)
TIdMapperListidMapperList ()
 return the ID mapping describing the operation behind the trace node
const TIdMapperListidMapperList () const
 return the ID mapping describing the operation behind the trace node
TIdMapperidMapper ()
 return the ID mapping describing the operation behind the trace node
const TIdMapperidMapper () const
 return the ID mapping describing the operation behind the trace node
virtual Nodeparent () const
 this can be called only on nodes with exactly one parent
const TNodeListparents () const
 reference to list of parents (containing 0..n pointers)

Protected Member Functions

virtual void plotNode (TracePlotter &) const
 serialize this node to the given plot (externally not much useful)

Protected Attributes

TIdMapperList idMapperList_
TNodeList parents_
 list of all (0..n) parent nodes

Private Attributes

const TInsn insn_
const std::string label_

Detailed Description

trace graph node representing something important for the user

Definition at line 560 of file symtrace.hh.

Member Typedef Documentation

typedef std::vector<NodeBase *> TBaseList
inherited

used to store a list of child nodes

Definition at line 144 of file symtrace.hh.

Constructor & Destructor Documentation

UserNode ( Node ref,
const TInsn  insn,
const char *  label 
)
inline
Parameters
refa trace leading to this use node
insna CodeStorage::Insn object that caused the node to appear
labela label describing what this node actually means

Definition at line 571 of file symtrace.hh.

References Node::idMapper(), IdMapper< TObjId, OBJ_INVALID, OBJ_MAX_ID >::NFA_RETURN_IDENTITY, and IdMapper< TId, MIN, MAX >::setNotFoundAction().

Member Function Documentation

const TBaseList& children ( ) const
inlineinherited

reference to list of child nodes (containing 0..n pointers)

Definition at line 147 of file symtrace.hh.

References Node::children_.

TIdMapper& idMapper ( )
inherited

return the ID mapping describing the operation behind the trace node

Referenced by CondNode::CondNode(), InsnNode::InsnNode(), MsgNode::MsgNode(), SpliceOutNode::SpliceOutNode(), and UserNode::UserNode().

const TIdMapper& idMapper ( ) const
inherited

return the ID mapping describing the operation behind the trace node

TIdMapperList& idMapperList ( )
inherited

return the ID mapping describing the operation behind the trace node

const TIdMapperList& idMapperList ( ) const
inherited

return the ID mapping describing the operation behind the trace node

virtual Node* parent ( ) const
virtualinherited

this can be called only on nodes with exactly one parent

Reimplemented in JoinNode.

Referenced by NodeHandle::node(), NodeHandle::NodeHandle(), and Node::printNode().

const TNodeList& parents ( ) const
inlineinherited

reference to list of parents (containing 0..n pointers)

Definition at line 89 of file symtrace.hh.

References NodeBase::parents_.

virtual void plotNode ( TracePlotter &  ) const
protectedvirtual

serialize this node to the given plot (externally not much useful)

Implements Node.

virtual Node* printNode ( ) const
virtual

print the node in a human-readable format if considered interesting

Reimplemented from Node.

Field Documentation

TIdMapperList idMapperList_
protectedinherited

Definition at line 173 of file symtrace.hh.

Referenced by JoinNode::JoinNode(), and Node::Node().

const TInsn insn_
private

Definition at line 562 of file symtrace.hh.

const std::string label_
private

Definition at line 563 of file symtrace.hh.

TNodeList parents_
protectedinherited

list of all (0..n) parent nodes

Definition at line 70 of file symtrace.hh.

Referenced by Node::Node(), and NodeBase::parents().


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